51单片机:中断实现按键按一下数码管从00加到99循环(C语言)
51单片机:中断实现按键按一下数码管从00加到99循环(C语言)
题目要求:
在51单片机上通过C语言编写代码,使用中断,按键按一下数码管上面的数字从00开始加1,实现00——99的循环
准备工作:
- keil建立工程
- proteus仿真验证
代码如下:
/*
*功能:用中断实现开关每按一次,数码管数字加一,
*实现00-99的循环
*/
#include<reg52.h>
sbit SEG1 = P1^0; //定义显示十位数码管
sbit SEG2 = P2^0; //定义显示个位数码管
sbit key = P3^2; //定义按键
int sum = 0;
int i,j;
unsigned char code DSY_CODE[] = {0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90}; //共阳极数码管void main()
{IE = 0x81; //使用外部中断0IT0 = 1;while(1);
}void EX0_INT(void) interrupt 0
{sum++;i = sum/10; //十位数字j = sum%10; //个位数字if(sum == 100){sum = 0;}P1 = DSY_CODE[i];//数码管显示十位数字P2 = DSY_CODE[j];//数码管显示个位数字
}
(写的不是很规范,仅供参考)
仿真结果:
51单片机:中断实现按键按一下数码管从00加到99循环(C语言)相关推荐
- 51单片机中断--一个按键控制一个led的亮与灭
#include "reg52.h" typedef unsigned int u16; typedef unsigned char u8; sbit LED1=P2^0; sbi ...
- 51单片机:利用外部中断实现按键按一下数码管数字加1直到加到99,另一个按键实现清零
51单片机:利用外部中断实现按键按一下数码管数字加1直到加到99,另一个按键实现清零 题目要求: 利用外部中断实现按键按一下数码管数字加1,实现00-99的循环,另一个按键实现清零,不管数码管数字是多 ...
- 51单片机:独立按键控制数码管计数
//按键动作的前沿和后沿会都有大约10ms的抖动,人在按下按键到松开至少需要50ms以上(待考证).此代码实现的功能为给按键计数,并给按键消抖 //欢迎邮箱交流:bglei@foxmail.com 作 ...
- 51单片机 玩转按键加减切换+数码管+Proteus仿真
51单片机 玩转按键加减切换+数码管+Proteus仿真 实例代码 /* 实验说明:实验接线:1,动态数码管模块-->单片机管脚2,独立按键模块-->单片机管脚 K1-->P10K2 ...
- c语言编写51单片机中断程序,执行过程是怎样的?
Q:c语言编写51单片机中断程序,执行过程是怎样的? 例如程序: #include<reg52.h> void main(void) { EA=1; //开放总中断 ...
- 用51单片机中断控制LED灯亮灭
用51单片机中断控制LED灯亮灭 #include<reg51.h>//头文件 sbit LED=P2^0;//位定义LED灯 sbit k3=P3^2;//位定义按键 void dela ...
- c语言T1中断程序编写步骤,用51单片机中断编写的4x4键盘程序
当前位置:单片机教程网 >> MCU设计实例 >> 浏览文章 用51单片机中断编写的4x4键盘程序 作者:未知 来源:山涧一溪流 点击数:- 更新时间:2014年06 ...
- 51单片机中断与计时器
文章目录 1.配置下图中各寄存器 1. 定时器/计数器控制寄存器TCON 2.定时器.计数器模式控制寄存器TMOD 3.TH0及TL0 2.中断设置 二.中断程序 51单片机中断与计时器 # 一.定时 ...
- 51单片机中断interrupt……using……
51单片机中断细节的一些问题. interrupt0:外部中断0 interrupt1:定时器中断0 interrupt2:外部中断 interrupt3:定时器中断1 interrupt4:串口 u ...
最新文章
- 物联网电子标签助力无人便利店
- mysql peferences_MySQL初次实践
- (C#) 调用执行批处理文件
- 7.1 pdo 宝塔面板php_CentOS 7.6下宝塔面板 PHP7.2安装sqlsrv扩展
- 最近很火的百度MIP之 zblog改造
- 【jzoj】2018.2.3NOIP普及组——D组模拟赛
- android super this区别
- 使用STS临时访问凭证访问OSS
- 叩丁狼java培训:LinkedList的原理介绍
- vue随笔之二类型判断一
- python opencv 截取矩形区域_python+OpenCV 鼠标交互图片切割矩形区域
- 高铁、地铁这些轨道列车的动力来源是什么?
- 程序员必看!掌门一对一java开发
- 【微机原理】8088/8086CPU引脚
- iis服务器部署项目,IIS环境下部署项目的详细教程
- nas安装emby_Emby+KODI--完美的NAS多媒体方案
- C语言和R语言变量命名规则的比较
- 富文本编辑器粘贴复制Word
- 全局钩子+正则表达式=后台自动获取扫描枪数据
- 松松软文:媒介编辑管理系统上线
热门文章
- 智能家居APP开发模板介绍
- HTTP-请求报文与应答报文
- Redhat Linux红帽安装Java,以jdk1.8.0_171-linux-x64.zip为例
- Matlab编程:如何将不同类型的数据写入Excel表格
- 参加会议(面向对象)
- 2022年中南大学考研计算机复试分数线多久出来?
- Ubuntu server 14.04 双网卡上网设置
- NPC中点箝位三电平 SVPWM控制 T型三电平 羊角波调制
- bzoj1189 [HNOI2007]紧急疏散evacuate(二分答案+bfs+最大流判是否满流)
- 【ChatPDF】让 ChatGPT 帮你读 PDF 文档