Сдрасте!
Я обычну пишу прошивки в АВРСтудио И всегда для установки таймер пользуюсь генератором начального кода AvrWiz. Но вот почему то AvrWiz не захотел высталять таймеры для at90s2313 и я выбрал в нём тини2313, частоту 1МГц, и установил интевал таймера1 в 1 секунду. Получился такой код:
Код:
|
#include ‹avr/io.h›
#include ‹avr/interrupt.h›
// the values are calculated with AvrWiz for ATtiny2313 @ 1 mhz
// Timer1 settings: 1000000 ticks (= 1 sec)
// Timer1 Overflow
ISR (SIG_OVERFLOW0)
{
PORTB++;
// reinit counter
TCNT1H = 194;
TCNT1L = 247;
}
int main(void)
{
cli();
DDRB = 0xFF; PORTB = 1;
// Timer1 settings: ~ 1000000 ticks (1 sec)
TCCR1B = (1‹‹CS11) | (1‹‹CS10); // prescaler = 64
// init counter
TCNT1H = 194;
TCNT1L = 247;
TIMSK = (1‹‹TOIE1); // Timer1 Overflow Interrupt Enable
sei();
} |
Всё вроде ок, но таймер почему то не запускаеться.
Я никогда ранее не использовал этот проц, он ко мне попал совершенно случайно и на халяву.
Поэтому если кто нить знает как запускаеться таймер в этом мк, прошу написать.
Заранее СПАСИБА!!!