51hei圖片_20210420085313.jpg.png (216.38 KB, 下載次數: 38)
下載附件
2021-4-20 09:01 上傳
參考單片機C語言1:
#include <reg52.h>
void delay(unsigned int t)
{
while (--t);
}
char ledwei=P1;
int m;
unsigned int hour,sec,min;
char a[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//0,1,2,3,4,5,6,7,8,9//
/*********定時器初始化子程序********/
void time0(void)
{
TMOD |=0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
EA=1;
ET0=1;
TR0=1;
}
/************數碼管顯示*************/
void display()
{
ledwei=0x2f;
P0=a[hour/10];
delay(100);
led1wei=0xff;
delay(100);
ledwei=0x1f;
P0=a[hour%10];
delay(100);
ledwei=0xff;
delay(100);
ledwei=0x37;
P0=a[min/10];
delay(100);
ledwei=0xff;
delay(100);
ledwei=0x3b;
P0=a[min%10];
delay(100);
ledwei=0xff;
delay(100);
ledwei=0x3d;
P0=a[sec/10];
delay(100);
ledwei=0xff;
delay(100);
ledwei=0x3e;
P0=a[sec%10];
delay(100);
ledwei=0xff;
delay(100);
}
void main()
{
time0();
while(1)
{
display();
if(m==20)
{
m=0;
sec++;
if (sec==60)
{
sec=0;
min++;
if (min==60)
{
min=0;
hour++;
if (hour==24)
{
sec=0;
hour=0;
}
}
}
}
}
}
/***********定時器實現24小時循環*******/
void time1(void) interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
m++;
}
參考語言2
#include <reg52.h>
void delay(unsigned int t)
{
while (--t);
}
sbit led1wei=P1^1;
sbit led2wei=P1^2;
sbit led3wei=P1^3;
sbit led4wei=P1^4;
sbit led5wei=P1^5;
sbit led6wei=P1^6;
int m;
unsigned int hour,sec,min;
char a[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90};//0,1,2,3,4,5,6,7,8,9//
/*********定時器初始化子程序********/
void time0(void)
{
TMOD|=0x01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
EA=1;
ET0=1;
TR0=1;
}
/************數碼管顯示*************/
void display()
{
led1wei=0;
P0=a[hour/10];
delay(100);
led1wei=1;
delay(100);
led2wei=0;
P0=a[hour%10];
delay(100);
led2wei=1;
delay(100);
led3wei=0;
P0=a[min/10];
delay(100);
led3wei=1;
delay(100);
led4wei=0;
P0=a[min%10];
delay(100);
led4wei=1;
delay(100);
led5wei=0;
P0=a[sec/10];
delay(100);
led5wei=1;
delay(100);
led6wei=0;
P0=a[sec%10];
delay(100);
led6wei=1;
delay(100);
}
void main()
{
time0();
delay(50000);
while(1)
{
display();
if(m==20)
{
m=0;
sec++;
if (sec==60)
{
sec=0;
min++;
if (min==60)
{
min=0;
hour++;
if (hour==24)
{
sec=0;
由于篇幅有限 第二參考語言不完整,關于按鍵設計,大家可以自行設計
所有文件在附件中
DZSZ.rar
(42.46 KB, 下載次數: 6)
2021-4-20 08:56 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
|