Как найти адресс LPT в Linux?

Обсуждение установки, настройки и использования LinuxCNC. Вопросы по Gкоду.
Аватара пользователя
Nameless
Новичок
Сообщения: 12
Зарегистрирован: 26 дек 2011, 15:01
Репутация: 0
Контактная информация:

Re: Как найти адресс LPT в Linux?

Сообщение Nameless »

нашел, выбрал для эксперимента ось Х и У если нажимать на клавиши управления то в одну сторону показывает tru в другую false, но движки все равно не активно собственно вот так это выглядит:
Screenshot.png (4020 просмотров) <a class='original' href='./download/file.php?id=3510&sid=721ccdd471e553a87efe923a69d88ab3&mode=view' target=_blank>Загрузить оригинал (234.21 КБ)</a>
может чего конечно еще не довключил тк ЕМС да и линукс в целом токо пару дней назад поставил первый раз, загружена она в реалтайме вроде, в обычном режиме я так понимаю там действует режиме эмуляции
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1733
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Как найти адресс LPT в Linux?

Сообщение Nick »

Сигнал меняется, это хорошо, но это внутренний сигнал EMC2, а нам нужно проверить доходит ли этот сигнал до пина parport.0.pin-XX-out. Ищи пин с таким названием в hal meter. (Скорее всего он находится в соседней вкладке).

Чтобы включить симулятор нужно поставить спец версию emc2-sim. И запускать нужно будет именно его. Иначе будет писать ошибку. Что невозможно загрузить процесс в режиме realtime.

ЗЫ в linux скриншот можно просто клавишей принтскрин.
Аватара пользователя
Nameless
Новичок
Сообщения: 12
Зарегистрирован: 26 дек 2011, 15:01
Репутация: 0
Контактная информация:

Re: Как найти адресс LPT в Linux?

Сообщение Nameless »

ну вроде как если дергать за пины к которым оси присвоены то tru
Screenshot0001.png (4014 просмотров) <a class='original' href='./download/file.php?id=3511&sid=721ccdd471e553a87efe923a69d88ab3&mode=view' target=_blank>Загрузить оригинал (277.71 КБ)</a>
ЗЫ
про принтскрин отдельное спасибо, думал тут не катит :)
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1733
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Как найти адресс LPT в Linux?

Сообщение Nick »

Т.е. движок дергается?
Значит просто не правильно настроил EMC2. Ты как его настраивал?
Скинь свои .hal и .ini файлы.

ЗЫ тут еще и не такое катит :). спрашивай :).
Аватара пользователя
Nameless
Новичок
Сообщения: 12
Зарегистрирован: 26 дек 2011, 15:01
Репутация: 0
Контактная информация:

Re: Как найти адресс LPT в Linux?

Сообщение Nameless »

в том то и дело, что движки не жужат как положено и тем более не дергаются, только циферки на мониторе бегают и все :(
вот конфиги
configs.zip
(5.81 КБ) 469 скачиваний
Последний раз редактировалось Nameless 27 дек 2011, 10:04, всего редактировалось 1 раз.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1733
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Как найти адресс LPT в Linux?

Сообщение Nick »

Так....
Кстати ты не там смотрел. Нужно смотреть в Ножках, а ты смотрел в параметрах... Эх не привык я к русской версии...
Аватара пользователя
Nameless
Новичок
Сообщения: 12
Зарегистрирован: 26 дек 2011, 15:01
Репутация: 0
Контактная информация:

Re: Как найти адресс LPT в Linux?

Сообщение Nameless »

вот скрин с ножек, ну вроде как если дергать там где присвоено направление на оси то true, но движки один фиг молчат в том плане что нет характерного щелчка как в маче когда вкл, а так питание вроде как на них идет, греются намного :)
Screenshot12.png (4007 просмотров) <a class='original' href='./download/file.php?id=3513&sid=721ccdd471e553a87efe923a69d88ab3&mode=view' target=_blank>Загрузить оригинал (229.77 КБ)</a>
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1733
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Как найти адресс LPT в Linux?

Сообщение Nick »

Так, пин 5 это направление двигателя? (Просто пин степ, наверное не получится увидеть, он должен очень быстро переключаться.)
А, кстати, на каком пине enable контроллера стоит? Проверь его. Щелчок - это обычно включаются релешки на контроллере.

