声明:【51单片机学习过程记录】全是我自己学习、实践所记录的过程,我只是菜鸟,所有论点和观点仅代表我个人,不能确定是这个技术的真理。我的目的是学习和有可能成为可以向别人分享的经验,因此有错误我会虚心接受,并认真改正。
1了解外部中断
从programmer's guid中可以看到上文,和外部中断相关的描述:
就是说对于外部中断,INT0和INT1必须设置为1,且根据 是电平触发 或者是 沿边触发 去设置TCON寄存器中相关的位 IT0 和 IT1。
再从TCON寄存器中和外部中断相关位看到:
IE1 外部中断1沿边标志位。 当外部中断跳变被检测后,由硬件设置,当中断被处理后也是由硬件清除。
IT1 外部中断1中断类型选择位。如果选择 下降沿触发中断,则软件设置该位为 1 ,设置为 0 则是 低电平触发。
IE0和IT0一样。
2 实现代码:
#include <reg52.h>
#define uchar unsigned char
#define uint unsigned int
sbit int0=P3^2;
sbit int1=P3^3;
sbit duan=P2^6;
sbit wei=P2^7;
uchar i,j;interflag;
uchar code note0[]={0x79,0x76,0x6,0x37,0x31,0x3f};
uchar code note1[]={