Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс. e-mail:jobsmp@pochta.ru |
На самом деле все нетак уж сложно и вполне решаемо, главное понять как оно работает, там есть несколько моментов (я их за давностью времени перезабыл но на всидку):
1. работает в основном с потоком а не блоками (определяетсья с каким из ZDLE sequences передаеться этот блок, это отлчие от X/Y модемов и дает неплохую прибавку в скорости, управление так же по идее может подмешиваться в поток если я правильно вспоминаю).
2. используеться байт страффинг для управляющих символов
3. Избыточен в полной реализации - кое чего можно и выкинуть
4. имеет несколько хм "разновидностей" как то: HEX/binary формат для передачи/приема команд (нужно и то и другое по идее), CRC16/CRC32(достаточно 1го но на плохих линиях не помешает и второй)
ЗЫ самое важное в этом деле - это разрисовать все ситуации которые могут возникнуть при приеме (передатчик субъективно проще реализовываеться), и как (и куда) из них нужно выходить для того что бы не было зацикливания приемника в какой нибудь ветке, в общем чем проще тем лучше ;)- вот этого место как раз плохо расписано у фосберга ;(
ЗЫ я делал только приемник и пользовал его в качестве бутлоадера в 128 меге