c51外部中断

本文详细介绍了如何使用C51语言在单片机中实现外部中断0和外部中断1的电平触发及边沿触发,通过中断接口与独立按键配合,控制P1口LED灯的状态变化,同时提供了去抖动处理的示例代码。
摘要由CSDN通过智能技术生成
/*-----------------------------------------------
  名称:外部中断0电平触发
  论坛:www.doflye.net
  编写:shifang
  日期:2009.5
  修改:无
  内容:通过中断接口P3.2连接的独立按键测试,按一次P1口的LED灯反向,
        这里使用电平触发,所以一直按键不松开和一次按键效果不相同,按下会看到灯全部亮
		说明中断一直在作用,用示波器看则是高频方波
------------------------------------------------*/
#include<reg52.h> //包含头文件,一般情况不需要改动,头文件包含特殊功能寄存器的定义
/*------------------------------------------------
                    主程序
------------------------------------------------*/
main()
{
  P1=0x55;       //P1口初始值
  EA=1;          //全局中断开
  EX0=1;         //外部中断0开
  IT0=0;         //电平触发
  while(1)
  {
                 //在此添加其他程序
  }
}
/*------------------------------------------------
                 外部中断程序
------------------------------------------------*/
void ISR_Key(void) interrupt 0 using 1
{
 P1=~P1;     //进入中断程序执行程序,
//此时可以通过 EA=0指令暂时关掉中断    
}
<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值