Администрация форума не несёт ответственности за достоверность информации и оставляет за собой право редактировать или в особых случаях даже удалять посты без предупреждения. Спасибо за понимание.

Программирование ATMEL в BASCOM.

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Программирование ATMEL в BASCOM. » Таймеры, ШИМ и все про них » Настройка преріваний таймера по переполнению и сравнению


Настройка преріваний таймера по переполнению и сравнению

Сообщений 1 страница 3 из 3

1

В Меге48 такие настройки:

Код:
'-----Настройка таймера 0----- 
Config Timer0 = Timer , Prescale = 64 , Clear Timer = 0     ' конфигурируем таймер индикации
Enable Interrupts                                           ' разрешаем прерывания
Enable Oc0a                                                 ' по СОВПАДЕНИЮ
Enable Ovf0                                                 ' и по ПЕРЕПОЛНЕНИЮ
On Oc0a Dimmer                                              ' прерывание регулировки яркости индикатора
On Ovf0 Refresh                                             ' метка на прерывание индикации

В Меге16 так не компилируется...

Код:
'-----Настройка таймера 0----- 
Config Timer0 = Timer , Prescale = 64 , Clear Timer = 0     ' конфигурируем таймер индикации
Enable Interrupts                                           ' разрешаем прерывания
Enable OCIE0                                              ' по СОВПАДЕНИЮ
Enable TOIE0                                                  ' и по ПЕРЕПОЛНЕНИЮ
On OCIE0 Dimmer                                              ' прерывание регулировки яркости индикатора
On TOIE0 Refresh                                             ' метка на прерывание индикации

Информацию брал здесь: http://microchipinf.com/articles/45/145
Что не так?

0

2

Спасибо. Ещё вопрос - после подключения таймера 0 перестал нормально работать термометр - то 0, то 64, то 85...
Может біть он использует тоже таймер 0? Попробовал перейти на таймер 2, всё равно не работает.

0

3

DS18B20. Вопрос разрешился. Разбил функцию измерения температуры на 3 части - запуск преобразования, чтение данных из двух байтов, получение удобоваримого значения. Первые две запускаю в таймере, по флагу. Через одну секунду. А считаю в основном цикле. Видно, нарушались значения регистров, когда не было такой синхронизации. 
Вообщем то много чего можно сделать, если понимать. А понимать - только время и практика.  :D Спасибо за подсказки.

0


Вы здесь » Программирование ATMEL в BASCOM. » Таймеры, ШИМ и все про них » Настройка преріваний таймера по переполнению и сравнению