(八)中断的设计与应用 01 单一外部中断

1、

 

 

一 、单一外部中断应用案例

参考代码外部中断0 代码: 

 1 #include<reg52.h>
 2 #define uchar8 unsigned char 
 3 #define uint16 unsigned int
 4 
 5 /*****************************/
 6 // 函数名称: DelayMS( )
 7 // 函数功能: 延时
 8 // 入口函数: 延时毫秒
 9 // 出口函数: 无
10 /*************************                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              *******************/
11 void delay(uint16 val)
12 {
13        uint16  i,j;
14        for( i=0;i<val;i++)
15            for(j=0;j<113;j++);
16 
17 }
18 
19 void main()
20 {
21 
22    EA = 1;    // 总中断允许
23    EX0 =1;    // 允许外部中断0中断    ,也可以直接 写成     IE=0x81 好像也对了
24    IT0=0;    //  INT0外部中断为跳变沿触发,当第一个机器周期采样到INT0为低电平时,则IE1置1,
25             //便是外部中断1正向CPU申请中断,当CPU响应中断,转向中断服务程序时,该位由硬件清0
26    while(1)
27    { 
28      P0=0;  // P0 口 LED  全亮 
29    }
30 
31 }    
32 
33 void int0( )  interrupt 0 
34 {
35     uchar8  m;
36     EX0=0;     // 禁止外部中断0中断    ,感觉妈的没啥用啊,软件仿真的时候多按了几次照样多运行几次
37     for( m=0; m<3; m++)
38     {
39         P0=0x0f;
40         delay(1000);
41 
42         P0=0xf0;
43         delay(1000);
44 
45         EX0=1;   // 中断返回前,打开外部中断0中断
46 
47     }
48 
49 }

 

3、 电路图:

 

实验正确, 疑问 按两次 button  ,闪了六次,那么不是就说明  下面这句代码没啥用了嘛??? WHY ???  草,好像又有用了???

EX0=0;     // 禁止外部中断0中断    ,感觉妈的没啥用啊,软件仿真的时候多按了几次照样多运行几次

关于调试,KEil 和 Proteus 联合起来调试外部中断,但是根本就没用,不知道究竟怎样调试外部中断,进入不了外部中断函数

虚拟 port 也不行,点击不懂,tell me why ?????? 

 

转载于:https://www.cnblogs.com/shengruxiahua/p/5078510.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值