Делаю длинную задержку из двух таймеров Attiny2313 по рекомендации AVR133. Моделирую в Proteus 7.7, переключаются порты PB.1 и PB.2, задержка для теста 10,8 сек. Так вот первое переключение происходит сразу после запуска, второе через 10,8 сек., как и задумано, а вот третье переключение происходит через 1,78 сек., потом все идет по плану, через 10,8. Откуда берется 1,78 сек.? Заранее спасибо.
start: ldi R16, RAMEND
out SPL, R16
ldi r17, 0b00000110 ; Register init
ldi r16, 0b11111111 ; Program OC1A and PORTB as an output
out DDRB, r16
ldi r16, $40 ; Program TCCR1A to toggle
out TCCR1A, r16 ; OC1A on each compare match
ldi r16, $6D ; Program the output compare
out OCR1AH, r16 ; register for a division
ldi r16, $DD ; ratio of 28125
out OCR1AL, r16
ldi r16, $20 ; Configure sleep mode
out MCUCR, r16
ldi r16, $02 ; Enable T/C0 interrupt
out TIMSK, r16
sei
; Infinite loop ------------------------------------------------
loop: rcall main ; Call the main routine
ldi r16, $FA ; Reload counter 0 for a division
out TCNT0, r16 ; ratio of 6
ldi r16, $06 ; Start counter 0 for
out TCCR0B, r16 ; external pin T0 source
ldi r16, $00 ; Reset timer 1 value
out TCNT1H, r16
ldi r16, $00
out TCNT1L, r16
ldi R16, $0C ; Start timer 1 for a prescale
out TCCR1B, r16 ; ratio of 256
sleep ; Wait for delay
ldi r16, $00 ; Stop timer 1
out TCCR1B, r16
ldi r16, $00 ; Stop timer 0
out TCCR0B, r16
rjmp loop
main: in r16, PORTB
eor r16, r17
out PORTB, r16
ret
Помогите с таймерами 2313
Помогите с таймерами 2313
Последний раз редактировалось timo13 Ср фев 16, 2011 16:46:30, всего редактировалось 3 раза.
- Реклама
- shurikss123
- Грызет канифоль
- Сообщения: 271
- Зарегистрирован: Пн окт 25, 2010 20:47:04
- Откуда: Казахстан, Астана
Re: Помогите с таймерами 2313
пробывал отрубить sleepmode?
Re: Помогите с таймерами 2313
если отключить нарушится логика программыshurikss123 писал(а):пробывал отрубить sleepmode?
- ChipKiller
- Сверлит текстолит когтями
- Сообщения: 1163
- Зарегистрирован: Ср янв 05, 2011 16:25:15
Re: Помогите с таймерами 2313
... ???timo13 писал(а):второе через 10,8 сек., как и задумано, а вот второе переключение происходит через 1,78 сек.
Re: Помогите с таймерами 2313
очепятка, исправилChipKiller писал(а):... ???timo13 писал(а):второе через 10,8 сек., как и задумано, а вот второе переключение происходит через 1,78 сек.
- Реклама


