请教外部中断问题
为什么一启动,P0.4亮,其他灭??
- /*
- 中断 2012-8-17
- 线路:
- P0.0、P0.4、P0.7各接一led
- P3.2、P3.3各接一按钮
- 要求:
- 初始状态,P0.0 led亮
- 当P3.2按钮按下时,中断,让P0.4 led 亮延时,然后灭,P0.0 led继续亮;
- 当P3.3按钮按下时,中断,让P0.7 led 亮延时,然后灭,P0.0 led继续亮
- */
- #include
- #define uint unsigned int
- sbit led_1 = P0^0;
- sbit led_2 = P0^4;
- sbit led_3 = P0^7;
- void ys(uint ms){//延时
- uint i;
- while(ms--){
- for(i=0;i<120;i++);
- }
- }
- void zd_init(){//中断初始化
- EX0 = 1;//打开外部中断0、1
- EX1 = 1;
- IT0 = 1;//下降沿触发中断0、1
- IT1 = 1;
- IP = 0x05;//外部中断0、1的优先级为高
- EA = 1;//打开全局中断
- }
- void zd_0(void) interrupt 0{//外部中断0
- led_2 = 0;
- ys(250);
- }
- void zd_1(void) interrupt 2{//外部中断1
- led_3 = 0;
- ys(250);
- }
- void mian(void){
- zd_init();//定时器初始化
- while(1){
- P0 = 0xff;
- };
- }
复制代码
此帖出自
小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一周热门 更多>