Просмотр сообщений
Страниц: [1] 2 3 ... 32
1  Установка и настройка / Поддержка аппаратного обеспечения в QNX / Re: Выбор мультипортовой платы RS422/Rs485 для работы  : Июля 28, 2018, 08:58:07 am
Oбновленный экспериментальный драйвер Dev32.ser решил описанную проблему.

http://community.qnx.com/sf/discussion/do/listPosts/projects.qnx4/discussion.general.topc27070;jsessionid=tAVzt00cBrMMoyxE+6i7L3Mj.tf?pageSize=-1#post_post117734

cksum 1906302064 34212 Dev32.ser
2  Установка и настройка / Поддержка аппаратного обеспечения в QNX / Re: Выбор мультипортовой платы RS422/Rs485 для работы в QNX4 : Июля 26, 2018, 02:59:19 pm
Появляются такие подробности:

- удалось запустить драйвер мультипортовой платы с процессорной платой Advantech PCA 6010 с процессором Intel Core 2Duo.

- не удается запустить драйвер с процессорной платой Advantech PCA 6028 с процессором Intel Core-i5 .

Для этого типа процессора обмен между процессором и платами MOXA происходит через южный мост H81 PCH процессорной платы PCA 6028.

Обмен между мультипортовыми платами и южным мостом выполняется через мост PCIe to PCI ITE8892 процессорной платы.

Похоже, что QNX6.5 как-то справляется с инициализацией южного моста и моста PCIe to PCI ITE8892 процессорной платы, а QNX4.25 - не справляется.

Как решить проблему?

Спасибо
3  Установка и настройка / Поддержка аппаратного обеспечения в QNX / Re: Выбор мультипортовой платы RS422/Rs485 для работы  : Июля 25, 2018, 12:39:23 pm
У нас 4-ре 8-ми портовые RS-232/RS-485 платы CP-118U-I в одном контроллере под управлением QNX.

Для QNX6 работает запуск драйверов последовательных портов:

echo "start Moxa serial Drivers..."
devc-ser8250 -c14745600,16 -t 14 -u3   d0c0,10 d0c8,10 d0d0,10 d0d8,10 d0e0,10 d0e8,10 d0f0,10 d0f8,10
devc-ser8250 -c14745600,16 -t 14 -u11 d080,10 d088,10 d090,10 d098,10 d0a0,10 d0a8,10 d0b0,10 d0b8,10
devc-ser8250 -c14745600,16 -t 14 -u19 d040,10 d048,10 d050,10 d058,10 d060,10 d068,10 d070,10 d078,10
devc-ser8250 -c14745600,16 -t 14 -u27 d000,10 d008,10 d010,10 d018,10 d020,10 d028,10 d030,10 d038,10

То же самое не удается сделать в QNX4:

Dev32.ser -t 14  d0c0,10 d0c8,10 d0d0,10 d0d8,10 d0e0,10 d0e8,10 d0f0,10 d0f8,10 &
Dev32.ser -t 14  d080,10 d088,10 d090,10 d098,10 d0a0,10 d0a8,10 d0b0,10 d0b8,10 &
Dev32.ser -t 14  d040,10 d048,10 d050,10 d058,10 d060,10 d068,10 d070,10 d078,10 &
Dev32.ser -t 14  d000,10 d008,10 d010,10 d018,10 d020,10 d028,10 d030,10 d038,10 &

Происходит блокировка контроллера, ОС QNX4 "повисает"...

Блокировка происходит и в случае запуска драйвера только на один порт:

Dev.ser d000,10 &

В чем может быть дело?

Спасибо!
4  Разработка / Программирование под QNX / Re: QNX6.5 печать через lpd, проблема : Августа 17, 2017, 01:26:53 pm
Из документации на утилиту spooler


Options:
...
-g
Make the printer a global network resource.

Какие особенности и возможности дает запуск spooler с ключом -g?

спасибо
5  Разработка / Программирование под QNX / Re: Странности при отработке ф-ции system() : Августа 15, 2017, 08:31:06 am
Не могли бы Вы подтвердить или опровергнуть мой тест своим независимым тестированием?

Спасибо
6  Разработка / Программирование под QNX / Re: Странности при отработке ф-ции system() : Августа 14, 2017, 08:22:01 am
Не могу с Вами согласиться насчет "ошибок в QNX".

Надеюсь что мой пример независимо проверят и опровергнут.

Проблему действительно обошел "с другой стророны"...
7  Разработка / Программирование под QNX / Re: Странности при отработке ф-ции system() : Августа 12, 2017, 08:23:32 am
Если файл закрыть, или открывать файл на "своем", а не удаленном
контроллере, то проблемы не возникает.

