【C51单片机】数码管实现99秒倒计时
C51单片机之数码管实现99秒倒计时(结合定时器)—STC89C52单片机
代码如下:
#include <reg52.h>
typedef unsigned char u8;
typedef unsigned int u16;sbit b1 = P2^2;
sbit b2 = P2^3;
sbit b3 = P2^4;
u8 duan[] = {0x3f, 0x06, 0x5b, 0x4f, 0x66, 0x6d, 0x7d, 0x07, 0x7f, 0x6f, 0x77, 0x7c, 0x39, 0x5e, 0x79, 0x71};
u16 count = 99;
u16 digit = 0;//延时函数
void delay(u16 a){while(a--);
}//数码管实现函数
void timeSub(){u8 j;for( j=0; j<2; j++){ //只有两个数码管switch(j){case(0):b1 = 0, b2 = 0, b3 = 0 ,P0 = duan[count%10];break; //取得十位上的数字case(1):b1 = 1, b2 = 0, b3 = 0, P0 = duan[count/10];break; //取得个位上的数字
}
delay(100); //数码管显示相应的数字
}
}void Tim0() interrupt 1 //定时器函数,选择方式一,实现定时器0中断
{TH0 = 0xfc; TL0 = 0x18; //再次赋初值digit++; //全局变量,累加中断的次数if(digit >= 1000){ //精准的实现定时1sdigit = 0; //置0,重新开始if(count>=0){ count--; //定时器实现1s时,数码管显示的值实现递减}}
}
void main(){TMOD |= 0x01; //门开了,定时器,方式一,16位计数TH0 = 0xfc; TL0 = 0x18; //通过计算得到定时器的初值2^16 - 1000ET0 = 1; //定时器0开关打开TR0 = 1; //定时器运行开关打开EA = 1; //打开总开关while(1){ timeSub(); //数码管实现倒计时
}
}
【C51单片机】数码管实现99秒倒计时相关推荐
- 51单片机数码管显示60秒倒计时(C语言)
51单片机数码管显示60秒倒计时(C语言) 基于普中51单片机开发板,运用定时器/计数器0和1,实现60秒的倒计时和LED灯0.5s间隔闪烁 文章目录 51单片机数码管显示60秒倒计时(C语言) 前言 ...
- 单片机c语言99秒的定时器,通过51单片机定时器1实现99秒倒计时
今天刚刚完成了一个新的单片机实验,犯了一个小小的错误,导致不能够倒计时,弄了几个小时, 结果发现是变量的取值范围出错了 任何一个实验都应该自己动手去实践,没有实践是不知道自己少了什么的.只有实践才能够 ...
- 单片机c语言99秒倒计时,51单片机99秒倒计时C语言源程序
51单片机99秒倒计时C语言源程序 51单片机实现数码管99秒倒计时,其实很简单,就是使用定时器中断来实现.目的就是学习怎样用单片机实现倒计时,从而实现一些延时控制类的东西,99秒只是一个例子,你完全 ...
- 数码管显示倒计时c语言程序,1~99秒倒计时数码管显示C程序+Proteus仿真
1~99秒倒计时数码管显示C程序+Proteus仿真文件. 优化了程序,使用51单片机内部定时器,可以实现1-99秒内倒计时. 仿真效果为: 源程序为: /* 调试环境:Proteus 7.8AT89 ...
- python七段数码管10秒倒计时_用7段数码管显示9秒倒计时.doc
用7段数码管显示9秒倒计时 1 设计内容及目标 1.1设计题目 用七段LED数码管显示倒计时 1.2设计要求 (1)用8255控制七段LED数码管. (2)可选:用8254定时器显示时间. (3)可选 ...
- 51单片机0-99秒表计数器+60秒倒计时(数码管两位数)
51秒表计数器+倒计时(数码管两位数) 一:简介 我们实践的效果是用数码管显示0~99并在按下"转换键"后,实现60秒倒计时,并用蜂鸣器报警提示,兼并计数器和倒计时两种功能. 主要 ...
- C51单片机数码管动态显示
数码管作为最廉价的输出设备,在各种自动化设备中有很大的应用,最简单普通的显示方式为动态刷新显示,称为假动态显示,即通过分时扫描每一位,利于人眼的视觉停留现象,造成一种静态显示的效果,如下图所示: C5 ...
- 单片机补充案例--LED数码管99秒倒计时
说明:使用数码管实现倒计时显示 设备: 倒计时 可使用按钮作适当控制,暂停,开始,计时复位等. 程序: #include<8052.h> #define LSC P1_7 //特殊功能寄存 ...
- c51单片机数码管的控制
电路图 注:实际中,我单片机的74HC573电路接法与P0端接反了 138译码器资料:https://pan.baidu.com/s/1COTcutsnMxMSc8tq0M2yVw 密码:1jww 1 ...
- 单片机课堂思考题-2000秒倒计时?
99秒倒计时,改为2000(6666)秒倒计时. #include<8052.h> #define LSC P1_7 //特殊功能寄存器的位定义, #define LSB P1_6 //3 ...
最新文章
- numpy.squeeze() 去除维度为1的向量
- thinkphp 模型的创建
- Redis操作Set类型
- PAT (Advanced Level) Practise:1001. A+B Format
- openstack 开发_2016年OpenStack开发板工作清单
- python工资多少钱一个月-苏州工业园区学编程大概多少钱一个月
- SQL中CONVERT函数全部用法对日期操作
- linux巡检 python_LINUX服务器批量巡检的PYTHON脚本
- ktv服务器管理系统,小型KTV综合解决方案
- 基于ATmega128单片机的LCD12864显示密码锁
- css中设置背景颜色、背景图片
- C# winform 魔兽MH全图制作教程(3):魔兽1.20E.1.24B.1.24E全图内存地址 转自breeze...
- linux I2C 驱动
- 6、Lctech Pi(F1C200S)4.3寸(480*272)16位RGB565LCD屏驱动适配(CherryPi,Mangopi,F1C100S)
- [git]怎样git clone所有远程branch
- 2022广东省安全员A证第三批(主要负责人)培训试题模拟考试平台操作
- AOP技术学习之AspectJ
- 接地电阻的测量方法和规范要求
- 奇虎360发财报,搜索发展如何?
- Eclipse汉化教程(详细图解)