При смене таймера с 2 на 0, 1 таймер перестает работать кор

Здесь принимаются все самые невообразимые вопросы... Главное - не стесняйтесь. Поверьте, у нас поначалу вопросы были еще глупее :)
Ответить
Грызет канифоль
Сообщения: 269
Зарегистрирован: Чт мар 11, 2010 17:45:37
Откуда: г.фрязино

Сообщение mastech »

Понадобилось изменить чужой код (Atmega16), заменить второй таймер на нулевой, чтоб на втором использовать внешнее прерывание (на нулевом ножка занята). Обнаружилась проблема если перейти на нулевой таймер со второго при этом второй таймер выключен полностью для проверки корректной работы нулевого, начинает некорректно работать первый таймер. На первом таймере «висят» светодиоды, они переодически мигают в зависимости от режима работы устройства, при нулевом таймере когда один из диодов включен, он непросто светится, а мерцает с частотой примерно 70герц.
Настройка таймеров 2 и 1, при замене на 0 второй полностью выключается обработчик так же меняется на 0:
1таймер:
SFIOR=SFIOR|0x01;
TCCR1A=0x03;
TCCR1B=0x19;
TCNT1H=0x00;
TCNT1L=0x00;

2таймер, 0 настраивается как 2:
TIMSK=0x80;
TCCR2=0x0B;
OCR2=120;
TCNT2=0xFF;
С чем это может быть связанно?
Последний раз редактировалось mastech Пн дек 11, 2023 12:29:27, всего редактировалось 1 раз.
Реклама
Друг Кота
Аватара пользователя
Сообщения: 15705
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

С особенностями работы той программы, которую Вы пытаетесь взломать.
8)
Реклама
Друг Кота
Аватара пользователя
Сообщения: 5827
Зарегистрирован: Ср ноя 11, 2009 17:19:30
Откуда: Воронеж

Сообщение >TEHb< »

Так таймер0 восьмибитный небось.
Усложнять просто. Упрощать сложно.
Контактная информация:
Грызет канифоль
Сообщения: 269
Зарегистрирован: Чт мар 11, 2010 17:45:37
Откуда: г.фрязино

Сообщение mastech »

[uquote="BOB51",url="/forum/viewtopic.php?p=4516103#p4516103"]С особенностями работы той программы, которую Вы пытаетесь взломать.
8)[/uquote]
Взломать это громко сказано)
Непонятно как второй и нулевой таймеры связаны с первым, в исходнике первый и второй работают сами по себе и никак не связаны.

Добавлено after 4 minutes 36 seconds:
[uquote=">TEHb<",url="/forum/viewtopic.php?p=4516111#p4516111"]Так таймер0 восьмибитный небось.[/uquote]
Забыл уточнить микроконтроллер Atmega16. Нулевой и второй таймеры там 8ми битные, они одинаковые (вроде как).
Реклама
Эиком - электронные компоненты и радиодетали
Друг Кота
Аватара пользователя
Сообщения: 15705
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Сообщение BOB51 »

Таймеры могут быть привязаны к другим функциям программы (не всегда явно).
Да и обвязка у них отличается по возможностям.
Так что сначала изучайте особенности их (таймеров) применения в конкретной программе, прежде чем что либо "модернизировать".
8)
Реклама
Грызет канифоль
Сообщения: 269
Зарегистрирован: Чт мар 11, 2010 17:45:37
Откуда: г.фрязино

Сообщение mastech »

[uquote="BOB51",url="/forum/viewtopic.php?p=4516284#p4516284"]Таймеры могут быть привязаны к другим функциям программы (не всегда явно).
Да и обвязка у них отличается по возможностям.
Так что сначала изучайте особенности их (таймеров) применения в конкретной программе, прежде чем что либо "модернизировать".
8)[/uquote]
Вы правы. Предделители у них разные (в обработчике счетчик как раз для интервалов мигания). Спасибо.
Реклама
Ответить

Вернуться в «Теория»