单片机控制外部中断输入

本文介绍了51单片机外部中断的基本概念及其实现方法。详细讲解了通过设置寄存器来控制中断的功能,并提供了一个具体的编程实例:每当外部中断发生时,数码管显示的数字加1,到达10后再从0开始循环。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、什么是外部中断
外部中断即通过外部电平或上下降沿触发所产生的中断
2、寄存器介绍
外部中断主要设置3个寄存器参数EA、EX、IT,这些寄存器分别属于IE和TCON;
其中
EA为总中断开关,1为打开,0为关闭;
EX为外部中断允许寄存器,1为允许,0为关闭;
IT为外部中断触发方式选择寄存器,1为边沿触发,0为电平触发;

3、程序设计

使用外部中断零设计电路,使单片机每中断一次,数码管显示加1,到10后返回0;

#include<reg52.h>
#define uchar unsigned char 
#define uint unsigned int 

uchar code smg_du[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x00};
uchar num;

void main()
{

 num = 0;
 EA=1;  //开总中断开关
 EX0=1;  //打开外部中断0开关
 IT0=1;  //触发方式设置
 
 while(1)
 {
      P1=smg_du[num];//静态显示
 }
} 

void int0 () interrupt 0
{
	num++;
	if(10 == num)
	{
		num = 0;
	}
}


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值