Логика СПГ 763.2 [11/18] Контрольные коды
![Логика СПГ 761.2 [11/18] Контрольные коды](/views2/1868163/page11/bgb.png)
Магистральный протокол СПСеть 11
Все поля от DAD до ETX включительно подвергаются DLE-стаффингу, то есть к каждому обнару-
женному символу DLE добавляется еще один. Затем формируется контрольная информация. Получен-
ные два байта записываются за ETX без стаффинга.
Стаффинг применяется всегда, вне зависимости от того является ли сообщение двоичным или сим-
вольным.
3.3 Контрольные коды
Контрольные коды насчитывается с байта, следующего за SOH, поскольку два первых байта DLE
и SOH проверяются явно при выделении начала сообщения. Контрольные коды охватывают все байты,
включая ETX и все стаффинг символы в этом промежутке. Алгоритм расчета циклического контроль-
ного кода приведен ниже, в виде функции на языке С. Функция возвращает 16-ти разрядное целое
число, старший байт которого CRC1, а младший CRC2. Если приписать эти байты к сообщению и
повторно выполнить функцию, включая в промежуток обработки и эти байты, то результатом должен
быть нулевым.
3.4 Указатели и информация при символьном обмене
При осуществлении символьного обмена между абонентами данные DataSet разделяются на две ка-
тегории: указатели и информацию. Каждая категория представляет собой последовательность сим-
вольных полей, начинающихся с кода горизонтальной табуляции HT (09h). Последовательность полей
завершается разделителем FF (0Сh) - подача формы. Таким образом, структура категорий одинакова.
Различается их назначение.
К указателям относятся номера каналов, параметров, массивов и т.п. К информации - значения па-
раметров, единицы измерения, временные метки и т.д.
При обработке сообщения абонент первоначально интерпретирует указатели. Если указатель не со-
держит ошибок, то он копируется в ответное сообщение. Если обнаружена ошибка, то вместо копии
указателя в ответное сообщение помещается диагностический текст, причем он начинается с раздели-
теля HT, а заканчивается FF. Дальнейший разбор прекращается, и формирование ответа заканчивается.
Ответ, содержащий диагностику, отсылается источнику запроса.
Ниже при описании каждого вида обмена структура указателей и информации уточняется.
////////////////////////////////////////////////////////
//Функция вычисляет и возвращает циклический код для
//последовательности из len байтов, указанной *msg.
//Используется порождающий полином:
//(X в степени 16)+(X в степени 12)+(X в степени 5)+1.
//Полиному соответствует битовая маска 0x1021.
//
int CRCode (char *msg, int len)
{
int j, crc = 0;
while ( len-- > 0 )
{
crc = crc ^ (int) *msg++ << 8;
for ( j=0; j < 8; j++ )
{
if(crc & 0x8000) crc = (crc << 1) ^ 0x1021;
else crc <<= 1;
}
}
return crc;
}
Содержание
- Магистральный протокол спсеть 1
- Руководство программиста 1
- Содержание 3
- Адресация абонентов 4
- Введение 4
- Основные положения 4
- Принципы магистрального обмена 4
- Режимы передачи данных 4
- Магистральные компьютеры 5
- Удаленный доступ 5
- Локальное оперативное подключение 6
- Локальный доступ 6
- Типы маркеров 7
- Управление магистраль 7
- Маркерные циклы 8
- Управляющие таймауты 8
- Начальное прослушивание 9
- Dle стаффинг 10
- Общая структура 10
- Форматы сообщений 10
- Контрольные коды 11
- Указатели и информация при символьном обмене 11
- Запись параметра 12
- Чтение параметров 12
- Чтение элементов индексного массива 13
- Запись элемента массива с индексацией 14
- Чтение временных массивов 14
- Внутренняя организация архивов 15
- Определение структуры архива 16
- Протяжённость магистрали 17
- Чтение временного среза архива 17
Похожие устройства
- Логика СПГ 763.2 Руководство по эксплуатации
- Логика ВКГ-3Т Руководство по эксплуатации
- Логика ВКГ-2 Руководство по эксплуатации
- Логика TRZ Руководство по эксплуатации
- Логика TRZ Методика поверки
- Логика СТГ 100-250 Методика поверки
- Логика СТГ 100-250 Руководство по эксплуатации
- Логика СТГ 100-400 Методика поверки
- Логика СТГ 100-400 Руководство по эксплуатации
- Логика СТГ 100-650 Методика поверки
- Логика СТГ 100-650 Руководство по эксплуатации
- Логика СТГ 150-1000 Методика поверки
- Логика СТГ 150-1000 Руководство по эксплуатации
- Логика СТГ 150-1600 Методика поверки
- Логика СТГ 150-1600 Руководство по эксплуатации
- Логика СТГ 150-650 Методика поверки
- Логика СТГ 150-650 Руководство по эксплуатации
- Логика СТГ 50-100 Методика поверки
- Логика СТГ 50-100 Руководство по эксплуатации
- Логика СТГ 80-160 Методика поверки