        Драйвер tmk1553b v4.10.5 интерфейсных модулей сопряжения с 
мультиплексным каналом по ГОСТ 27765.52-87 (MIL-STD-1553B) производства 
ЗАО "ЭЛКУС" представляет собой администратор ресурса  QNX 6.x, предоставляющий
сервисы для   создания  программного обеспечения, управляющего
функционированием данных плат.

        Драйвер tmk1553b поддерживает одновременно до 8 плат,
выпускаемых в настоящее время ЗАО "ЭЛКУС": ТМК-400, РТМК-400, МТМК-400,
TX1-PC (TE1-PC), TX1-MP, TX1-104 (TE1-104), TX6-PC (TE6-PC), TX6-104
(TE6-104), TE1-PCI, TE1-PCI2, TE6-PCI, TE6-PCI2, TE1-PCI4, TE6-PCI4,
TA1-PC, TA1-104, TAM1, TA1-PCI, TA1-PCI4, TA1-PCI-32RT, TA1-PE2, TA1-PE-32RT,
TA1-PE4. Реально поддерживаются не 8 плат, а 8 независимых устройств,
расположенных на платах. Поэтому, например, плата TE1-PCI2 содержит 2
независимых устройства и таких плат можно будет включить только 4.

        Запуск драйвера

Драйвер поддерживает следующий формат параметров командной строки:

nrt=N - задание максимального количества виртуальных ОУ, формируемых на 
        каждом устройстве многоадресного ОУ;

a0=N - установка первого базового адреса регистров устройства 0 в области
       ввода-вывода компьютера. Для большинства плат этот адрес и единственный,
       исключение - платы ТМК-400. Адрес задается в шестнадцатеричном 
       представлении.

b0=N - установка второго базового адреса регистров платы 0 в области ввода-
       вывода компьютера. Этот адрес надо задавать только для плат ТМК-400.
       Адрес задается в шестнадцатеричном представлении.

i0=N - установка номера прерывания для платы 0;
      
t0=type - задание типа устройства 0. Допустимые значения TMK400, 
        RTMK400, TMKMPC, TMKX, TMKXI, TA, TAI аналогичны типам 
        при задании конфигурации в DOS в файле tmk.cfg;

l0=load - задание типа загрузки для устройств TMKX. Допустимые значения 
        TX1, TX6, MR6. По умолчанию используется TX1;

d0=N - установка порядкового номера PCI платы MIL-STD-1553B в компьютере,
       начиная с 1. Драйвер использует этот номер для различения нескольких
       плат PCI, установленных в компьютер.      
       Порядок присвоения номеров  зависит от размещения плат в слотах PCI.
       Если в компьютере только одна такая плата MIL-STD-1553B, то ее номер 1;

e0=N - установка порядкового номера устройства на PCI платах, содержащих
       несколько устройств (TE1-PCI2, TE1-CPCI2 и т.п.), начиная с 1.

a1=N b1=N i1=N d1=N e1=N t1=type l1=load
a2=N b2=N i2=N d2=N e2=N t2=type l2=load
a3=N b3=N i3=N d3=N e3=N t3=type l3=load
a4=N b4=N i4=N d4=N e4=N t4=type l4=load
a5=N b5=N i5=N d5=N e5=N t5=type l5=load
a6=N b6=N i6=N d6=N e6=N t6=type l6=load
a7=N b7=N i7=N d7=N e7=N t7=type l7=load - аналогичные параметры для
        плат с номерами 1 - 7.
      
        Для плат ISA надо указывать параметры a, [b], i, t, [l], для плат 
PCI надо указывать параметры d, [e], t. Параметры b, e и l указывается
при необходимости для соответствующих типов плат, остальные параметры 
обязательны.

Примеры:
1. Запуск драйвера для одной платы TX1-PC с адресом 150h и прерыванием 11:

./tmk1553b.ko a0=0x150 i0=11 t0=TMKX &

2. Запуск драйвера для двух плат: TX6-PC с адресом 150h и прерыванием 10 и
ТМК-400 с адресами 120h, 130h и прерыванием 11:

./tmk1553b.ko a0=0x150 i0=10 t0=TMKX l0=TX6 a1=0x120 b1=0x130 i1=11 t1=TMK400 &

3. Запуск драйвера для трех плат: TX6-PC с адресом 150h и прерыванием 10 и
двух плат TE1-PCI:

./tmk1553b.ko a0=0x150 i0=10 t0=TMKX l0=TX6 d1=1 t1=TMKXI d2=2 t2=TMKXI &

4. Запуск драйвера для одной PCI платы с двумя устройствами TE1-PCI2:

./tmk1553b.ko d0=1 e0=1 t0=TMKXI d1=1 e1=2 t1=TMKXI &

5. Запуск драйвера для одной PCI платы с двумя устройствами TE6-PCI2 и
конфигурирование одного устройства как КК/ОУ/МТ, а другого - как
многоадресного ОУ:

./tmk1553b.ko d0=1 e0=1 t0=TMKXI d1=1 e1=2 t1=TMKXI l1=MR6 &

