Автор Тема: РЕШЕН - Връзка с UPS чрез сериен порт и Winpower  (Прочетена 631 пъти)

h7d8

  • Участник
  • *****
  • Публикации: 197
  • Distribution: Debian;Ubuntu
  • Window Manager: Gnome
    • Профил
В момента съм с Убунту 12.04 и съм инсталирал хардуер PCI to RS232 Adapter ( NetMos Technology PCI 9835 Multi-I/O Controller (rev 01) ) .Опитвам се да свържа машината с UPS-а с цел мониторинг.Относно софтуера,към момента съм инсталирал Winpower,а неговите изисквания под линукс операционна система е да се въведат ръчно серийните портове,които се използват (по подразбиране /dev/tty0 , /dev/tty1 ).Оказва се,че има проблем с настройката на тези портове и програмата не може да се свърже с UPS-а.Ползвам следните команди за проверка кой порт се използва и кой не и информация за адаптер-а.Ще съм благодарен на малко помощ :)  [_]3

Код:
sudo setserial /dev/ttyS0 -а
/dev/ttyS0, Line 0, UART: 16550A, Port: 0xc001, IRQ: 11
Baud_base: 115200, close_delay: 50, divisor: 0
closing_wait: 3000
Flags: spd_normal skip_test

sudo setserial /dev/ttyS0 port 0xc001 UART 16550A irq 18 Baud_base 115200

lspci -vv
04:02.0 VGA compatible controller: NetMos Technology PCI 9835 Multi-I/O Controller (rev 01) (prog-if 02)
Subsystem: LSI Logic / Symbios Logic 2S (16C550 UART)
Control: I/O+ Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR+ INTx-
Interrupt: pin A routed to IRQ 18
Region 0: I/O ports at ec00 [size=8]
Region 1: I/O ports at e880 [size=8]
Region 2: I/O ports at e800 [size=8]
Region 3: I/O ports at e480 [size=8]
Region 4: I/O ports at e400 [size=8]
Region 5: I/O ports at e080 [size=16]
Kernel driver in use: parport_serial
Kernel modules: parport_serial

Предполагам настройката не е сложна,но на мен не ми стигат познания.Благодаря предварително.

Решение:

проверявам броя на инсталираните портове

Код:
dmesg | grep tty
[    0.000000] console [tty0] enabled
[   12.869874] 0000:04:02.0: ttyS1 at I/O 0xec00 (irq = 18) is a 16550A
[   12.895276] 0000:04:02.0: ttyS2 at I/O 0xe880 (irq = 18) is a 16550A

извеждам информация за хардуера

Код:
lspci -v
04:02.0 VGA compatible controller: NetMos Technology PCI 9835 Multi-I/O Controller (rev 01) (prog-if 02)
Subsystem: LSI Logic / Symbios Logic 2S (16C550 UART)
Flags: medium devsel, IRQ 18
I/O ports at ec00 [size=8]
I/O ports at e880 [size=8]
I/O ports at e800 [size=8]
I/O ports at e480 [size=8]
I/O ports at e400 [size=8]
I/O ports at e080 [size=16]
Kernel driver in use: parport_serial
Kernel modules: parport_serial

настройвам портовете и проверявам

[*@*]$ sudo setserial /dev/ttyS1 port 0xec00 UART 16550A irq 18 Baud_base 115200
[*@*]$ sudo setserial /dev/ttyS2 port 0xe880 UART 16550A irq 18 Baud_base 115200
[*@*]$ sudo setserial /dev/ttyS1 -a
/dev/ttyS1, Line 1, UART: 16550A, Port: 0xec00, IRQ: 18
Baud_base: 115200, close_delay: 50, divisor: 0
closing_wait: 3000
Flags: spd_normal skip_test

[*@*]$ sudo setserial /dev/ttyS2 -a
/dev/ttyS2, Line 2, UART: 16550A, Port: 0xe880, IRQ: 18
Baud_base: 115200, close_delay: 50, divisor: 0
closing_wait: 3000
Flags: spd_normal skip_test

Код:
[*@*]$ dmesg | grep tty
[    0.000000] console [tty0] enabled
[   12.869874] 0000:04:02.0: ttyS1 at I/O 0xec00 (irq = 18) is a 16550A
[   12.895276] 0000:04:02.0: ttyS2 at I/O 0xe880 (irq = 18) is a 16550A

Ето и изображения на winpower:



« Последна редакция: Jul 27, 2013, 21:51 от h7d8 »
Активен

laskov

  • Участник
  • *****
  • Публикации: 2853
    • Профил
Хм,...  БРАВО! Поне три пъти съм тръгвал да го правя и така и не успях!
Активен

Не си мислете, че понеже Вие мислите правилно, всички мислят като Вас! Затова, когато има избори, идете и гласувайте, за да не сте изненадани после от резултата, и за да не твърди всяка партия, че тя е спечелила, а Б.Б. (С.С., ...) е загубил, а трети да управлява.  Наздраве!  [_]3