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

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

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

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


Вы здесь » Программирование ATMEL в BASCOM. » FastAVR » Проблема с портированием. Timer1 в режиме сравнения.


Проблема с портированием. Timer1 в режиме сравнения.

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

1

В общем в BASCOM у меня таймер настроен так

Код:
Config Timer1 = Timer , Prescale = 256 , Clear Timer = 0
Enable Timer1
Compare1a = 100                                             'конфигурируем по сравнению
On Compare1A OnTimer1
Enable Compare1a

Вот как раз строка "Clear Timer = 0" позволяет не сбрасывать таймер в момент прерывания по сравнению Compare1A

А как сделать тоже самое в FA?

Код:
$Timer1=Timer, Prescale=256, Compare1A=DisConnect
Declare Interrupt Oc1A()
Enable Oc1A
Start Timer1

При таких настройках прерывание по сравнению срабатывает, но таймер очищается.
Если совсем убрать "Compare1A=DisConnect", то ничего вообще не срабатывает

0

2

Мое мнение, напрямую с регистрами работать. Знаешь, что делаешь и понятно производить отладку.
Для справочных примеров ШИМ можно средствами Bascom обойтись. Но другие режимы ШИМ быстрее сделать напрямую регистрами, чем выяснять, как сконфигурировал Bascom.

0


Вы здесь » Программирование ATMEL в BASCOM. » FastAVR » Проблема с портированием. Timer1 в режиме сравнения.