[an error occurred while processing this directive]
Бит четности при передаче по RS232 (+)
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено Misha190E 20 января 2005 г. 11:57

Добрый день,
есть Тини15, которая не поддерживает обмен по RS232. а передавать нуна - нашел программные реализации передачи и стал играться... вроде все работает на скоростяж 9600/19200 без контроля чентности (38400 идет рассинхронизация передачи, ну и фих с ним)...
почитал в инете суть этого контроля (добиваем 9-ый бит чтобы кол-во единиц в данных было четным), настроил гипертерминал и попытался передавать - нифига не хочет принимать... тестовый пример, для упрощения, был таким - передача числа от 0 до 255 с битом четности 0 всегда, с задержкой между передачами, но ни одно число не прошло (хотя должно было пройти почти половина)...
при отключении четности (и в проце и в винде) все числа проходят... Вот и задался вопросом - как бы это дело победить? Кстати настройки в винде какие-то странные, а именно выбор из списка "четность" : "Нет", "Чет", "Нечет", "Маркер(1)", "Пробел(0)"

и еще - прочитал про регистр OSCCAL что в него надо записать некую зафодскую константу чтобы он работал на частоте 1.6MHz, но где прочитать эту константу я не понимаю... пишут о неком адресе 3FF, но объясните ламеру как на C (компилятор ICCtiny) это реализовать.
Кстати как рассчитать этот OSCCAL чтобы проц работал на другой частоте типа 1 или 2MHz?

Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа

Имя (обязательно): 
Пароль: 
E-mail: 

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru