誰かが私の外部割り込み0が機能しない理由を理解できますか?私はそれにATmega164PとAVR STK 500ボードを使用しています。それはピンD2に2つの機能があるからですか?外部割り込み0は機能しません
#include <asf.h>
#include <avr/interrupt.h>
#include <avr/io.h>
#define F_CPU 8000000UL
#include <util/delay.h>
ISR(INT0_vect)
{
PORTB = 1;
for(int i = 0; i < 7; i++)
{
_delay_ms(500);
PORTB << 1;
}
}
int main (void)
{
board_init();
sei();
PORTD = 0xFF;
DDRD = 0x00;
PORTB = 0x00;
DDRB = 0xFF;
while(1)
{
PORTB = PIND;
}
}
board_init()は何をしますか?あなたはセットアップ/外部割り込みを有効にしていますか? –
ISR内部で「遅延」しないでください。 – JimmyB
JimmyBの声明を強調するために、ISR内に遅延を入れないでください。 –