想用单片机做24秒计时器,但是毫秒那一位程序老编不好,各位十位百位都可以了,求高人指点,哪里插入毫秒 5

#include<reg52.h>//#include<intrins.h>#defineucharunsignedchar#defineuintunsignedintu... #include<reg52.h>
//#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
uchar code table[]=
{0xC0,0xF9,0xA4,0xB0,0x99,0x92,0x82,0xF8,0x80,0x90,0xBF,0xff};
uchar temp,bai,shi,ge,aa,b;
void delay(uint z);
void init();
void display(uchar bai,uchar shi,uchar ge);

void main()
{

init();
while(1)
{
if(aa==20)
{
aa=0;
temp++;
if(temp==24)
{

temp=0;

}
bai=temp/100;
shi=temp%100/10;
ge=temp%10;
}
display(bai,shi,ge);
}
}

void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}

void display(uchar bai,uchar shi,uchar ge)
{

/*for(b=0;b<10;b++)
{
P0=table[b];
P2=0x08;
delay(100);
} */

P0=table[bai];
P2=0x01;
delay(5);

P0=table[shi];
P2=0x02;
delay(5);

P0=table[ge];
P2=0x04;
delay(5);
}

void init()
{
temp=0;
TMOD=0X01;
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
EA=1;
ET0=1;
TR0=1;

}
void timer0() interrupt 1
{
TH0=(65536-50000)/256;
TL0=(65536-50000)%256;
aa++;
}
展开
 我来答
百度网友6e61273afc
2013-05-18
知道答主
回答量:66
采纳率:0%
帮助的人:17.3万
展开全部
temp最大是24妙吗,都是整数是,改240就行了,计数值改改
追问
我想在程序里面加入毫秒位的,4位数码管空着最后一位呢,知道在哪儿插入吗?我编那段屏蔽的有错
追答
在显示插入P口显示,在改一改位数值char改用int,
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
做而论道
高能答主

2013-06-02 · 把复杂的事情简单说给你听
知道大有可为答主
回答量:3万
采纳率:80%
帮助的人:1.2亿
展开全部
定时时间,50ms,中断一次。

那能有毫秒?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式