ArduinoからAVRへ:最大のメリット→割り込み

割り込みを使うとArduinoのloop()の呪縛から解法される。(省電力なシステムを設計できる)
以下ではExternal Interrupt INT0/INT1(PD2,PD3)を使った。
http://elec-studio.eco.coocan.jp/AVR_C-Program06.html
http://stastaka.wordpress.com/2012/03/10/avr%E5%85%A5%E9%96%803-%E3%83%94%E3%83%B3%E5%85%A5%E5%8A%9B%E3%81%A8%E5%89%B2%E3%82%8A%E8%BE%BC%E3%81%BF/

#include <avr/io.h>
#include <avr/interrupt.h>
#include <util/delay.h>

ISR(INT1_vect){
	PORTB = _BV(PORTB5);
        _delay_ms(500);
	PORTB = !_BV(PORTB5);
}
//ISR(INT0_vect){
//        cli();
//        sei();
//}

void InitINT(void){
	EICRA = 0b00001110;	//INT1-rise,INT0-fall
	EIMSK = 0b00000011;	//INT1,INT2 enable
}
int main(void){
        DDRB = 0xff;
  	InitINT();	
	sei();	
	for(;;){
	
	}
}