Проблема при открытом "через сеть" файле ...
8  Разработка / Программирование под QNX / QNX6.5 печать через lpd, проблема : Августа 11, 2017, 06:20:58 am
На контроллере А3 успешно работает вывод на принтер Canon через spooler и lpr ( настройка - как описано в статье http://forum.kpda.ru/index.php/topic,152.msg10615.html#msg10615 ).

На контроллере А3 команда

$ls /dev/printers/Canon

показывает папку spool, при копировании в spool файла, происходит его печать.

В QNET-сети с контроллером A3 находится контроллер A4.

По какой причине команда на контроллере А4

$ls /net/A3/dev/printers/Canon

не показывает папку spool, из-за чего удаленная печать с контроллера А4 на принтер не получается?

Спасибо
9  Разработка / Программирование под QNX / Странности при отработке ф-ции system() : Августа 11, 2017, 06:19:15 am
Есть простой код:

#include <stdio.h>
#include <stdlib.h>

int main(int argc, char *argv[])
{
  int ret;
...
  ret=system("uname -a");   //любая команда sh
...
}

При исполнении ф-ция system() выполняется без ошибки,
выводится результат выполнения команды "uname -a", ret = 0;


Теперь 2 контроллера А1 и А2 в Qnet сети, и на удаленном контроллере А2 есть файл /net/A2/tmp/tmpfile.

#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[])
{
  int ret,fp;
...
  fp=open("/net/A2/tmp/tmpfile",O_RDWR);
  ret=system("uname -a");
...
}

При исполнении программы на контроллере А1 и при удачном открытии удаленного файла,
так что  fp>0, ф-ция system("uname -a") завершается с ошибкой,выводится "sh: can't fork, try again".

Код ошибки ret=256, "Socket is already connected".

Как можно объяснить отказ system() вызывать sh и выполнять команду при открытом файле на удаленном контроллере?

Спасибо.

10  Разработка / Встраиваемые системы / Re: Скорость объединения контроллеров в сеть Qnet : Марта 31, 2017, 04:38:12 am
Через некоторое время (десятки секунд) в сети работают все контроллеры.

Есть ли опыт запуска io-pkt с опцией resolver:file  и статическим описанием конфигурации сети
через MAC-адреса ?

Время установления сети при этом короткое, сопоставимое с QNX4?
11  Разработка / Встраиваемые системы / Скорость объединения контроллеров в сеть Qnet : Марта 30, 2017, 06:33:06 pm
Несколько QNX6 контроллеров объединены дублированными сетевыми интерфейсами через сетевой коммутатор.

Контроллеры (до 8-ми штук)  включаются одновременно от общего источника питания и начинают загружать ОС с разной скоростью.

Как можно объяснить, что в папке /net контроллера A1  по команде

$ls /net

контроллер A2 сперва появляется, а потом исчезает?

Какими действиями можно ускорить объединение всех контроллеров в сеть Qnet
и убедиться в стабильности сетевого соединения для всех контроллеров?

Спасибо.
 
12  Разработка / Программирование под QNX / Re: Запустить программу на удаленной машине : Марта 22, 2017, 08:55:35 pm
Имеется ли исходный текст утилиты on? Было бы полезно изучить...

Вроде когда-то давно исходные тексты выкладывались, а потом закрылись.

Спасибо.
13  Разработка / Программирование под QNX / Скорость объединения контроллеров в сеть Qnet : Марта 22, 2017, 08:51:41 pm
Несколько QNX6 контроллеров объединены дублированными сетевыми интерфейсами через сетевой коммутатор.

Контроллеры (до 8-ми штук)  включаются одновременно от общего источника питания и начинают загружать ОС с разной скоростью.

Как можно объяснить, что в папке /net контроллера A1  по команде

$ls /net

контроллер A2 сперва появляется, а потом исчезает?

Какими действиями можно ускорить объединение всех контроллеров в сеть Qnet
и убедиться в стабильности сетевого соединения для всех контроллеров?

Спасибо.
14  Разработка / Программирование под QNX / Re: TCP/IP Серверы, клиент и утилита on : Ноября 29, 2016, 08:15:16 am
Спасибо, очень помогло!
15  Разработка / Программирование под QNX / TCP/IP Серверы, клиент и утилита on : Ноября 27, 2016, 03:22:12 pm
Имеются 2 контроллера под QNX 6.5.0 A1 и A2 , cвязанные по сети qnet и по TCP-IP со статическими IP-адресами в одной подсети.

На контроллере A1 из скрипта rc.local запускается программа-сервер sA1, которая открывает Socket и ждет запросы  от клиентов по протоколу TCP.

На контроллере A2 из скрипта rc.local запускается программа-сервер sA2, которая открывает Socket и ждет запросы  от клиентов по протоколу TCP.

Если программа-клиент cl запускается на контроллере A1

#cl &

то пo умолчанию по адресу localhost подключается к серверу sA1 и делает запросы серверу.

Если программа-клиент запускается удаленно с контроллера А1 на контроллере А2:

#on -n A2 cl &

то к какой программе-серверу она будет подключаться ( sA1 или sA2 )?

Похоже что к sA1...

Если так, то почему?

Как удаленно запустить клиент сl с контроллера А1 на контроллере A2, чтобы клиент по умолчанию по адресу localhost подключился  к серверу sA2?

Через какие переменные окружения или другие механизмы при удаленном запуске программы на другой контроллер сохраняется ее отношение к TCP-IP стеку текущего контроллера?

Иными словами, если ф-ции libc клиента обращаются к ресурсу /net/A1/dev/io-net/wm0 при запуске клиента на контроллере А1, то как их заставить обратиться к ресурсу /net/A2/dev/io-net/wm0 при удаленном запуске клиента с контроллера А1 на контроллере А2?

Cпасибо.
Страниц: [1] 2 3 ... 32