ATMega16单片机外部中断的使用
//Crystal:7.3728MHz,功能:学习外部中断0的程序
#include
#include
#defineLED_COMPORTA^=(1
PORTA=0x40;
DDRA=0x40;
PORTB=0x00;
DDRB=0x00;
PORTC=0x00;//m103outputonly
DDRC=0x00;
PORTD=0x04;
DDRD=0x00;
}
#pragmainterrupt_handlerint0_isr:2
voidint0_isr(void)
{
LED_COM;
}
//callthisroutinetoinitializeallperipherals
voidinit_devICes(void)
{
//stoperrantinterruptsuntilsetup
CLI();//dISAbleallinterrupts
port_init();
MCUCR=0x00;
GICR=0x40;
TIMSK=0x00;//timerinterruptsources
SEI();//re-enableinterrupts
//allperipheralsarenowinitialized
}
voidmain()
{
init_devices();
while(1)
{
;
}
}
【ATMega16单片机外部中断的使用】
推荐阅读
- 51单片机汇编语言子程序调用指令RET RETI
- 单片机轻松入门之三:蜂鸣器
- 80c51单片机的中断响应过程
- 用单片机做一个计算器
- 51单片机12864打点程序
- 串行口异步通信单片机程序设计实例
- AVR单片机_学习ing—(十)、ATMEGA16的同步串行接口SPI—02
- 单片机EEPROM多字节读写操作时序
- 单片机控制洗衣机C程序设计
- 利用89C51单片机的P1口控制8个发光二极管LED编程