当前位置: 首页 > news >正文

按钮控制数码管显示(中断实现)

写一个程序,让按键S1按下后,数码管的数值加一。

#include <reg51.h>
#define uint unsigned int
#define uchar unsigned char
#define ds1 P0
#define ds2 P2
uint i;
seg1[]={0x11,0xd7,0x32,0x92,0xd4,0x98,0x18,0xd1,0x10,0x90};  
seg2[]={0x88,0xeb,0x4c,0x49,0x2b,0x19,0x18,0x8b,0x08,0x09};  void main()
{EA=1;			EX1=1;	EX0=1;		IT1=1;		IT0=1;		ds1=seg1[0];	ds2=seg2[0];	do{}while(1);	
}
void KEY1() interrupt 0 using 2
{i++;  if(i>99)i=0;ds1=seg1[i/10];	ds2=seg2[i%10];	
} 

中断方式实现时,要先打开总中断开关(EA=1)。

  • 设置 EX1 = 1 表示 允许外部中断1(INT1) 触发中断。

  • 设置 EX0 = 1 表示 允许外部中断0(INT0) 触发中断。

  • 设置 IT1 = 1 表示 INT1 为边沿触发(下降沿触发)。如果设为 0,则为 低电平触发

  • 设置 IT0 = 1 表示 INT0 为边沿触发(下降沿触发)。同样,设为 0 为低电平触发

中断的本质就是当中断口被下降沿触发后进入中断函数。

中断函数:

void KEY1() interrupt 0 using 2
{i++;  if(i>99)i=0;ds1=seg1[i/10];	ds2=seg2[i%10];	
} 

KEY1()就是函数名

`interrupt` 后面的数字是 中断号,8051 标准核只定义了 0~4,完整列表如下:

中段号向量地址中断源(传统/增强)备注
00003H外部中断 0 (INT0)标准
1000BH定时器 0 溢出 (TF0)标准
20013H外部中断 1 (INT1)标准
3001BH定时器 1 溢出 (TF1)标准
40023H串口 0 (RI/TI)标准
5002BH定时器 2 (TF2/EXF2)仅 52 系列
6~70033H~003BH保留 / 厂家扩展部分 MCU 给 SPI、I²C 等
8~310043H~00FFH厂家继续扩展如 ADC、PWM、USB、CAN…

 using后面只能写 0、1、2、3 这四个数,对应 8051 内部的 4 组工作寄存器区(每组 8 字节 R0~R7)。

  • using 0 → 第 0 区(地址 00H~07H)

  • using 1 → 第 1 区(地址 08H~0FH)

  • using 2 → 第 2 区(地址 10H~17H)

  • using 3 → 第 3 区(地址 18H~1FH)

超出 0~3 编译器直接报错。

using如何选择:

  • 主程序不动,继续用默认 区 0

  • 每写一个中断服务函数,就给它分配 一个未被占用的区号(1→2→3 轮着用)。

  • 若中断嵌套层数 ≤3,4 组足够;如果 MCU 支持更多优先级,再考虑 手工 PUSH/POP软件堆栈

http://www.dtcms.com/a/562313.html

相关文章:

  • 基于 Python 的电影知识图谱构建与可视化分析实战
  • 呢图网seo最新
  • 推荐设计网站ui设计培训项目
  • 注册网站查询官网cdr做的网站效果怎么直接用
  • 做维修广告效最好是哪个网站吗做网站怎么这么贵
  • 建设工程质量管理条例网站万网域名注册官网阿里云
  • 服务佳的广州网站建设网站建设开拓该行业的难点疑
  • 公钥与私钥:数学如何重塑数字身份认证的基石
  • 行业网站建设分析网站如何做提现功能
  • 人物设计网站企业管理软件排行
  • 做教育网站还挣钱吗哪个网站的地图可以做分析图
  • C++基础入门:从命名空间到函数重载
  • 网站建设基本情况介绍品牌vi设计方案
  • 网站开发 所有权dede制作的网站挂马
  • Pandas-数据清洗与缺失值处理
  • 做网站的大型公司北京地铁建设的网站
  • 网站开发服务计入什么科目高密建网站
  • 网站域名备案转接入手续聊城做wap网站找谁
  • 网站实现微信登录公众号5000粉丝月收入
  • 自己有主机怎么做论坛网站cnu摄影官网
  • 岳阳网站建设 熊掌号推广链接打开
  • AI决策的底层逻辑:拆解智能决策的三大核心算法体系
  • 太原网站制作建设花体字转换器
  • 网站结构怎么分析小型在线购物系统
  • 商城网站建设公司排名专门做问卷的网站
  • 网站建设 起飞站群
  • 设计素材网站飘百度h5制作软件下载
  • 青山网站建设秀山网站建设
  • Mysql中MVCC的流程
  • AOI在铁路行业检测领域中的应用