标题:
我的51单片机 数码管电子时钟教程(无按键不可调时间)
[打印本页]
作者:
wxsalan
时间:
2020-4-27 12:25
标题:
我的51单片机 数码管电子时钟教程(无按键不可调时间)
自己做的8位数码管电子时钟
包含proteus的原理图,解压缩之后打开可以自行仿真
距离上次接触单片机过去了一年吧,忘得很是厉害
而且当初也是小白,所以有不对的地方还请大家评论里指正。
1 .jpg
(3.31 MB, 下载次数: 97)
下载附件
2020-4-27 12:19 上传
#include <reg51.h>
#define uint unsigned int
#define uchar unsigned char
uchar table []={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x40};
uchar y1,e2,s3,s4,w5,l6,q7,b8;
uchar shi,fen,miao,tt;
void delayms(uint k)
{
int i,j;
for(i=k;i>0;i--)
for(j=110;j>0;j--);
}
void time0() interrupt 1
{
TR0=0;
TH0=0x3c;
TL0=0xb0;
tt++;
if(tt==22)
{
tt=0;
miao++;
if(miao>59)
{
miao=0;
fen++;
if(fen>59)
{
fen=0;
shi++;
if(shi>23)
{
shi=0;
}
}
}
}
}
void display(uchar y1,uchar e2,uchar s3,uchar s4,uchar w5,uchar l6,uchar q7,uchar b8)
{
P2=0X01;
P0=~table[y1];
delayms(5);
P2=0X02;
P0=~table[e2];
delayms(5);
P2=0X04;
P0=~table[s3];
delayms(5);
P2=0X08;
P0=~table[s4];
delayms(5);
P2=0X10;
P0=~table[w5];
delayms(5);
P2=0X20;
P0=~table[l6];
delayms(5);
P2=0X40;
P0=~table[q7];
delayms(5);
P2=0X80;
P0=~table[b8];
delayms(5);
}
void main()
{
y1=1;e2=2;s3=3;s4=4;w5=5;l6=6;q7=7;b8=8;
while(1)
{
TMOD=0x02;
TH0=0x06;
TL0=0x06;
EA=1;
ET0=1;
TR0=1;
y1=shi/10;e2=shi%10;s3=10;s4=fen/10;w5=fen%10;l6=10;q7=miao/10;b8=miao%10;
display(y1,e2,s3,s4,w5,l6,q7,b8);
}
}
复制代码
全部资料51hei下载地址:
实验四.zip
(33.47 KB, 下载次数: 15)
2020-4-27 12:22 上传
点击文件名下载附件
下载积分: 黑币 -5
作者:
wxsalan
时间:
2020-6-12 20:44
http://www.51hei.com/bbs/dpj-190070-1.html
这个是万年历
欢迎光临 (http://www.51hei.com/bbs/)
Powered by Discuz! X3.1