Решил поделиться наработкой по Манчестерскому кодированию передачи данных. К плюсам такого кодирования можно отнести передачу данных по одному проводу с самосинхронизацией. Манчестерское кодирование использует в качестве логической 1 перепад с низкого уровня сигнала на высокий, а 0 - наоборот. На рисунке показана данная передача. Передача битов осуществляться через заданный интервал времени T. Для определения этого периода и синхронизации, пакет данных начинается с не менее 2-ух логических 1. Данная кодировка сигнала применяется в картах Proximity Em-Marine 125 кГц. Эти карты передают 64 бита, в которых заключены 5 байтов идентификационного номера с проверкой CRC по столбцам и строкам, а также 9 начальным битам и стоповым 0. Ниже показана последовательность.
Проверка CRC позволяет избежать ложного принятия данных, поскольку если во время приема данных перепутать (сместить) хотя бы один переход, все последующие биты превратятся в мусор. Алгоритм декодирования манчестеского кода я применил в бюджетных китайских радиопередатчиках на 433 МГц.
Изначально пробовал использовать UART, но практика показала, что часть посылок пропадала и на входе приемника оказывалось много ошибок.
Решил поделиться наработкой по Манчестерскому кодированию передачи данных. К плюсам такого кодирования можно отнести передачу данных по [b]одному проводу с самосинхронизацией[/b]. Манчестерское кодирование использует в качестве логической 1 перепад с низкого уровня сигнала на высокий, а 0 - наоборот. На рисунке показана данная передача.[url=http://pixs.ru/showimage/mandiagram_9295534_20785637.png][img]http://i10.pixs.ru/storage/6/3/7/mandiagram_9295534_20785637.png[/img][/url] Передача битов осуществляться через заданный интервал времени T. Для определения этого периода и синхронизации, пакет данных начинается с не менее 2-ух логических 1. Данная кодировка сигнала применяется в картах Proximity Em-Marine 125 кГц. Эти карты передают 64 бита, в которых заключены 5 байтов идентификационного номера с проверкой CRC по столбцам и строкам, а также 9 начальным битам и стоповым 0. Ниже показана последовательность. [url=http://www.rlocman.ru/shem/schematics.html?di=148455][img]http://www.rlocman.ru/i/Image/2013/05/31/RFID_tag_64bits_rus.jpg[/img][/url] Проверка CRC позволяет избежать ложного принятия данных, поскольку если во время приема данных перепутать (сместить) хотя бы один переход, все последующие биты превратятся в мусор. Алгоритм декодирования манчестеского кода я применил в бюджетных китайских радиопередатчиках на 433 МГц. [img]http://forum.na-svyazi.ru/uploads/201406/post-41521-1403803602-8415.jpg[/img] Изначально пробовал использовать UART, но практика показала, что часть посылок пропадала и на входе приемника оказывалось много ошибок.
|