Администрация форума не несёт ответственности за достоверность информации и оставляет за собой право редактировать или в особых случаях даже удалять посты без предупреждения. Спасибо за понимание.

Программирование ATMEL в BASCOM.

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Программирование ATMEL в BASCOM. » Вопросы - ответы » Помехоустойчивые передача/прием по беспроводной линии


Помехоустойчивые передача/прием по беспроводной линии

Сообщений 1 страница 7 из 7

1

Встала задачка передавать несколько байт между двумя асинхронными МК. По радио сигналки обычно передают манчестером. Вроде не плохо, можно по идее прием бита сделать в прерывании INT0, но вот что то туплю с расчетом периода. Передавать вначале каждого байта преамбулу из нулей, на которой посчитать период? Кто нибудь может поделиться реализацией приема/передачи на обычных дешевых радиомодулях с on-off keyed модуляцией?

0

2

делал разное: от инвертированного UART со стартовым байтом (маркером) + данные + стоповый байт (600 - 4800 бод)
до самопальных протоколов навроде как в ИК-пультах бытовой аппаратуры
на коротких расстояниях и "бытовых условиях по помехам" разницы не ощутил

передавал одну команду Y раз, надо принять подряд (или за фиксированный период времени) не менее Х раз.
сбоев не было

http://www.ugolok-mastera.ru/proekt/bil … lliard.htm

http://www.ugolok-mastera.ru/proekt/billiard/IMG_4338_billiard.JPG

0

3

Александр Д. написал(а):

делал разное: от инвертированного UART со стартовым байтом (маркером) + данные + стоповый байт (600 - 4800 бод)
до самопальных протоколов навроде как в ИК-пультах бытовой аппаратуры
на коротких расстояниях и "бытовых условиях по помехам" разницы не ощутил

передавал одну команду Y раз, надо принять подряд (или за фиксированный период времени) не менее Х раз.
сбоев не было

http://www.ugolok-mastera.ru/proekt/bil … lliard.htm


У меня приемник на Tiny13а с внутренним генератором, стоит в холодной коробке на улице (кварцы в -45 не заводятся), боюсь обычный UART свалится даже не от помех, а от рассинхрона. Контроллер не поменять, он впаян, переделывать все целиком очень не хочется, тем более устройств где то с десяток.

0

4

вы неверно нам задачу поставили )
тогда советую делать самопальное, с самосинхронизацией приёма со стороны приёмника
я так делал, морозил до -22С (в холод.камере) - всё работает

например, стартовый импульс 10 ms сигнал + пауза 5ms, бит1 = 20ms+ пауза 10ms, бит0 = 10ms + пауза 20ms(условно!)

0

5

Александр Д. написал(а):

вы неверно нам задачу поставили )
тогда советую делать самопальное, с самосинхронизацией приёма со стороны приёмника
я так делал, морозил до -22С (в холод.камере) - всё работает

например, стартовый импульс 10 ms сигнал + пауза 5ms, бит1 = 20ms+ пауза 10ms, бит0 = 10ms + пауза 20ms(условно!)

Я когда то давно писал для ПК "Вектор" загрузчик с магнитофона. Там я определял период сигнала в преамбуле перед каждым блоком передавая серию нулей в манчестере. Они там выглядят как меандр. Высчитав константу задержки, по прерыванию ждал 2/3 периода и проверял что в порту, если единица, значит ноль, а если ноль, то единица. Дальше сдвиг и подсчет числа бит
http://xreferat.ru/image/38/1305973028_16.png
Работало на разных магнитофонах с довольно приличной скоростью. Наверное его и буду делать, хотя Ваш алгоритм тоже интересный, можно по идее на старте длительность вычислять!

0

6

IgorL написал(а):

Высчитав константу задержки, по прерыванию

В векторе вроде нет контроллера прерываний и они там следуют с частотой 50 Гц, если не ошибаюсь. Как удалось их задействовать?

0

7

Пётр написал(а):

В векторе вроде нет контроллера прерываний и они там следуют с частотой 50 Гц, если не ошибаюсь. Как удалось их задействовать?

Много лет прошло, мож это я под клон РАДИО86 РК писал, но прерывание там было, точно, нашел куски асмовского кода, там явно на прерывании аппаратном сидит. Печальнее, что там я в тиках системного таймера считал....

0


Вы здесь » Программирование ATMEL в BASCOM. » Вопросы - ответы » Помехоустойчивые передача/прием по беспроводной линии