【51单片机2位数码管100毫秒的9.9秒表】2022-5-16

缘由

这一题刚设计好要去回复就看到结帖了,好似看到我设计完成就盗窃去了,如此下面类似题目很容易也懒得回复了。

cpp 复制代码
#include "reg52.h"
sbit k0=P3^0;
sbit k1=P3^1;
unsigned char code SmZiFu[]={63,6,91,79,102,109,125,7,127,111};//0-9
unsigned char Js=0,miao=0,hm=0;//中断计时 秒 毫秒
void smxs(unsigned char mz,unsigned char w,unsigned char d)
{
	unsigned char Xd=0;
	P0=255;
	P0=255-((d==1?SmZiFu[mz]:(SmZiFu[mz]|0x80)));//小数点闪烁段数据显示
	P2=~w;//位选
	while(++Xd);//数码管延时
}
void ZhongDuanSheZhi()
{
	TH0+=(65536-9216)/256;/*定时器赋初值,定时10ms触发中断,自动补偿方式*/
	TL0+=(65536-9216)%256; 
	TMOD=0X01;//模式设置
	TR0=0; //开定时器
	ET0=1; //启定时器
	EA=1; //全局中断开关
}
void jishi()//计时
{
	if(Js==10)//100毫秒
	{
		if(++hm==10){hm=0;++miao;}else;
		if(miao==10)miao=hm=0;else;
		Js=0;
	}else;
}
void main()
{
	unsigned char JZhi=0;
	ZhongDuanSheZhi();
	while(1)
	{
		smxs(miao,2,0);smxs(hm,1,1);//数码管驱动
		if(hm==9&&miao==9)TR0=0;else;//计数满停止定时器
		jishi();
		if(!k0&&!++JZhi){TR0=1;while(!k0);}//按键消抖等待释放处理启动定时器
		if(!k1&&!++JZhi){Js=miao=hm=0;while(!k1);}//清零停止定时器
	}
}
void ZhongDuan() interrupt 1
{
	++Js;
	TH0+=(65536-9216)/256;/*定时器赋初值,定时10ms触发中断,自动补偿方式*/
	TL0+=(65536-9216)%256;      
}

单片机定时器模拟信号灯-嵌入式-CSDN问答
关于#单片机#的问题:求在P1.0引脚接有虚拟示波器,观察P1.0引脚输出的矩形脉冲波形-嵌入式-CSDN问答

单片机外部中断实验(写程序)-嵌入式-CSDN问答

相关推荐
使一颗心免于哀伤5 小时前
《设计模式之禅》笔记摘录 - 21.状态模式
笔记·设计模式
_落纸2 天前
三大基础无源电子元件——电阻(R)、电感(L)、电容(C)
笔记
Alice-YUE2 天前
【CSS学习笔记3】css特性
前端·css·笔记·html
2303_Alpha2 天前
SpringBoot
笔记·学习
晶振厂家-晶发电子2 天前
晶振在5G时代的角色:高精度时钟的核心支撑
单片机·嵌入式硬件·5g·晶振·电子元器件·晶振知识
F137298015572 天前
WD5030A 芯片,12V降5V,输出电流12A,电路设计
stm32·单片机·嵌入式硬件·汽车·51单片机
小莞尔2 天前
【51单片机】【protues仿真】基于51单片机的篮球计时计分器系统
c语言·stm32·单片机·嵌入式硬件·51单片机
三佛科技-187366133972 天前
分享机械键盘MCU解决方案
单片机·嵌入式硬件·计算机外设
李永奉2 天前
51单片机-使用IIC通信协议实现EEPROM模块教程
单片机·嵌入式硬件·51单片机