- 积分
- 152
- 在线时间
- 463 小时
- 最后登录
- 2024-5-6
- 阅读权限
- 50
- 精华
- 0
 
- UID
- 90262
- 帖子
- 183
- 精华
- 0
- 经验
- 152 点
- 金钱
- 161 ¥
- 注册时间
- 2009-3-22
|
回复 199# 给你一支烟
#include<reg52.h>
#define uchar unsignef uchar
#define uint unsigned int
#define duanma p0
sbit led=p1^0; 秒显示,两个发光二极管。
sbit wei1=p1^1; 七段数码管的选择位
sbit wei2=p1^2;
sbit wei3=p1^3;
sbit wei4=p1^4;
uchar code table[]={ 省略};七段数码管的段码
uchar shi ,fen,miao,shis,shig,fens,feng,tt;
void delay(uchar z) 延时子程序1ms
{
uchar x,y;
for(x=z;x>0;x--)
{
for(y=110;y>0;y--)
}
}
void display()
{
shis=shi/10;
shig=shi%10;
fens=fen/10;
feng=fen%10;
wei1=0;
shuma=table[shis];
delay(5);
wei1=1;
we2=0;
shuma=table[shig];
delay(5);
wei2=1;
wei3=0;
shuma=table[fens];
delay(5);
wei3=1;
wei4=0;
shuma=table[feng];
delay(5);
wei3=1;
}
void init()
{
shuma=1;
TMOD=0X01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
EA=1;
ET0=1;
TR0=1;
}
void main()
{
init();
while(1)
{
display();
}
void time0() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
tt++;
if(tt==20)
{
tt=0;
led=0;
miao++;
if(miao==60)
{
miao=0;
fen++;
if(fen==60)
{
shi++;
fen=0;
if(shi==60)
{
shi=0
}
}
}
}
else
{
led=1;
}
}
程序没有调试,自己去试一下,我没有在编译软件上面写, |
|