Разработка, производство и продажа радиоэлектронной аппаратуры
|
Требуется программист в Зеленограде - обработка данных с датчиков; ColdFire; 40 тыс.
e-mail: jobsmp@pochta.ru
|
Таймер 1 в Tiny25 (+)
Отправлено
radist 04 мая 2009, г. 13:15
Чтото не могу понять, что происходит, да еще этот таймер не симулируется студией. Итак, по порядку:
есть тинька, тактируется от внутреннего генератора 8 МГц, подстройка частоты использована. На одну ногу тиньки приходит меандр 2 Гц (длина импульса/паузы 250 мс). Тинька должна померить длину импульса/паузы. Я отлавливаю фронты и спады. Использую прерывания по переполнению, + программно расширил таймер еще на 2 регистра. Тактирую от клоков (в регистр номер 30 записал 1). Так вот, за 250 мс таймер насчитавает до 0F 42 40, что составляет половину длины импульса/паузы. В обработчике прерывания стоит инкремент двухбайтного регистра. Проверил частоту внутреннего генератора, сгенерив меандр - точно 8 МГц. Что я сделал не правильно?
Спасибо.
Составить ответ | Вернуться на конференцию.
Ответы
- Входные импульсы отлавливаете внешним прерыванием? При расширении таймера есть засада с необработанным прерыванием переполнения по завершению интервала. Вручную обрабатывать надо. - Леонид Иванович (04.05.2009, 14:10:10 192.168.0.3,93.84.94.186, пустое)
- Ответ: Вопрос снят. Дело оказалось во мне. Я на вход подавал частоту в 2 раза выше. Посыпаю пеплом голову. - radist (04.05.2009, 13:55:48 192.168.0.57,217.114.9.154, пустое)
- Такое ощущение, что счетные клоки для кварца в 2 раза шире (+) - radist (04.05.2009, 13:45:21 192.168.0.57,217.114.9.154, 162 байт)
- а) запрет прерываний на длительное время, б) несанкционированый сброс флага переполнения, в) (+): - argus98 (04.05.2009, 13:30:50 81.22.205.230, 86 байт)