Алексей
Пользователь
Сообщений: 12
|
|
« : 21 Апрель, 2011, 10:59:03 » |
|
Добрый день! Кто нибудь настраивал QNX 4.25 на защищенных компьютерах типа EPS-AT270-2PCI Описание тут - > http://www.kit-e.ru/news/eltech_05_08_2010.phpСеть, PCI слоты, видео на flatdc работают. Также работают первых 2 com порта, которые автоматически прописались при установке QNX. НО проблема возникла с остальными 4 портами. Прописал их в sysinit1 c адресом и прерываниями, которые списал из Bios аналогично первым двум портам. После перезагрузки в /dev отобразились все ser1, ser2,ser3...ser6. Но если при тестировании первых 2 портов все ок, то между остальными 4 портами никаких байтов не бежит. Подскажите где еще копать? Или это несовместимость какая то? Как определить?
|
|
|
Записан
|
|
|
|
Олег Большаков
|
|
« Ответ #1 : 21 Апрель, 2011, 11:12:17 » |
|
Покажите, пожалуйста, вывод следующих команд: # sin ar # sin ver # sin ir # show_pci -vv И сам файл /etc/config/sysinit.1 .
|
|
|
Записан
|
|
|
|
Алексей
Пользователь
Сообщений: 12
|
|
« Ответ #2 : 21 Апрель, 2011, 12:44:09 » |
|
Олег высылаю инфу, все в аттаче. В биосе отключил 4,5,6 ком-порты. Оставил только 1,2 и 3. Между 1 и 2 все передается отлично. А третий как мертвый. Спасибо.
|
|
|
Записан
|
|
|
|
Олег Большаков
|
|
« Ответ #3 : 21 Апрель, 2011, 13:04:59 » |
|
Номер прерывания Вы взяли из настроек BIOS? Стандартный COM3 в x86 имеет номер прерывания 4, как и COM1.
Надо точно убедиться, что Вы указываете правильные адреса портов ввода-вывода и прерывания.
|
|
|
Записан
|
|
|
|
Алексей
Пользователь
Сообщений: 12
|
|
« Ответ #4 : 21 Апрель, 2011, 13:36:58 » |
|
Порты и прерывания брал из биоса. Биос по умолчанию расставил эти адреса. Хотя пробывал и менять, и 4 прерывание на 3КОМ ставить, всеравно не работает. В правильности адресов и прерываний уверен на 100%.
П.С.Тестирую путем переброса с одного порта на другой файлика из разных консолей по нуль-модемному кабелю. П.С.С. Может настройки портов, то есть четность/нечетность или скорость разные? как это проверить и выставить руками?
|
|
|
Записан
|
|
|
|
Олег Большаков
|
|
« Ответ #5 : 21 Апрель, 2011, 13:46:29 » |
|
Для настройки параметров последовательных портов используется программа stty. Например: # stty < /dev/ser1 или # stty -a < /dev/ser1
|
|
|
Записан
|
|
|
|
Алексей
Пользователь
Сообщений: 12
|
|
« Ответ #6 : 21 Апрель, 2011, 14:00:50 » |
|
# stty < /dev/ser1 Name: //1/dev/ser1 Type: serial Opens: 1 (R-) Sigint Grp: 0, Sighup pid: 0 +edit +osflow +ihflow +ohflow +lkhflow +ihpaged intr=^C erase=^? kill=^U eof=^D start=^Q stop=^S min=01 time=00 par=none bits=8 stopb=1 baud=9600 rows=0,0 +DTR -RTS -BRK +cts +dsr -ri -cd ioport=3F8 irq=4 # stty < /dev/ser2 Name: //1/dev/ser2 Type: serial Opens: 1 (R-) Sigint Grp: 0, Sighup pid: 0 +edit +osflow +ihflow +ohflow +lkhflow intr=^C erase=^? kill=^U eof=^D start=^Q stop=^S min=01 time=00 par=none bits=8 stopb=1 baud=9600 rows=0,0 +DTR +RTS -BRK +cts +dsr -ri -cd ioport=2F8 irq=3 # stty < /dev/ser3 Name: //1/dev/ser3 Type: serial Opens: 1 (R-) Sigint Grp: 0, Sighup pid: 0 +edit +osflow +ihflow +ohflow +lkhflow intr=^C erase=^? kill=^U eof=^D start=^Q stop=^S min=01 time=00 par=none bits=8 stopb=1 baud=9600 rows=0,0 +DTR +RTS -BRK -cts -dsr -ri -cd ioport=3E8 irq=5
Олег выделенные параметры у КОМ 3 отличаются от КОМ1 и КОМ 2.. Это приоритетно?
|
|
|
Записан
|
|
|
|
Олег Большаков
|
|
« Ответ #7 : 21 Апрель, 2011, 14:29:53 » |
|
Это состояние линий CTS и DSR. Я думаю, что они везде должны быть одинаковые. Вы уверены, что соединили нуль-модемным кабелем нужные разъёмы?
Не очень понятно, каким образом Вы передаёте и принимаете файлы. Обычно я перевожу последовательные порты в RAW режим и отключаю любое управление потоком. После этого можно тестировать порты при помощи команд echo и cat.
|
|
|
Записан
|
|
|
|
Алексей
Пользователь
Сообщений: 12
|
|
« Ответ #8 : 21 Апрель, 2011, 14:35:31 » |
|
уверен..ведь между ком1 и ком2 все передается. Потом беру вынимаю 1 конец из ком2 и подсоединяю к ком3. И тестирую с помощью cat
принимаю командой cat < /dev/ser3 отправляю командой cat > файл /dev/ser1
|
|
|
Записан
|
|
|
|
Алексей
Пользователь
Сообщений: 12
|
|
« Ответ #9 : 21 Апрель, 2011, 14:38:09 » |
|
+ihpaged и не совсем понимаю как -cts -dsr перевести в +cts +dsr. Подскажите пожалуйста.
|
|
|
Записан
|
|
|
|
Олег Большаков
|
|
« Ответ #10 : 21 Апрель, 2011, 14:50:42 » |
|
Пока Вы не переведёте порт в RAW режим, Вы можете наблюдать разнообразные эффекты.
По поводу CTS и DSR. Очень похоже, что драйвер сконфигурирован неправильно и не получает от устройства флагов готовности к работе. Есть вероятность, что драйвер не поддерживает Ваши последовательные порты, но это можно сказать только после того, как Вы сообщите название контроллера.
|
|
|
Записан
|
|
|
|
Алексей
Пользователь
Сообщений: 12
|
|
« Ответ #11 : 21 Апрель, 2011, 15:40:33 » |
|
Информация от производителя:
I/O Chipset ITE 8712F/KX + Fintek F81216DG. Как я понимаю за дополнительные UART отвечает Fintek F81216DG.
|
|
|
Записан
|
|
|
|
Олег Большаков
|
|
« Ответ #12 : 21 Апрель, 2011, 16:06:45 » |
|
Судя по описанию контроллер должен поддерживаться драйвером Dev.ser.
В интеренете пишут, что BIOS может не настраиваеть прерывания для этого контроллера. Так это или нет в Вашем случае мы сможем сказать только после тестирования у нас.
А другие ОС работают со всеми портами? Например, Windows или Linux? Если работают, то какие порты и прерывания используют?
|
|
|
Записан
|
|
|
|
Алексей
Пользователь
Сообщений: 12
|
|
« Ответ #13 : 21 Апрель, 2011, 16:09:15 » |
|
Под досом тестировал - работают на этих же адресах портов и прерываний
|
|
|
Записан
|
|
|
|
Egor
Пользователь
Сообщений: 20
|
|
« Ответ #14 : 11 Июнь, 2015, 09:27:45 » |
|
Подниму тему. Столкнулся с такой же проблемой, плата IMBA-G410-R20, всего 6 com-портов(Super I/O Fintek F81865). Первый и второй порты работают отлично, а вот с 3го по 6ой портов вообще никаких сигналов. Смотрю осциллографом.
Запускаю Dev.ser -E -F -S -b9600 3F8,4 -b9600 2F8,3, -b9600 3E8,11 -b9600 2E8,10, -b9600 338,11 -b9600 328,10 &
Адреса и прерывания взял из BIOS, для портов с 3го по 6ой можно выбирать только 10 или 11 прерывание. Как-то удалось решить эту проблему? или чем закончилась та ситуация?
|
|
« Последнее редактирование: 11 Июнь, 2015, 10:14:24 от Egor »
|
Записан
|
|
|
|
|