程序在 单片机中运行没问题,但是一 仿真就出错,六个数码管显示一样的数,为啥呀。
0
|
|
|
|
你看看显示的是哪一位的数据,估计是位选择有问题,可以上传工程帮你看下。
|
|
|
|
|
这里包含keil工程,原理图PDF和我画的proteus仿真图
|
|
|
|
|
啊?那我这里可以改吗 ?我没怎么上过这网站的 不太熟悉,不好意思
|
|
|
|
|
原理图上是8850,但是proteus里找不到8850,开始随便找的一个代替,数码管都不亮,后来百度查了下 ,用的2N3906,亮了。
|
|
|
|
|
自己认真查一下吧,就是未选信号不对,你的三极管的电路有问题。
|
|
|
|
|
程序在板子上运行正常,我的图是按板子的原理图照搬的,只是某些器件PROTEUS中没有,只好找的类似的代替。
|
|
|
|
|
应该不是器件的原因,你现在需要做的的是把未选信号弄对。
|
|
|
|
|
if(t==100) //10*100=1000ms 1sµ½
{
t=0;
sec++; //Ãë¼Ó1
if(sec==60) //Èç¹ûÃëΪ60£¬ÔòÇåÁ㣬·Ö¼Ó1
{
sec=0;
min++;
}
if(min==60) //Èç¹û·ÖΪ60£¬ÔòÇåÁ㣬ʱ¼Ó1
{
min=0;
hour++;
}
if(hour==24) //Èç¹ûʱΪ24£¬ÔòÇåÁã
{
hour=0;
}
}
把这段话加到定时中断里面去。
附件我帮你改了一部分,你看下吧,比较忙,没有全改。
|
|
|
|
|