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

 
 
> Таймеры atmega32a
ishpanec
сообщение Dec 19 2014, 09:57
Сообщение #1





Группа: Новичок
Сообщений: 6
Регистрация: 19-12-14
Пользователь №: 84 192



Здравствуйте
Проблема возникла такая, есть у меня atmega32a китайский. постигаю таймеры. использую таймер0 (8 бит).
Логика моих мыслей такова:

если там частота 16МГц а таймер считает до 256 то каждое переполнение таймера будет происходить (1 / 16 000 000) * 256 = 16 микросекунд (0,000016).
Соответственно, что бы получить 1 секунду надо таких отрезков 62 500 (0,000016 * 62 500 = 1 сек.)
Что бы особо не мучиться с 16 битными числами я разбил на две 8 битные, т.е. 250 и 250.
Значит в прерывании по переполнению мы считаем первый счетчик, када он доходит до 250 мы увеличиваем второй и обнуляем первый.
Сразу что скажу что cksel биты не менял, они все отключены, значит частота должна быть нормальной. В коде не устанавливаю предделитель для таймера.
Внешнего кварца, как и осциллографа, не имею. замерить частоту не выходит. пробовал всю партию контроллеров (10 штук) результат один и тот же, либо у них у всех не 16 МГц, либо логика моих действий не верна.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- ishpanec   Таймеры atmega32a   Dec 19 2014, 09:57
- - zombi   Цитата(ishpanec @ Dec 19 2014, 13:57) рез...   Dec 19 2014, 14:11
- - Dust112   ishpanec, Вы раздел 8-bit Timer/Counter0 with PWM...   Dec 19 2014, 14:16
- - stells   Цитата(ishpanec @ Dec 19 2014, 12:57) есл...   Dec 19 2014, 14:26
|- - demiurg1978   У меня такой способ получить 1 мс при 8 и 16 мгц: ...   Dec 19 2014, 15:10
- - akl   С точностью до такта можно временной интервал форм...   Dec 20 2014, 09:56
- - ishpanec   отвечу всем по порядку) Цитата(zombi @ Dec 1...   Dec 21 2014, 13:54
|- - ishpanec   Цитата(ishpanec @ Dec 21 2014, 14:54) не ...   Dec 21 2014, 15:17
|- - stells   Цитата(ishpanec @ Dec 21 2014, 16:54) что...   Dec 21 2014, 16:29
|- - demiurg1978   Цитата(ishpanec @ Dec 21 2014, 19:54) с С...   Dec 22 2014, 21:53
- - zombi   получается Internal Calibrated RC Oscillator 1 MHz...   Dec 21 2014, 16:06
- - ishpanec   да, уже разобрался, всем спасибо за помощь!) п...   Dec 21 2014, 18:19
- - akl   Ваш код дает интервал 1 секунды, за счёт сравнений...   Dec 22 2014, 04:18
- - alexeyv   Зачем для этой цели использовать 8-ми разрядный сч...   Dec 22 2014, 04:39
|- - akl   Цитата(alexeyv @ Dec 22 2014, 09:39) Не п...   Dec 22 2014, 05:57
||- - RabidRabbit   Цитата(akl @ Dec 22 2014, 08:57) Проще, к...   Dec 22 2014, 07:35
||- - akl   Цитата(RabidRabbit @ Dec 22 2014, 12:35) ...   Dec 22 2014, 09:43
||- - RabidRabbit   Цитата(akl @ Dec 22 2014, 12:43) По мне, ...   Dec 23 2014, 08:47
|- - ishpanec   Цитата(alexeyv @ Dec 22 2014, 05:39) Не п...   Dec 22 2014, 12:43
- - akl   Каждое прерывание Т0, в котором дополнительно чист...   Dec 22 2014, 14:03
|- - ishpanec   Цитата(akl @ Dec 22 2014, 15:03) в которо...   Dec 22 2014, 14:47
- - akl   Да, действительно, период будет 256*30821=7890176/...   Dec 24 2014, 03:17
- - RabidRabbit   Я одного не понимаю, после первого переполнения в ...   Dec 24 2014, 11:17


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

 


RSS Текстовая версия Сейчас: 19th July 2025 - 16:42
Рейтинг@Mail.ru


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