реклама на сайте
подробности

 
 
> алгоритм асинхронного приёма, Нужна помощь
Docent86
сообщение Mar 9 2010, 21:54
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 43
Регистрация: 2-03-10
Из: С.-Пб.
Пользователь №: 55 772



Добрый час.

Имеем: сигнал ТТЛ, стартовый+8+стоповый бит.
нет передачи - "1"... потом "0"-стартовый ... данные ... "1"стоповый и т.д.
Не могу засинхронизироваться для корректного приема данных. Если завтра не получится пойду ап стену биться. Частота передачи зараннее известна в пределах 3-10к, но должна соблюдаться погрешность +-10% для каждой заранее выбранной.
Не получается выделить несколько подряд одинаковых бит и стоповый(т.к. за стоповый м.б. принято и отсутствие передачи), а он нужен!
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
MrYuran
сообщение Mar 10 2010, 08:34
Сообщение #2


Беспросветный оптимист
******

Группа: Свой
Сообщений: 4 640
Регистрация: 26-12-07
Из: Н.Новгород
Пользователь №: 33 646



Цитата(Docent86 @ Mar 10 2010, 00:54) *
Не получается выделить несколько подряд одинаковых бит и стоповый(т.к. за стоповый м.б. принято и отсутствие передачи), а он нужен!

В таком случае нужно применять дополнительные методы синхронизации. 10% - это как минимум целый бит, а если ещё и +/- ...
Например, применить 3b4b (естественно, немного потеряем). Либо синхронизироваться по специальной синхропоследовательности (например, преамбула 0x55 или 0xAA)
----
Помните "тельняшку" при загрузке ZX-Spectrum с кассеты? Там тоже частота вроде как известна, но немного туда-сюда плавает


--------------------
Программирование делится на системное и бессистемное. ©Моё :)
— а для кого-то БГ — это Bill Gilbert =)
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 14th August 2025 - 00:49
Рейтинг@Mail.ru


Страница сгенерированна за 0.01365 секунд с 7
ELECTRONIX ©2004-2016