ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
25 апреля
281498 Топик полностью
Лeoнид Ивaнoвич (02.11.2011 15:17, просмотров: 544) ответил koyodza на в конце пакета их воспринимать как данные. Ну а после паузы ждать прихода байта меньше F8 (большие игнорировать), следующие за ним принимать все до наступления паузы. Т.е. заполнять весь межпакетный интервал FF не могут. Байт-стаффинга тут нет,
Я тоже так сделал. Смутило про формирование паузы: "This is most easily implemented as a multiple of character times at the baud rate that is being used on the network". Вот и подумал, не передают ли FF вместо паузы для формирования интервала. Иначе каким боком пауза связана с временем передачи символа? Это цитата из "Modicon Modbus Protocol Reference Guide" 1996 года. Там лучше всего протокол описан. Хотя про 1.5t из этого описания звучит мутно: "If a silent interval of more than 1.5 character times occurs before completion of the frame, the receiving device flushes the incomplete message and assumes that the next byte will be the address field of a new message. Similarly, if a new message begins earlier than 3.5 character times following a previous message, the receiving device will consider it a continuation of the previous message. This will set an error, as the value in the final CRC field will not be valid for the combined messages." Т.е. при паузе 1.5t нужно следующий байт воспринимать как начало нового сообщения, но, по их мнению, оно обязательно будет с битой CRC :)