内容正文:
模拟时钟动态显示程序设计
(二)
更多模板请关注:https://haosc.taobao.com
CONTENTS
目录
01
02
模拟时钟的电路设计(二)
模拟时钟程序设计(二)
道艺兼修
敬业乐群
模拟时钟电路设计(二)
01
3
模拟时钟程序设计
02
(1)显示效果
4
模拟时钟程序设计
02
(2)程序设计流程图
开始
初始化
8位数码管的动态显示
N
Y
秒==60?
显示100次?
Y
N
Y
秒++
分==60?
N
Y
秒回0,分++
时==24?
Y
分会0,时++
N
时++
N
5
两模拟时钟程序设计
02
(3)程序设计
1)初始化
#include <reg51.h>
unsigned char code duan[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6f,0x40};//0---9,- 的字型码(共阴极数码管)
unsigned char shi,fen,miao;//记录时间
unsigned char dis[8]={0,0,10,0,0,10,0,0};//显示缓冲区
6
模拟时钟程序设计
02
2)主程序
7
模拟时钟程序设计
02
2)主程序
main()
{ unsigned char i,j;
shi=23;fen=59;miao=49;//初始时间
while(1)
{
for(i=0;i<100;i++)
{
dis[0]=shi/10;dis[1]=shi%10;//时间计算
dis[3]=fen/10;dis[4]=fen%10;
dis[6]=miao/10;dis[7]=miao%10;
8
模拟时钟程序设计
02
2)主程序
for(j=0;j<8;j++)
{
P2=j;//送位码,为什么?
P0=duan[dis[j]];//送段码
delay_nms(1);//短延时
wei=_crol_(wei,1);//计算位码
}
}
miao++;//计时控制
if(miao==60){miao=0;fen++;
if(fen==60){fen=0;shi++;
if(shi==24){shi=0;}}}
}
}
9
02
(1)其他的驱动电路:74HC593,专用芯片TM1638,PT6964
模拟时钟程序设计
(4)思考
(2)可不可以仅用P0完成段码和位码的传送?
根据应用场合,综合选择。
提示:两片74HC593
10
谢谢观看!
Simple Gifts
Jewel
Lullaby
167584.05
胡祝兵
$$