roboforum.ru

Технический форум по робототехнике.

Как правильно сгенерировать частоту ?

Раздел создан специально для людей которым интересна робототехника, но в силу разных причин они не знают с чего начать.
Задавайте ваши вопросы, какими бы простыми они не казались, постоянные посетители форума постараются ответить на них по мере своих сил.
Робот своими руками. Самодельный робот.

Как правильно сгенерировать частоту ?

Сообщение Grover » 25 фев 2008, 19:48

Я сейсат занимаюсь изучением таймеров в ATmega8.
Неодходимо, что бы прерывание происходило точно 1 раз в секунду.
Конфигурирую таумер:
TCCR1B = _BV(CS12) | _BV(WGM12); // Делитель 8 и Режим сравнения.
Записываю расчетное сравниваемое значение:
OCR1A=31250; // 8000000/256

Ну и включаем прерывания:
TIMSK |= _BV (OCIE1A);
sei ();

Таким образом теоретически прерывание должно вызываться примерно раз в секунду. Но оно вызывается один раз в 8 секунд (примерно).

Я попробывал поменять кварц на 16 МГц без изменений в программе - думал, что процесс ускорится в два раза - а не фига - как было, так и осталось!!!

Может не корректно работает кварц, или МК им не пользуется?
Мои странички в интернете: http://groversuper.ucoz.ru
Аватара пользователя
Grover
 
Сообщения: 78
Зарегистрирован: 28 янв 2008, 09:27
Откуда: Россия

Re: Как правильно сгенерировать частоту ?

Сообщение Duhas » 25 фев 2008, 22:56

смотри как прошиты фузы и как они должны быть прошиты для внешнего кварца ... последнее в даташите ..
«Как сердцу выразить себя? … Мысль изреченная есть ложь!»
В этом мире меня подводит доброта и порядочность...
"двое смотрят в лужу, один видит лужу, другой отраженные в ней звезды"
Аватара пользователя
Duhas
 
Сообщения: 6338
Зарегистрирован: 15 сен 2007, 13:03
Откуда: Красноярск
прог. языки: ASM(МК), C(PC)
ФИО: Гагарский Андрей Александрович

Re: Как правильно сгенерировать частоту ?

Сообщение Grover » 26 фев 2008, 09:20

понял.
Тогда такой вопрос: WinAVR фьюзы не прошивает??? Я почему-то думал, что она на автомате все выставляет, иначе, зачем ей указывать частоту кварца???
Мои странички в интернете: http://groversuper.ucoz.ru
Аватара пользователя
Grover
 
Сообщения: 78
Зарегистрирован: 28 янв 2008, 09:27
Откуда: Россия

Re: Как правильно сгенерировать частоту ?

Сообщение Vooon » 26 фев 2008, 12:10

хе, а что же нет процедур которым нужно знать частоту тактирования?
fuse всегда нужно самому прошивать, и вобще следить что он там делает.

да и откуда ему знать хочеш ты внешний кварц, керамику или RC?
Linux user | Firefox user
Аватара пользователя
Vooon
Site Admin
 
Сообщения: 3339
Зарегистрирован: 09 фев 2006, 15:36
Откуда: Москва
Skype: vooon341
прог. языки: Python, C, Bash, JavaScript, C++, PHP
ФИО: Владимир Ермаков

Re: Как правильно сгенерировать частоту ?

Сообщение Grover » 26 фев 2008, 21:27

понял.

послесловие: запарол ATmega8 - запутался в галочках и ноликах - пипец :(
Мои странички в интернете: http://groversuper.ucoz.ru
Аватара пользователя
Grover
 
Сообщения: 78
Зарегистрирован: 28 янв 2008, 09:27
Откуда: Россия


Вернуться в Новичкам или основы основ роботостроения.

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 17