老实说,我无法弄清楚我在这里做错了什么。我有一个LED和一个示波器探头连接到B3端口的LED,但出于某种原因,输出是2V的平坦。
#include <avr/io.h>
#include <avr/interrupt.h>
#define LED 3
void tog(void)
{
PORTB ^= (1 << LED);
}
int main(void)
{
int i = 0;
DDRB |= (1 << LED);
TCCR0A |= (1 << WGM01);
OCR0A = 0xF9;
TIMSK0 |= (1 << OCIE0A);
TCNT0 = 0;
sei();
TCCR0B |= (1 << CS02);
while (1)
{
i++;
}
}
ISR (TIMER0_COMPA_vect)
{
tog();
}