Внешними устройствами (ведомыми) являются устройства, работающие по шине BUS (либо по виртуальной шине через USB).
Это могут быть другие контроллеры платформы NJoy32 или специализированные оконечные устройства типа ручек джойстиков или панелей управления. Всего к ведущему контроллеру можно подключить до 8 таких устройств.
Порядок представления соответствует порядку опроса устройств по шине. Менять порядок можно перетаскиванием с правой кнопкой мыши.
Device -тип устройства.
Это идентификатор устройства в параметрах - при выборе одного из стандартных типов автоматически устанавливается большинство связанных параметров параметров ( уникальный адрес и набор передаваемых параметров).
Тип Generic Device позволяет свободное изменение любых параметров устройства, в то время как другие типы имеют жестко заданные ограничения для штатных устройств, поэтому его акже можно использовать и для любых других - когда надо использовать нештатные функции таких устройств.
NXT Joker - ещё одно специальное устройство.
Оно используется в дефолтных конфигурациях семейства контроллеров NXT (EVO) и STECS.
Такие устройства как правило имеют большую вариативность подключаемых ручек ( SCG-R, SCG-L, F14, KG12, MTG-R MTG-L, STG-R STG-R) и внешних модулей (SEM THQ FSM-GA STEM), при этом самых модулей может быть несколько - THQ - до 4-х, SEM до 2-х), что позволяет сконфигурировать самые разнообразные варианты управляющих панелей/модулей.
Такие устройства требуют обязательную процедуру автоконфигурирования.
Во время этой процедуры ведущий контроллер ищет периферийные устройствам и располагает их в свободные слоты NXT Joker c уже необходимыми параметрам по привязке и количеству регистров ввода, осей, LEDs.
Также при необходимости присваиваются необходимые в конфигурации функции для физических линий ( типа uSSw для ручек SCG), конфигурируются параметры осей и т.п.
Обнаружены подключенные модули THQ и FSM.GA и сгенерирована необходимая конфигурация всего контроллера:
🚩 При изменении физического состава таких контроллеров ( NXT / STECS ) необходимо сбросить конфигурацию в дефолт и проивести автокнфигурацию заново!
Физические настройки обмена по шине
Port - порт подключения устройства [ USART1..3, Virtual ] . Штатно подключения осуществляются через порт USART2.
Из особых настроек можно отметить порт Virtual - в данном случае контроллер не будет опрашивать физические шины, но сможет получать необходимые данные от внешних программ типе VKB-Link.
Poll, mS - период опроса устройства.
Если у вас не более 4 устройств на шине, то все они смогут опрашиваться в стандартном тайминге 4 ms.
Если их больше 4х, то рекомендуется назначить более приоритетным устройствам ( типа базы Gunfighter) 4 ms, остальным - 8 ms.
AdrH, AdrL - - двухбайтовый уникальный адрес устройства на шине. Именно по этому адресу мастер-контроллер будет опрашивать (искать) данное устройство.
Alt.Group - объединение нескольких устройств в альтернативную группу.
Например для контроллеров Gunfighter могут быть использованы две базы - левая и правая. Это необходимо для формирования разных PID USB для одновременного использования. Или к базе могут быть подключены левая или правая ручки SCG. Для таких случаев однотипные устройства объединяются в группу, но физически может присутствовать только одно. Это позволяет работать только с подключенным оборудованием и не опрашивать по шине отсутствующие устройства. Также для отсутствующих устройств не ведется статистика ошибок связи и не формируется событие BUS Error.
На данный момент для универсальных прошивок с автоконфигурацией не используется.
Параметры передачи данных
LEDsN, Base -количество передаваемых светодиодов и смещение ( номер в глобальном массиве LEDs )
Используется для управления светодиодами периферийного устройства.
Параметры приема данных
Ax N - число принимаемых осей,
Reg N, Bias - число принимаемых регистров и смещение в общем массиве физических регистров конфигурации
Auto - позволяет автоматическую привязку смещения.
Enc N - число принимаемых энкодеров.
Структура приема осей:
Ведомое устройство может передавать данные до 8-ми осей.
NONE - не использовать данные оси
Virtual - виртуальная ось. В физической оси должен быть указан для Input тип Virtual. Данные будут переданы на вход оси и пройдут всю обработку - фильтрацию, нормализацию, кривые, триммирование и т.д.
Normal - нормализованная ось. Данные будут напрямую использованы на входе логической оси .
Trimmer - данные будут использованы в качестве триммера оси. На физической оси должен быть включен триммер.
V_MaRS X,V_MaRS Y - ортогональные компоненты датчиков MaRS. Расчет угла производится на стороне мастера.
В физической оси должен быть указан для Input тип V_MaRS. Обе компоненты должны ссылаться на одну ось.
V_MaRS - виртуальный MaRS. Расчет угла производится на стороне ведомого (передатчика).В физической оси должен быть указан для Input тип V_MaRS.
Axis - номер оси [1..16]
Для мониторинга работы шины и подключенных устройств можно посмотреть статистику ошибок связи (кнопка STAT):
Также состояние всех внешних устройств можно посмотреть на вкладке TEST - External DEvices
Кликнув а картинку интересующего устройства также можно получить статистику работы шины: