Подскажите метод распознавания строки данных на МК
Добавлено: Вс янв 11, 2009 17:04:53
Есть строка данных из 48бит с МК NEC (передается по интерфейсу SPI, 6 пачек по 8 бит от мастера к подчиненному мк) или, соответственно 6 Байт. В них заложено режимы работы, которые нужно отображать на инф.дисплее.
вот так:
11010110 11101111 11101101 10110010 11111111 00010111
(D6 EF ED B2 FF 17)
Мне нужно подключиться своим МК (AVR мега8, например) к передающему мк NEC, и принимая поток данных, выцеплять заранее известные коды (их около 30) далее я собирался интерпретировать их на дисплей...
Так вот как мне это сделать, может кто нть подсказать какой алгоритм применяется в таких случаях?
/я пока сделал на меге8 считывание битов с шины данных по прерыванию в такт передающего мк NEC (в ПК по USART). Но принимает не чистую последовательность- есть место быть и ошибкам и ложные прерывания бывают еще перед началом основных данных (пара, тройка), но затем идет чистая последовательность нужных данных целыми строками, без ошибок- вот из этой последовательности мне нужно распознавать что сейчас активировано, какой режим. Грубо говоря, сопоставить уже имеющиеся коды с теми данными, что передаются, при совпадении с одним из них, выводить на дисплей соответствующую этому коду информацию о включенном режиме.
вот так:
11010110 11101111 11101101 10110010 11111111 00010111
(D6 EF ED B2 FF 17)
Мне нужно подключиться своим МК (AVR мега8, например) к передающему мк NEC, и принимая поток данных, выцеплять заранее известные коды (их около 30) далее я собирался интерпретировать их на дисплей...
Так вот как мне это сделать, может кто нть подсказать какой алгоритм применяется в таких случаях?
/я пока сделал на меге8 считывание битов с шины данных по прерыванию в такт передающего мк NEC (в ПК по USART). Но принимает не чистую последовательность- есть место быть и ошибкам и ложные прерывания бывают еще перед началом основных данных (пара, тройка), но затем идет чистая последовательность нужных данных целыми строками, без ошибок- вот из этой последовательности мне нужно распознавать что сейчас активировано, какой режим. Грубо говоря, сопоставить уже имеющиеся коды с теми данными, что передаются, при совпадении с одним из них, выводить на дисплей соответствующую этому коду информацию о включенном режиме.