[求助] 电子时钟

15074006   2009-5-9 13:20 楼主
老师啊,,,那个电子时钟里 用小数点表示秒,怎么表示啊,,,急啊,,,,:Q

回复评论 (6)

一个“或”指令把那个位并上去。
如LED的A、B、C、D、E、F、G、H、DP分别接0、1、2、3、4、5、6、7脚。
那么如果显示“0”则它的代码是3FH,而小数点对应的位是7,那么它的权是80H。
此时只要使用
            MOV A,要显示的数
            JNB 显示秒位标志位,不显示秒位
            ANL A,#80H
不显示秒位:MOV 显示输出,A
就可以了。

注:可以做一个500MS计数,让其不断的取反秒位标志位就可实现秒位一秒闪烁一次。
点赞  2009-5-10 20:42
把小数点闪烁进行1S定时,就可以了。下面是部分程序
bit s=0;//小数点控制位

void xs()//显示程序
{
P0=x[e/10];
if(b3)
p24=0;
fun();
p24=1;

   if(s)//控制小数点闪
P0=x[e%10];
   else
  P0=x[e%10]&0x7f;
if(b2)
p25=0;
fun();
p25=1;

P0=x[d/10];
if(b1)
p26=0;
fun();
p26=1;

P0=x[d%10];
if(b0)
p27=0;
fun();
p27=1;
    }


void inetop() interrupt 1//T2控制时间
{   
TH0=0X3C;//0.1S,重装初值
TL0=0XB0;
j++;//记录定时次数
if(j==10)//1s
{j=0;
s=!s;//小数点开关
       }
点赞  2009-5-11 20:45
最好在前面介绍硬件情况,程序中加注释,这样容易看懂
点赞  2009-5-13 07:47
如果用P0口控制数码管的8个段,P0.7对应小数点DP
共阳型数码管则P0.7为0小数点亮即:CLR  P0.7
共阴型数码管则P0.7为1小数点亮即:SETB  P0.7

要想小数点闪烁,只要在显示过程中一段时间执行上面这条指令,一段时间不执行这条指令就可以了。
一段时间用定时器定时。
点赞  2009-5-13 08:07

回复 板凳 15075039ZQ 的帖子

点赞  2009-5-23 10:10

回复 沙发 huchuan987 的帖子

定时1秒就让DP闪一下就可以解决了
点赞  2010-9-2 22:41
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复