Частотомер простейший неправильно работает.

Вопросы настройки, программирования, прошивки микроконтроллеров и микросхем программируемой логики
Закрыто
Прорезались зубы
Сообщения: 208
Зарегистрирован: Вс дек 10, 2006 19:26:13

Сообщение dm211 »

Частотомер,нужен неточный,для тахометра в проге, написал в CVAVR, кварц 8 мгц, в Протеусе как положено нормально показывает,на железе совсем не то что надо, например, 50 гц(с трансформатора переменка через диод) в Протеусе 50 показывает,а на железе где то 5500.Прошивал AVRProg-ом.Вот код и программатор, что тут не то?

Код: Выделить всё

                      // ЧАСТОТОМЕР
 // считаем импульсы со входа INT1 за 0,1 сек                     

// External Interrupt 1 service routine
interrupt [EXT_INT1] void ext_int1_isr(void)
{
 gen++; if(a){chast=gen; gen=0;a=0;}  // считаем импульсы с INT1
 }

// Timer 0 overflow interrupt service routine
interrupt [TIM0_OVF] void timer0_ovf_isr(void)
{
 tik++; if(tik==3137){tik=0;a=1;err= Ftek-Fzad;}     // 0.1 сек, (8мгц/255)/10=3137
 }
Вложения
1.jpg
(43.13 КБ) 295 скачиваний
Реклама
akl
Друг Кота
Сообщения: 4470
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Сообщение akl »

dm211 писал(а):(8мгц/255)/10=3137
Почему делите на 255, а не на 256?
Реклама
Прорезались зубы
Сообщения: 208
Зарегистрирован: Вс дек 10, 2006 19:26:13

Сообщение dm211 »

akl писал(а):
dm211 писал(а):(8мгц/255)/10=3137
Почему делите на 255, а не на 256?
Но это же не меняет дела.
Прорезались зубы
Сообщения: 208
Зарегистрирован: Вс дек 10, 2006 19:26:13

Сообщение dm211 »

Ну что,никто не может сказать,почему такой глюк на железе? Только не говорите,что Протеус,он то как раз как надо по расчету показывает. А на железе что может влиять, генерация на кварце 8 мгц,я проверял,ещё что же может быть..
Реклама
Эиком - электронные компоненты и радиодетали
Модератор
Аватара пользователя
Сообщения: 4618
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля

Сообщение Аlex »

Ну что,никто не может сказать,почему такой глюк на железе?
Это Вам нужно на ТНТ звонить, приедут специалисты по чтению мыслей и всё скажут. :))
Заодно может и в телеке Вас покажут :)))
Реклама
Опытный кот
Сообщения: 772
Зарегистрирован: Вс апр 10, 2011 02:24:06
Откуда: г.Северодонецк

Сообщение eufs »

Сделайте формирователь входных сигналов, например на триггере шмидта. Все будет в порядке. А протеус надо удалить - от него все проблемы :)))
C0FFEE=‭12648430‬
Реклама
Прорезались зубы
Сообщения: 208
Зарегистрирован: Вс дек 10, 2006 19:26:13

Сообщение dm211 »

Пипец(как говорят в ТНТ), какие все здесь остроумные.
Прорезались зубы
Сообщения: 208
Зарегистрирован: Вс дек 10, 2006 19:26:13

Сообщение dm211 »

Позвонил в ТНТ экстрасенсам,они сказали,чтоб я поставил внешнее прерывание не по нижнему уровню,а по повышению. :))) И всё стало норм
akl
Друг Кота
Сообщения: 4470
Зарегистрирован: Пт мар 07, 2008 06:54:43
Откуда: Ижевск

Сообщение akl »

Экстрасенсы дали правильный, но не полный ответ. Подайте на вход 50'000Гц и поясните почему результат равен 50'192.
Прорезались зубы
Сообщения: 208
Зарегистрирован: Вс дек 10, 2006 19:26:13

Сообщение dm211 »

akl писал(а):Экстрасенсы дали правильный, но не полный ответ. Подайте на вход 50'000Гц и поясните почему результат равен 50'192.
Поэтому наверно-
akl писал(а):Почему делите на 255, а не на 256?
Но мне точность не нужна,более того мне и частоту знать не нужно,это для регулятора оборотов,сделал нужные обороты-нажал кнопку и должен держать эти обороты.
Вымогатель припоя
Аватара пользователя
Сообщения: 652
Зарегистрирован: Вс ноя 13, 2011 16:42:05
Откуда: Украина

Сообщение C@at »

dm211 писал(а):Позвонил в ТНТ экстрасенсам,они сказали,чтоб я поставил внешнее прерывание не по нижнему уровню,а по повышению. :))) И всё стало норм
Так теперь ваш частотомер работает корректно?
Опытный кот
Сообщения: 772
Зарегистрирован: Вс апр 10, 2011 02:24:06
Откуда: г.Северодонецк

Сообщение eufs »

dm211 писал(а):...сделал нужные обороты-нажал кнопку и должен держать эти обороты.
Круиз-контроль, однако, (по ТНТ слышал). Но все равно, еще ПИ регулятор понадобится. Когда в Шпротеусе его вместе с автомобильным двигателем (нагруженым) просимулируете - скажете. Я его обязательно себе установлю, чтобы ваш проект проверить.(потом удалю, похоже, что он заразный, сколько людей заболело...)
C0FFEE=‭12648430‬
Закрыто

Вернуться в «Микроконтроллеры и ПЛИС»