Приветствую вас!
Есть схема фм модуля на 433мгц, (RWA-371-6), где в качестве кодера-декодера применяется LM567. В этой схеме вопросы кодирования/декодирования решается схематически, (подбором C/R), а у меня возникла необходимость решить данную задачу программно. Собрать кодер, т.е. генератор прямоугольных импульсов на аттини 13 не проблема, а вот при обдумывании программного решения декодера, по незнанию, возникли проблемы, по решению которых надеюсь на ваши советы!
Общая схема такая; 1)генерирую на пине "1" соответствующую частоты генератора частоту.
2) подключаю принятый от генератора сигнал на пин "0".
3) if пин "1"==пин"0", пин"2"=1;
Вроде логично, но!!! Декодер должен выдавать логическую 1или 0, на пин "2" в том случае, если частота принятого сигнала совпадает с генерированным кодером, во избежании случайного срабатывания от помех, однако по моей схеме, первое же совпадение на пинах"0"и"1" логического 0или1, вызовет ложную оценку. Т.к. и при помехе возможны совпадения единичных амплитуд колебаний, ложные срабатывания гарантированы. Следовательно для исключения такой ошибки нужно анализировать временные промежутки состояний на пинах "0"и"1". КАК ЭТО СДЕЛАТЬ? Какими командами пользоваться, потянет ли на это аттини13, может полностью не правильный ход мысли, Подскажите! Благодарю, Юрий.
P.S. Для сторонних интересующихся поясню, в данной схеме кодер-декодер используется в качестве анализатора свой/чужой.
Раздел: МК для начинающих
Есть схема фм модуля на 433мгц, (RWA-371-6), где в качестве кодера-декодера применяется LM567. В этой схеме вопросы кодирования/декодирования решается схематически, (подбором C/R), а у меня возникла необходимость решить данную задачу программно. Собрать кодер, т.е. генератор прямоугольных импульсов на аттини 13 не проблема, а вот при обдумывании программного решения декодера, по незнанию, возникли проблемы, по решению которых надеюсь на ваши советы!
Общая схема такая; 1)генерирую на пине "1" соответствующую частоты генератора частоту.
2) подключаю принятый от генератора сигнал на пин "0".
3) if пин "1"==пин"0", пин"2"=1;
Вроде логично, но!!! Декодер должен выдавать логическую 1или 0, на пин "2" в том случае, если частота принятого сигнала совпадает с генерированным кодером, во избежании случайного срабатывания от помех, однако по моей схеме, первое же совпадение на пинах"0"и"1" логического 0или1, вызовет ложную оценку. Т.к. и при помехе возможны совпадения единичных амплитуд колебаний, ложные срабатывания гарантированы. Следовательно для исключения такой ошибки нужно анализировать временные промежутки состояний на пинах "0"и"1". КАК ЭТО СДЕЛАТЬ? Какими командами пользоваться, потянет ли на это аттини13, может полностью не правильный ход мысли, Подскажите! Благодарю, Юрий.
P.S. Для сторонних интересующихся поясню, в данной схеме кодер-декодер используется в качестве анализатора свой/чужой.
Раздел: МК для начинающих