Какой у тебя контроллер?
Аватара пользователя
Nameless
Новичок
Сообщения: 12
Зарегистрирован: 26 дек 2011, 15:01
Репутация: 0
Контактная информация:

Re: Как найти адресс LPT в Linux?

Сообщение Nameless »

плата magic cnc, собственно как и станок, настройки пытаюсь сделать по аналогии как в маче настроено, тк для него были конфига, а сам я несколько далек от этого, счас режет попозже посмотрю как там что
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1733
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Как найти адресс LPT в Linux?

Сообщение Nick »

Суть в чем - надо проверить работает ли LPT. Для этого нужно найти пин, который мы можем просто поменять, например пин направления шд. И замерить на самом lpt, меняется ли вывод. Если на контроллере есть пин enable, от которого щелкают релешки, можно попробовать протестировать его.
zilk
Опытный
Сообщения: 139
Зарегистрирован: 07 янв 2012, 19:05
Репутация: 1
Откуда: Украина, Харьков
Контактная информация:

Re: Как найти адресс LPT в Linux?

Сообщение zilk »

Здравствуйте!
В процессе своих изысканий столкнулся с такой проблемой: установил дополнительный PCI-LPT контроллер, с расчетом подключить к нему энкодер шпинделя, MPG и кое-какие другие входы-выходы.
Но он упорно не желает работать в паре с подключенной 7i43 к первому LPT, а конфигурации с одной месой или двумя LPT в каждом из случаев работют чотко.
Вот часть hal-a:

Код: Выделить всё

loadrt trivkins
loadrt [EMCMOT]EMCMOT base_period_nsec=[EMCMOT]BASE_PERIOD servo_period_nsec=[EMCMOT]SERVO_PERIOD num_joints=[TRAJ]AXES
loadrt probe_parport

loadrt hal_parport cfg="0xed00 in"
setp parport.1.reset-time 3500
addf parport.1.read base-thread
addf parport.1.write base-thread
addf parport.1.reset base-thread

loadrt hostmot2
loadrt hm2_7i43 config="firmware=hm2/7i43-4/SVST4_6.BIT num_encoders=4 num_pwmgens=0 num_3pwmgens=0 num_stepgens=5  " 
setp     hm2_7i43.0.watchdog.timeout_ns 1007000
loadrt pid names=pid.x,pid.y,pid.z,pid.a

addf hm2_7i43.0.read servo-thread
addf motion-command-handler servo-thread
addf motion-controller servo-thread
addf pid.x.do-pid-calcs servo-thread
addf pid.y.do-pid-calcs servo-thread
addf pid.z.do-pid-calcs servo-thread
addf pid.a.do-pid-calcs servo-thread
addf hm2_7i43.0.write         servo-thread
addf hm2_7i43.0.pet_watchdog  servo-thread
При старте ЕМС выдает такую ошибку: "parameter or pin `parport.1.reset-time` not found 13460" и так далее.. Если эту строчку закоментить, ошибка передвигается ниже, если закоментить все 4, которые касаются parport.1, кроме loadrt hal_parport cfg="0xed00 in", то все грузится и работает без вопросов. Повторюсь - конфиг с 2-мя LPT, без месы, работает нормально, имеются сигналы на контактах разьемов.
Помогите, люди добрые, может кто что подскажет, что я делаю не так?
Спасибо!
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1733
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Как найти адресс LPT в Linux?

Сообщение Nick »

Может меса думает, что ей надо на parport.1 садиться...
Попробуй объявление второго порта поместить ниже загрузки меса и если не сработает, то убери все настройки второго порта и загрузи emc2 и посмотри, какие пины и параметры есть у парпорт.1 или просто убери его загрузку, запусти емс и в консоле выполни
halcmd loadrt hal_parport cfg="0xed00 in"
по идее должен написать все его пины.
zilk
Опытный
Сообщения: 139
Зарегистрирован: 07 янв 2012, 19:05
Репутация: 1
Откуда: Украина, Харьков
Контактная информация:

Re: Как найти адресс LPT в Linux?

Сообщение zilk »