6. Запуск драйвера для двух плат: TX6-PC с адресом 150h и прерыванием 10 в
режиме многоадресного ОУ и платы TE1-PCI:

./tmk1553b.ko a0=0x150 i0=10 t0=TMKX l0=MR6 d1=1 t1=TMKXI &

7. Запуск драйвера для одной PCI платы TA1-PCI:

./tmk1553b.ko d0=1 t0=TAI &

8. Запуск драйвера для одной PCI платы с 4-мя устройствами TA1-PCI4:

./tmk1553b.ko d0=1 e0=1 t0=TAI d1=1 e1=2 t1=TAI d2=1 e2=3 t2=TAI d3=1 e3=4 t3=TAI &

9. Запуск драйвера для двух PCI плат многоадресного ОУ TA1-PCI-32RT, включение 
8 виртуальных ОУ на каждой плате:

./tmk1553b.ko d0=1 t0=MRTAI d1=1 t1=MRTAI nrt=8 &


        В директории BIN находятся программы 'simpltst', 'randbcrt', 
'mt1553be', 'tmk', 'bcrt'.

        Программа 'simpltst' - простой тест драйвера и одного устройства, 
в частности, тест памяти, расположенной на устройстве, и тест получения 
прерывания от устройства. Программа запускается без параметров (выполняется 
тест устройства с номером 0) или с одним параметром, задающим номер 
тестируемого устройства.
Использование:
'./simpltst'   - выполняет тест устройства 0,
'./simpltst 0' - выполняет тест устройства 0,
'./simpltst 1' - выполняет тест устройства 1,
и т.д.

        Программа 'randbcrt' - совместный тест двух (КК и ОУ) или трех (КК, 
ОУ и МТ) устройств, соединенных линией передачи.
Использование:
'./randbcrt [D D [D]] [a] [b] [c+-] [g+-] [i+-] [f+-] [eD] [mD-D]'
Параметры по умолчанию: 
'./randbcrt 0 1 a b c+ g+ i+ f+ e0' - устройство 0 КК, устройство 1 ОУ, линии 
A и B, команды режима управления разрешены (c+), групповые команды разрешены 
(g+), аппаратный бит включен (i+), флаговый режим ОУ включен (f+), число 
ошибок - не ограничено (e0).

        Программы 'mt1553be' - программы режима монитора сообщений. 
Программа пишет лог обмена в канале в файл и может отображать заданные данные 
на экране.
Использование: 
'./mt1553b параметры'
Параметры (в круглых скобках - значения по умолчанию):
? - эта справка;
d<НомерУстройства(dec)> - задает номер устройства, начиная с 0 (нет);
n<ИмяФайла> - задает файл с результатами работы (nmonitor.dat);
l<ДлинаБуфера(dec)> - задает размер буфера сообщений программы (l%ld);
f<СловоЗаписи(hex)> - включает режим предзаписи указанного слова во все
     ячейки памяти монитора (выкл);
th<0-6> - включает аппаратную регистрацию времени сообщений (выкл);
b<+/-> - включает/выключает регистрацию групповых сообщений (b+);
ar<ДиапазонАдресовОУ(dec)> - задает диапазон адресов оконечных устройств,
     для которых производится регистрация сообщений; пример задания
     диапазона адресов: ar2,5-10,17,28-30 (ar0-30);
o<ДиапазонАдресовДанных(hex)> - задает диапазон адресов данных в канале,
     которые должны отображаться на экране при мониторинге; пример
     задания диапазона: o0E21,5223-5226 (выкл);
m<b/r/m> - задает режимы буферизации(b), регистрации(r),
     только мониторинга(m) (mr).
Примеры:
'./mt1553b d0 ndata.sav l2000 fFFFF ar0-9,20-29'
'./mt1553b d1 th'

        Программа 'bcrt' - программа в виде окна диалога оконной
системы Photon, позволяющая вести обмен текстовыми строками через основную
линию канала MIL-STD-1553B с другими такими же программами, запущенными либо
на том же компьютере (если на компьютере установлено несколько плат), либо на
другом компьютере. При этом необходимо строго следить, чтобы одновременно 
только одна программа находилась в режиме 'КК' и не было совпадений адресов
'ОУ' у программ в режиме 'ОУ'! Для этого после запуска программы необходимо
сначала установить режим платы 'КК' или 'ОУ' и 'Адрес ОУ', и только после 
этого задавать 'Номер платы в PC'.

        Программа 'tmk' - программа консольного режима для управления
режимами КК или ОУ. Краткое описание в файле doc\tmk.txt.

        В директории INCLUDE находится API qnx6tmk.c и qnx6tmk.h, 
        содержащий функции работы с драйвером

        Директория SOURCE содержит исходные тексты программ:
        
        SOURCE\BCRT - исходные тексты программы 'bcrt'
        SOURCE\Simpltst - исходные тексты программы 'simpltst'
        SOURCE\TMK - исходные тексты программы 'tmk'

(с) ЗАО "Электронная компания ЭЛКУС", 2002, 2013.