реклама на сайте
подробности

 
 
> AVRStudio симулятор +ATtiny13 +WDT, симуляция в режиме прерываний
ksv198
сообщение Jan 24 2006, 13:01
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 177
Регистрация: 25-08-05
Из: Ставрополь
Пользователь №: 7 964



Вопрос, собственно, вот в чем: при симуляции тини13 в AVRStudio симуляторе режим сброса по WDT работает нормально, сбрасывает. А вот режим прерывания не пойму - то ли не симулируется, то ли я не правильно инициализирую WDT. Вот собственно код:
cli
wdr
in temp,MCUSR
andi temp, (0xff & (0<<WDRF)) ;должен быть сброшен до WDE
out MCUSR,temp
ldi temp,(1<<WDCE) | (1<<WDE) ;Start timed sequence
out WDTCR,temp
ldi temp, (0<<WDE) | (1<<WDTIE) ;конфигурация в режим прерываний с минимальным периодом переполнения
out WDTCR,temp

В таком виде при симуляции генерации прерывания не присходит, флаг WDTIF не устанавливается даже по прошествии 20 секунд (хотя должен через 16 мс установиться). Если ручками во время симуляции установить этот флаг, то переход на вектор прерывания WDT происходит.
А в таком сброс от WDT нормально симулируется:
cli
wdr
in temp,MCUSR
andi temp, (0xff & (0<<WDRF)) ;должен быть сброшен до WDE
out MCUSR,temp
ldi temp,(1<<WDCE) | (1<<WDE) ;Start timed sequence
out WDTCR,temp
ldi temp, (1<<WDE) | (0<<WDTIE) ;конфигурация в режим сброса с минимальным периодом переполнения
out WDTCR,temp

Подскажите, может быть неправильно конфигурю WDT?
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 10:17
Рейтинг@Mail.ru


Страница сгенерированна за 0.01346 секунд с 7
ELECTRONIX ©2004-2016