Читайте также:
|
|
Данный блок предназначен для приема и передачи информации через протокол обмена USB, тестирования соединения, осуществления передачи принятой от ПК информации модулям программного обеспечения в связи с установленным протоколом обмена и приема данных от них. В задачу блока также входит разделение команд управления модулем сопряжения от различных модулей для обеспечения корректности и стабильности работы программы.
Блок обмена информацией по USB состоит из следующих модулей:
1. Мьютекс;
2. Модуль сопряжения с микросхемойFT245RQ;
3. Модуль для тестирования соединения.
Обобщенная структурная схема блока приведена на рисунке 7.
Рисунок 7 – Обобщенная структурная схема блока обмена информацией по USB
Протокол обмена
К протоколу обмена предъявляются следующие требования:
1) Должна быть предусмотрена возможность разделения сообщений для разной аппаратуры;
2) Должна быть предусмотрена возможность ответа на различные устройства;
3) Сообщение может иметь различную длину;
4) Должна быть предусмотрена пакетная передача (несколько сообщений).
Исходя из этих требований, был принят следующий протокол обмена (таблица 1).
Таблица 1 – Протокол обмена по каналу USB
Байты | Биты | Название | Примечание |
1..0 | 15..0 | SourcePort | Порт отправителя |
3..2 | 31..16 | DestPort | Порт получателя |
5..4 | 47..32 | ID | Уникальный идентификатор пакета |
Lastmessage | Флаг последнего сообщения в пакете | ||
54..48 | Length | Длина сообщения в байтах | |
63..56 | Number | Номер сообщения в пакете | |
8..7+ Length | Data | Данные |
Данный протокол можно успешно «встроить» в протокол обмена UDP; и с помощью последнего осуществлять обмен информации с разных устройств. То есть один ПК (сервер) подключен к аппаратуре, а с ним по сети Ethernet связываются другие ПК, которые могут передавать и принимать сообщения с отлаживаемой аппаратуры.
Рассмотрим каждый составляющий модуль блока в отдельности.
Мьютекс
Мьютекс предназначен для разделения потоков данных и управляющих воздействий от различных модулей и выдачи одного из них (того, кто первый успел захватить мьютекс) на вход модуля сопряжения.
На вход подаются:
1. Шина запроса мьютекса (iGetCtrl);
2. Шина освобождения мьютекса (iRetCtrl);
3. Объединенные данные от всех модулей (iData);
4. Сигнал сброса (iRst);
5. Тактовый сигнал (C).
На выходе:
1. Шина выданного управления (может содержать только единственный единичный сигнал во всей шине) (oGiveCtrl);
2. Шина данных от того устройства, который захватил мьютекс (oData).
Шины запроса, освобождения и выданного управления имеют размерность равную количеству устройств, которым может понадобиться доступ к модулю сопряжения для записи информации.
Дата добавления: 2015-10-28; просмотров: 198 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Подмодуль формирования отправляемых данных | | | Модуль сопряжения с микросхемой FT245RQ |