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

 
 
> Калибровка Tiny13 и софтовый COM-порт на ней
sbw
сообщение Dec 18 2007, 14:53
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 39
Регистрация: 5-10-07
Из: Харьков, Украина
Пользователь №: 31 107



Стоит задача реализовать софтово COM-порт (только передачу) на Тини13.
Столкнулся с тем, что не смотря на автозагрузку заводского калибровочного байта, некоторые процессоры выдают такую частоту в ком-порт, какую компьютер не принимает. То есть с одного прошитого процессора данные в терминалке на экран выводятся, а с другого - нет, или не все, или с мусором.
По даташиту точность заводской калибровки - порядка 10%, видимо этого недостаточно.
В аппнотах описана процедура калибровки с подачей внешней частоты 32кгц, но не понимаю, как это применить к авреалу.
Посоветуйте что-нибудь.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
defunct
сообщение Dec 19 2007, 11:13
Сообщение #2


кекс
******

Группа: Свой
Сообщений: 3 825
Регистрация: 17-12-05
Из: Киев
Пользователь №: 12 326



Цитата(sbw @ Dec 18 2007, 17:53) *
Посоветуйте что-нибудь.

Подайте на любой вход опорную частоту. Пусть это будет 1 Khz.
заведите таймер на отсчет одной секунды c коеф. деления - 9.6M.
Если ипульсов за внутреннюю "секунду" насчитается больше тысячи - то частота ниже 9.6Mhz делаем OSCCAL += 1, и повторяем опыт.. Если импульсов насчитается меньше 1000, то частота соответвенно выше чем 9.6Mhz - делаем OSCCAL -= 1. Когда застрянете между двумя значениями OSCCAL'a - выбирайте то которое дает меньшее отклонение по числу импульсов.

e.g:
OSCCAL 129 - 996
OSCCAL 128 - 1016

выбираем 129, т.к. отклонение составляет (1000 - 996) * 100% / 1000 = 0.4%
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 31st July 2025 - 23:43
Рейтинг@Mail.ru


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