Nick, уже разобрался! :)
Оказывается, если подключена меса к парпорту, то он как-бы выпадает из нумерации и первый дополнительный порт будет обозначаться как parport.0 но со своим адресом.
Пришлось ломать мозг пол-дня, т.к. не нашел ничего, где об этом написано.. :freak:

PS. Попутный вопрос: lspci -v пишет про мою кетайскую PCI карту - Flags: slow devsel, IRQ 5. Но во всех примерах, что приводит народ, обсужая эту тему lspci пишет Flags: medium devsel
Что это обозначает, чем грозит для правильной работы и как это изменить, если нужно?
Спасибо!

PPS. Чтобы не засорять другие темы спрошу здесь о еще одной мелочи, до которой сам не могу додуматься - каким образом в HAL параметру, например stepgen.0.position-scale, можно присвоить значение, взятое с какого-либо пина, т.е чтобы параметр можно было менять извне без переписывания hal-a. Тупое использование net не дает желаемого результата, возможно ли в принципе такое?
Аватара пользователя
Ворон226
Мастер
Сообщения: 1915
Зарегистрирован: 01 окт 2012, 18:14
Репутация: 180
Откуда: Солнечногорск Московской обл. - Борки Конаковского р-на - Скоморохово Фировского р-на
Контактная информация:

Re: Как найти адресс LPT в Linux?

Сообщение Ворон226 »

Похоже у меня (т.е. на компе станочном) проблемы с LPT.

В терминале:

Код: Выделить всё

printer@printer-desktop:~$ lspci -v
00:00.0 Host bridge: Intel Corporation Device 0bf2 (rev 04)
	Subsystem: Intel Corporation Device 2012
	Flags: bus master, fast devsel, latency 0

00:02.0 VGA compatible controller: Intel Corporation Device 0be2 (rev 0b)
	Subsystem: Intel Corporation Device 2012
	Flags: bus master, fast devsel, latency 0, IRQ 11
	Memory at d0500000 (32-bit, non-prefetchable) [size=1M]
	I/O ports at 30d0 [size=8]
	Capabilities: <access denied>

00:1b.0 Audio device: Intel Corporation N10/ICH 7 Family High Definition Audio Controller (rev 02)
	Subsystem: Intel Corporation Device 2012
	Flags: bus master, fast devsel, latency 0, IRQ 22
	Memory at d0700000 (64-bit, non-prefetchable) [size=16K]
	Capabilities: <access denied>
	Kernel driver in use: HDA Intel
	Kernel modules: snd-hda-intel

00:1c.0 PCI bridge: Intel Corporation N10/ICH 7 Family PCI Express Port 1 (rev 02)
	Flags: bus master, fast devsel, latency 0
	Bus: primary=00, secondary=01, subordinate=01, sec-latency=0
	I/O behind bridge: 00002000-00002fff
	Memory behind bridge: d0000000-d04fffff
	Prefetchable memory behind bridge: 00000000e4000000-00000000e41fffff
	Capabilities: <access denied>
	Kernel driver in use: pcieport
	Kernel modules: shpchp

00:1d.0 USB Controller: Intel Corporation N10/ICH7 Family USB UHCI Controller #1 (rev 02)
	Subsystem: Intel Corporation Device 2012
	Flags: bus master, medium devsel, latency 0, IRQ 23
	I/O ports at 30a0 [size=32]
	Kernel driver in use: uhci_hcd

00:1d.1 USB Controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #2 (rev 02)
	Subsystem: Intel Corporation Device 2012
	Flags: bus master, medium devsel, latency 0, IRQ 19
	I/O ports at 3080 [size=32]
	Kernel driver in use: uhci_hcd

00:1d.2 USB Controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #3 (rev 02)
	Subsystem: Intel Corporation Device 2012
	Flags: bus master, medium devsel, latency 0, IRQ 18
	I/O ports at 3060 [size=32]
	Kernel driver in use: uhci_hcd

00:1d.3 USB Controller: Intel Corporation N10/ICH 7 Family USB UHCI Controller #4 (rev 02)
	Subsystem: Intel Corporation Device 2012
	Flags: bus master, medium devsel, latency 0, IRQ 16
	I/O ports at 3040 [size=32]
	Kernel driver in use: uhci_hcd

