Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс. e-mail:jobsmp@pochta.ru |
3.1 Метод передачи байта "Тетрада-в-ASCII-символ"
Передающее устройство должно преобразовать каждую тетраду исходного сообщения в ASCII cимвол, в зависимости от требуемого формата передачи байта закодированный 7-ми или 8-ми битовым кодом, добавить или не добавить к нему соответствующий бит четности, и снабдить каждый пересылаемый байт старт-битом и соответствующим количеством стоповых бит.
В задачу данного уровня входит преобразование "чистой" двоичной информации в допустимые для передачи по каналу ASCII-символы.
Выбран вариант кодирования тетрад, позволяющий нам иметь
собственное адресное пространство, которое не зависит от адресного пространства чужих приборов. Тетрады кодируются следующим образом:
0000 -> 'G' = 0x47
0001 -> 'H' = 0x48
0010 -> 'I' = 0x49
0011 -> 'J' = 0x4a
0100 -> 'K' = 0x4b
0101 -> 'L' = 0x4c
0110 -> 'M' = 0x4d
0111 -> 'N' = 0x4e
1000 -> 'O' = 0x4f
1001 -> 'P' = 0x50
1010 -> 'Q' = 0x51
1011 -> 'R' = 0x52
1100 -> 'S' = 0x53
1101 -> 'T' = 0x54
1110 -> 'U' = 0x55
1111 -> 'V' = 0x56
На приемной стороне после отбрасывания символов начала и конца кадра производится обратное преобразование ASCII байтов в тетрады с последующим "склеиванием" каждой пары тетрад в полноценный байт двоичной информации. На этом этапе избыточность можно использовать для дополнительного контроля правильности приема, поскольку все символы, не входящие в набор из 16-ти вышеперечисленных, являются ошибочными, символы с не совпавшей вычисленной и переданной четностью также являются сбойными.