GY-7
-
- Я в самом деле мало работал с Модбасом, но это мало что меняет. "И если у вас помеха генерирует символ ":" то
..." то может программисту стоит подумать о том, чтобы сбросить
счетчик байтов после приема очередного, правильного символа ":" в
начале пакета ? Вот с rtu да, действительно не просто. Но даже там
есть возможности извратиться - например, складывать все принятые
байты в циклический буфер заведомо большего размера и, скользя по
нему окном длиной VLLV(116 знак., Сегодня, 10:03)
- Длина пакета в модбасе заранее не известна, поэтому надо перебирать все варианты длины пакета (от 6 до 255 байт, вроде бы), и делать это по случаю приема каждого байта. Так возникает потребность в сотнях МГц тактовой ядра в ситуации, когда мог бы справиться чип с долями МГц тактовой. - AlexBi(Сегодня, 11:01)
- Я еще вам наброшу. В Модбас ASCCII используется более простая 8-битная КС. Но даже CRC16 при плохой "физике" дает пропуски. Поэтому "лечить" плохой Layer1 (RS 485) Layer-ом7 (Модбас) это опасный путь - Anvar(Сегодня, 10:17)
- Я в самом деле мало работал с Модбасом, но это мало что меняет. "И если у вас помеха генерирует символ ":" то
..." то может программисту стоит подумать о том, чтобы сбросить
счетчик байтов после приема очередного, правильного символа ":" в
начале пакета ? Вот с rtu да, действительно не просто. Но даже там
есть возможности извратиться - например, складывать все принятые
байты в циклический буфер заведомо большего размера и, скользя по
нему окном длиной VLLV(116 знак., Сегодня, 10:03)