00:1d.7 USB Controller: Intel Corporation N10/ICH 7 Family USB2 EHCI Controller (rev 02) (prog-if 20)
	Subsystem: Intel Corporation Device 2012
	Flags: bus master, medium devsel, latency 0, IRQ 23
	Memory at d0604400 (32-bit, non-prefetchable) [size=1K]
	Capabilities: <access denied>
	Kernel driver in use: ehci_hcd

00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev e2) (prog-if 01)
	Flags: bus master, fast devsel, latency 0
	Bus: primary=00, secondary=02, subordinate=02, sec-latency=32
	Capabilities: <access denied>

00:1f.0 ISA bridge: Intel Corporation NM10 Family LPC Controller (rev 02)
	Subsystem: Intel Corporation Device 2012
	Flags: bus master, medium devsel, latency 0
	Capabilities: <access denied>

00:1f.2 SATA controller: Intel Corporation N10/ICH7 Family SATA AHCI Controller (rev 02) (prog-if 01)
	Subsystem: Intel Corporation Device 2012
	Flags: bus master, 66MHz, medium devsel, latency 0, IRQ 28
	I/O ports at 30c8 [size=8]
	I/O ports at 30dc [size=4]
	I/O ports at 30c0 [size=8]
	I/O ports at 30d8 [size=4]
	I/O ports at 3020 [size=16]
	Memory at d0604000 (32-bit, non-prefetchable) [size=1K]
	Capabilities: <access denied>
	Kernel driver in use: ahci
	Kernel modules: ahci

00:1f.3 SMBus: Intel Corporation N10/ICH 7 Family SMBus Controller (rev 02)
	Subsystem: Intel Corporation Device 2012
	Flags: medium devsel, IRQ 11
	I/O ports at 3000 [size=32]
	Kernel modules: i2c-i801

01:00.0 Ethernet controller: Intel Corporation 82574L Gigabit Network Connection
	Subsystem: Intel Corporation Device 2012
	Flags: bus master, fast devsel, latency 0, IRQ 16
	Memory at d0400000 (32-bit, non-prefetchable) [size=128K]
	Memory at d0000000 (32-bit, non-prefetchable) [size=4M]
	I/O ports at 2000 [size=32]
	Memory at d0420000 (32-bit, non-prefetchable) [size=16K]
	Capabilities: <access denied>
	Kernel driver in use: e1000e
	Kernel modules: e1000e
И где тут LPT?
Хочешь быть счастливым? Будь им!
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5179
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Как найти адресс LPT в Linux?

Сообщение Serg »

Если намамный, то его тут и не должно быть.

Код: Выделить всё

cat /proc/ioports | grep parport
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
_taras_
Мастер
Сообщения: 546
Зарегистрирован: 16 мар 2011, 15:19
Репутация: 69
Контактная информация:

Re: Как найти адресс LPT в Linux?

Сообщение _taras_ »

Мне досталась LPT-PCI плата на чипе mcs9865. Нашел на него драйвера MCS9865_Linux_driver_v1.0.0.12, установи (по крайней мере ошибок не выдавало). Эта плата должна быть второй на компе (первый порт на материнке). Как теперь проверить его работоспособность и узнать адрес?

Код: Выделить всё

dmesg | grep par
[    0.132333] pci 0000:00:1e.0: transparent bridge
[   13.855938] parport_pc 00:06: reported by Plug and Play ACPI
[   13.855987] parport0: PC-style at 0x378, irq 7 [PCSPP]
[   13.952267] lp0: using parport0 (interrupt-driven).
[   14.697916] ppdev: user-space parallel port driver

Код: Выделить всё

dmesg | grep lp
[    0.000000] On node 0 totalpages: 261951
[    0.004008] Calibrating delay loop (skipped), value calculated using timer frequency.. 4801.76 BogoMIPS (lpj=9603520)
[   13.330058] lp: driver loaded but no devices found
[   13.952267] lp0: using parport0 (interrupt-driven).
[  492.504483] eth0: link up, 100Mbps, full-duplex, lpa 0x45E1

Код: Выделить всё

lsmod
Module                  Size  Used by
nls_iso8859_1           3249  0 
nls_cp437               4919  0 
vfat                    8901  0 
fat                    46900  1 vfat
usb_storage            38013  0 
binfmt_misc             6587  1 
mcs9865_isa             1709  0 
mcs9865                17179  0 
dm_crypt               11363  0 
snd_intel8x0           25492  2 
snd_ac97_codec         99721  1 snd_intel8x0
ac97_bus                 962  1 snd_ac97_codec
snd_pcm_oss            35244  0 
snd_mixer_oss          13695  1 snd_pcm_oss
snd_pcm                67036  3 snd_intel8x0,snd_ac97_codec,snd_pcm_oss
snd_seq_dummy           1338  0 
snd_seq_oss            26726  0 
snd_seq_midi            4557  0 
snd_rawmidi            17955  1 snd_seq_midi
snd_seq_midi_event      5572  2 snd_seq_oss,snd_seq_midi
snd_seq                46527  6 snd_seq_dummy,snd_seq_oss,snd_seq_midi,snd_seq_midi_event
snd_timer              18138  2 snd_pcm,snd_seq
snd_seq_device          5355  5 snd_seq_dummy,snd_seq_oss,snd_seq_midi,snd_rawmidi,snd_seq
snd                    51043  14 snd_intel8x0,snd_ac97_codec,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_seq_oss,snd_rawmidi,snd_seq,snd_timer,snd_seq_device
8139too                18321  0 
joydev                  8644  0 
ppdev                   5259  0 
8139cp                 16058  0 
nvidia               4700878  22 
mii                     4006  2 8139too,8139cp
parport_pc             25637  1 
floppy                 51992  0 
soundcore               6016  1 snd
usbhid                 35772  0 
hid                    65804  1 usbhid
psmouse                63213  0 
serio_raw               3978  0 
snd_page_alloc          6717  2 snd_intel8x0,snd_pcm
shpchp                 28835  0 
lp                      7028  0 
parport                30764  3 ppdev,parport_pc,lp
dm_raid45              81157  0 
xor                    14673  1 dm_raid45
fbcon                  35102  71 
tileblit                1987  1 fbcon
font                    7406  1 fbcon
bitblit                 4664  1 fbcon
softcursor              1151  1 bitblit
intel_agp              24133  1 
vga16fb                11161  1 
vgastate                8760  1 vga16fb
agpgart                29292  2 nvidia,intel_agp
Проерка работоспособности штат
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5179
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Как найти адресс LPT в Linux?

Сообщение Serg »

_taras_ писал(а):Как теперь проверить его работоспособность и узнать адрес?
А прочитать хотя-бы то, что на этой странице религия не позволяет? :)
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
_taras_
Мастер
Сообщения: 546
Зарегистрирован: 16 мар 2011, 15:19
Репутация: 69
Контактная информация:

Re: Как найти адресс LPT в Linux?

Сообщение _taras_ »

UAVpilot писал(а):А прочитать хотя-бы то, что на этой странице религия не позволяет?
Я б не писал если б знал на что нужно делать.
Аватара пользователя
Nick
Мастер
Сообщения: 22776
Зарегистрирован: 23 ноя 2009, 16:45
Репутация: 1733
Заслуга: Developer
Откуда: Gatchina, Saint-Petersburg distr., Russia
Контактная информация:

Re: Как найти адресс LPT в Linux?

Сообщение Nick »

Я почитал, тоже не нашел :freak: :)
Выплони пока
lshv
и
lspci -v
и вывод сюда...
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5179
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Как найти адресс LPT в Linux?

Сообщение Serg »

Nick писал(а):Я почитал, тоже не нашел :freak: :)
Ну хотя-бы вот: Как найти адресс LPT в Linux? #95
Если б мне хотелось найти свой LPT порт, то я б и все 5 страниц этой темы осилил.

Ничего личного, просто вот так читаешь тему - вроде постепенно добрались до истины и тут фигак и начинается всё сначала. Сие вызывает неодназначные чувства...
Надо всётаки как-то стараться осваивать навыки поиска нужной информации, мы ж тут не клуб домохозяек - всётаки станки с ЧПУ конструируем. :)
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Ответить

Вернуться в «LinuxCNC»