本文目录一览
数字管驱动电路设计。
通常,晶体管为(9 )1 3 或闩锁至7 4 HC5 7 3 驱动它们,以便您可以正常打开和关闭。
2 使用动态扫描将数字管启用到所需的显示号码。
这可能会被中断扫描。
3 使用实时时钟芯片到DS1 3 02 ,以获取您想要的信息。
您可以搜索此类网站中的许多源程序。
您需要学习什么观点(1 )初始化芯片; (2 )获取时间数据; (3 )知道如何修改信息。
4 使用键更改时间数据。
有很多方法,请提供参考。
使用三个键,即:设置按钮(这是一个多路复用按钮,按一次进入设置模式,然后进行一定的闪光灯,然后按下然后依次让下一个闪光灯,然后按确认设置要设置的数字已完成), +键和 - 键。
这不仅像修改信息一样简单,而且还涉及修改DS1 3 02 数据。
您需要关闭DS1 3 02 的写保护办公室,并打开邮政设置的这一角色。
希望您会对您有所帮助 #defineucharunsigndartch charcodetable [] =“ iao; voiddelay(uintz){uintx,y; for(x = z; x> x> 0; x-)for(y = 1 0; y = 1 0; y> 0; y> 0; y--) 1 0)lcden = 0; write_com(0x0f);} if(s1 num == 2 ){write_com(0x8 0+0x4 0+8 );} if(s1 num == 3 ){write_com(0x8 0+0x4 0+5 ); miao); write_com(0x8 0+0x4 0+1 0);} if(s1 num == 2 ); ++(shi == 2 4 )shi = 0; 2 ){fen-;(fen == -1 ){miao-; write_sfm(7 ,fen); write_com(0x8 0+0x4 0+7 );} if(s1 num == 3 ){shi-; if(shi == charnum; rw = 0; dula =; wela = 0; lcden = 0; write_com(0x3 8 ); delay(2 0); write_com(0x0c); delay_com; delays; write_com; write_com(0x06 ); delay; delay(2 0); 0x01 ; 0x01 ); 晚期(2 0); write_com(0x8 0); 晚期(2 0); for(num = 0; num <1 5 ; num ++){write_date(table [num]); 后期(2 0);} write_com(0x8 0+0x4 0); 1 ; th0 =(6 5 5 3 6 -5 0000)/2 5 6 ; TL0 =(6 5 5 3 6 -5 0000)%2 5 6 ; EA = 1 ; ET0 = 1 ; tr0 = 1 ;} with dmain(){init(); 而(1 ){keyscan();}} viottimer0()中断1 {th0 =(6 5 5 3 6 -5 0000)/2 5 6 ; TL0。
fen == 6 0){fen = 0; shi ++; if(shi == 2 4 ){shi = 0;} write_sfm(4 ,shi);} write_sfm(7 ,fen);} write_sfm(1 0,miao);
--------------------------------------------------------------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- LJMPCM1 1 0; 大厅! = 4 ,去霍尔= 1 0? Scan3 1 :Mova,Houhlcllcmp02 jzscan3 2 ; houh = 2 ,转到Scan3 2 LJMPDIS005 ; 吧! = 2 ,scan3 2 show:movhoul,#00hmovhouh,#00hljmpdis006 c1 1 0:mova,houlcallcmp1 0jzscan3 3 ; -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- = FFH Display Update Scan3 4 :Movhoul,#09 HDechouhmova,Houhadda,#1 JZSCAN3 5 LJMPDIS006 SCAN3 5 :MOVHOUL,#03 HMOVHOUH,#02 HLJMPDIS006 EXITK1 :CJNEA,CJNEA,CJNEA,#0FEH,#0FEH,#0FEH,#KIS K1 K1 KIS K1 K1 K1 K1 K1 K1 K1 K1 按下第四次// K1 为四个时间calldel付诸实践; ..如果下一步处理,则检测1 S display display display incsecl //第二个1 mova,secretclcmp1 0jnzdis0001 //如果0,则为0。
LCMP06 JNZDIS0002 //如果为0,下一步将分为治疗。
06 jnzdis00 04 //是否是0,下一步不是0时,它将在Movminh,#00HinChoulMova,Houlcallcmp04 jnzcm1 0 // Mancm1 0 // mancm1 0:mancm1 0:mova,mova,mova,hullclcmp1 0jn zdis0005 //是IT 1 0? 这是时间处理*/movflag,#00hljmptimer2 again1 :ljmpagainedis0001 :lcalldis01 ljmptimer1 dis0002 :lcalldis02 ljmptimer1 dis0003 :lcalldis03 ljmptimer1 dis0004 :lcalldis03 ljmptimer1 dis0004 : LCALLDIS05 LJMPTIMER1 DIS0006 :LCALLDIS06 LJMPTIMER1 ; ------------- Dis001 dis001 : LCALLDIS01 LJMPSCAN1 DIS002 : LCALLDIS02 LJMPSCAN1 DIS003 : LCALLDIS03 LJMPSCAN2 DIS 004 : LCALLDIS04 LJMPSCAN2 DIS005 : LCALLDIS05 LJMPSCAN3 DIS006 :LCALLDIS06 LJMPSAN3 ; --------------- Dis01 : LCALLDIS1 RETDIS02 : LCALLDIS1 LCALDIS2 RETDIS03 : LCALLDIS1 LDIS 2 LCALLDIS3 RETDIS04 : LCALLDIS1 LCALDIS2 LCALDIS3 LCALDIS4 RETDIS05 : lcalldis1 lcaldis2 lcaldis3 lcaldis4 lcaldis5 retdis06 :alldis5 lcalldis6 retdis1 :mova,secret // Secred //显示秒数单位movr0, #07 hlcallsplay1 ret; --------------------------------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------------------------------------------ /显示单位数字, #04 hlcallDisplay1 ret; --------------------------------------------------------------------------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ ---------------------------莫达,houh //来自Movr0的十个数字,#00hlcaldisPlay1 Ret; -----------------------------显示:在代码后,使U1 3 有效MOVX@R0,A //会计师的围墙首先是外部R0存储地址单元,以便相应的数字管 显示dect0ret; --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ----------------------------------------------------------------------------------------------------------------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 6 有效MOVX@R0,A //累加器的发送到外部R0存储地址单元,以便显示相应的数字管 RT; ---------------------------------------------------------------------------------------------------------------------------------------- ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 比较何时A中的数字等于5 ADDA, #0fbhret; ------------------------------------------------------------------------------------------------------------------------------------------------ --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- H,6 6 H; 01 2 3 4 DB6 DH,7 DH,07 H,7 FH,6 FH; ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
ti1 ; 1 发电包括0,封闭MOV3 H,#00; H,#00 lcalllkeysan。
3 AH,#00; 擦除5 0ms inc3 1 h的初始值; 如果计数为6 0秒MOV3 1 H,#00 INC3 2 H,则在几秒钟内将1 加1 ,#6 0; 我 ; 返回Intit1 :s.hpsw; 单击堆栈索引以还原PushAcc Clrea Movth1 站点,#4 CH; 恢复T1 MOVTL1 正时的初始值,#00h inc7 1 h; 7 1 h是contings Mova的5 0毫米,7 1 H CJNEA,#2 0,OUT1 MOV7 1 H,#00 MOVA MOVA; Jnea,3 9 h,out1 ; CLRP1 .0裁定警告; 在警报时,P1 .0 OUT1 :SETBEA; 打开popacc popsw reti; 返回优惠:Mova,3 1 H; 第二个显示movb,#1 0 dvabb2 0h,a; 将十个数字放在2 0H单元2 1 H中,b; 将一个数字放在剩余的数量VP0中; 将插座放在P0 C LRP2 .6 上; 清除P2 .6 ,点亮第七个数字管LCALLDEL1 MS; Movb,#1 0 Divab Mov2 H,A MOV2 3 H,BDISP5 :MOVA,2 2 H; 第二屏电影,#table movca,@a+dptr movp0,clrp2 .3 lcalldel1 ms setb2 .3 disp6 :mova,2 3 h; 在第一部电影中显示,#table movca,@a+dptr movp0,clrp2 .4 lcalldel1 ms setBp2 :mov,3 3 h; DVAB MOV2 4 H,A MOV2 5 H,BDISP8 :MOV A,2 4 H; MOVDPTR,#Table Movca,@A+DPTR MOVP0,CLRP2 .0 LCALLDEL1 MS SETB2 .0DISP9 :MOVA,2 5 H; 一h; - “查看movp0,clrp2 .5 lcalldel 1 ms setb2 .5 disp1 1 :mov3 5 h,#0bfh; - “查看movdptr,#table movca,@a+dptr movp0,clrp2 .3 lcallle lcallle l1 ms setb2 .3 d2 d2 :mova,2 7 h; 警报显示在单个数字电影,#Table Movca,@a+dptr movp0,clrp2 .4 lcalldel1 ms setbp2 .4 dispnz:mova,3 9 h; VCA,@a+dptr movp0,clrp2 .0 lc aldel1 ms setb2 .0 d6 :mova,2 9 h; 单个数字围绕时钟MOVDPTR,#Table Movca,@A+DPTR MOVP0,CLRP2 .1 LCALLDEL1 MS SETBP2 .1 MOV3 5 H,#0BFH; - “ Mova,3 5 h movp0,a clrp2 0h,0f9 h,0a4 H,0b0h,9 9 h,9 2 h,8 2 h,8 2 h,0f8 h,8 0h,8 0h,9 0h; 编号0 -9 sjmpkeyoyotkey1 :lcallldel2 0ms jbp3 .1 ,keyout jnbp3 .1 ,$ inc3 1 h; mov3 2 h,#00 sjmpkeyotkey3 :lcalldel2 0ms jbp3 .3 ,keyout jnbp3 .3 ,$ inc3 3 h; SJMPNZOUT: RETNZ2 : LCALLDISPLAY1 JNBP3 .5 , NZ3 JNB3 .6 , NZ4 KEYNZ4 : JNBP3 .4 , NZ2 SJM PNZOUTNZ3 : LCALLDEL2 0MS JB3 .5 , Nzout Jnbp3 .5 , $ Inc3 8 H Mova, 3 8 H CJNEA,#6 0,NZOUT MOV3 8 H,#00 SJMPNZOUTNZ4 :LCALLDEL2 0MS JBP3 .6 ,NZOUT JNBP3 .6 V3 9 H,#00 SJMPKEYOYOYNZ5 :JBP3 .7 ,NZOUT Jnb3 .7 ,$ SETBP1 .0.0.0 sjmpnzoutend
基于51单片机的数码管设计电子时钟,可以调时间的,怎么弄唉,大家帮帮忙
让我们谈谈步骤:I。数字管驱动电路设计。
通常,晶体管为(9 )1 3 或闩锁至7 4 HC5 7 3 驱动它们,以便您可以正常打开和关闭。
2 使用动态扫描将数字管启用到所需的显示号码。
这可能会被中断扫描。
3 使用实时时钟芯片到DS1 3 02 ,以获取您想要的信息。
您可以搜索此类网站中的许多源程序。
您需要学习什么观点(1 )初始化芯片; (2 )获取时间数据; (3 )知道如何修改信息。
4 使用键更改时间数据。
有很多方法,请提供参考。
使用三个键,即:设置按钮(这是一个多路复用按钮,按一次进入设置模式,然后进行一定的闪光灯,然后按下然后依次让下一个闪光灯,然后按确认设置要设置的数字已完成), +键和 - 键。
这不仅像修改信息一样简单,而且还涉及修改DS1 3 02 数据。
您需要关闭DS1 3 02 的写保护办公室,并打开邮政设置的这一角色。
希望您会对您有所帮助
STC89c52单片机设计6位数码管电子钟时钟
#includefen == 6 0){fen = 0; shi ++; if(shi == 2 4 ){shi = 0;} write_sfm(4 ,shi);} write_sfm(7 ,fen);} write_sfm(1 0,miao);
做一个电子钟,利用六个数码管显示分、秒。
/****************************计划*Ping Ceyliang 2 008 -1 2 008 -1 2 -2 7 of Changjiang University电子创新计划********/org00hajpmain/*,变量(MOV3 0H)位缓冲区MOV6 2 H,#00H; v6 3 h,5 h式6 6 H; 十位movdptr,#tbl; 查找表指针Count1 equ2 0 // 2 0*5 00Scount2 Equ-4 6 000 //计时器预设nouber //显示初始化00-00-00-00start:movr0,#07 H; 第二个位偏移地址MOVA,#00H; 显示第二个单位mova,#00hlcalldisplaymoooo a,#0bhlcalldisplaymova,#00hlcalldisplaymova,#00hlcalldisplaymova,#0bhlcalldisplaymova, #00HLCALLDISPLAYMOVA,#00HLCALLSPLAYMOVTMOD,#01 H; 使用时间0,模式1 Timer1 :movflag,#01 H; 清晰的1 S标准设置为1 ,表明时间次数小于1 stimer2 :movr7 ,#count1 ; 再次设置时间:movth0,#HighCount2 ; Timer Prestet movtl0,#lowCount2 SetBtr0 Lt.,#02 HJZSCAN1 ; 第二个单独的黑屏MOVR0,#07 HL CaldisPlay1 Mova,#0AH; 十个黑色数字中的第二个MOVR0,#06 HLCALLDISPLAY1 LCALLDLCALDIS02 ; 第二 ; 扫描1 mova,keyseck2 :anla,#0ffhcjnea, ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 低于秒的 + 1 显示是否是Incsecl; mink1 ; K3 媒体,如果不是,请转到 Mink1 ; ------------------------------------------------------------------------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 2 mink1 :cjnea,#0feh,scar1 ; --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 0 ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ Mova, MinLCallcmp1 0jzmin2 1 ljmpdis003 min2 1 : Movminl,#00HINCMINHMOVA, MinhlcallcMP06 jzmin2 2 2 Ljmpdis004 MIN2 2 : Movminh, Ed, will go to Houk1 ;------------- K3 Press, 以下是Decminlmova,Minladda,#1 JZMIN2 3 LJMPDIS003 MIN2 3 :MOVMINLL,#09 HDECMINHMOVA,MINHADDA,#1 JZMIN2 4 LJPDIS00,SCAN 2 ; ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------》再次,lcallldlcallsan。--------------------------------------------------------------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- LJMPCM1 1 0; 大厅! = 4 ,去霍尔= 1 0? Scan3 1 :Mova,Houhlcllcmp02 jzscan3 2 ; houh = 2 ,转到Scan3 2 LJMPDIS005 ; 吧! = 2 ,scan3 2 show:movhoul,#00hmovhouh,#00hljmpdis006 c1 1 0:mova,houlcallcmp1 0jzscan3 3 ; -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- = FFH Display Update Scan3 4 :Movhoul,#09 HDechouhmova,Houhadda,#1 JZSCAN3 5 LJMPDIS006 SCAN3 5 :MOVHOUL,#03 HMOVHOUH,#02 HLJMPDIS006 EXITK1 :CJNEA,CJNEA,CJNEA,#0FEH,#0FEH,#0FEH,#KIS K1 K1 KIS K1 K1 K1 K1 K1 K1 K1 K1 按下第四次// K1 为四个时间calldel付诸实践; ..如果下一步处理,则检测1 S display display display incsecl //第二个1 mova,secretclcmp1 0jnzdis0001 //如果0,则为0。
LCMP06 JNZDIS0002 //如果为0,下一步将分为治疗。
06 jnzdis00 04 //是否是0,下一步不是0时,它将在Movminh,#00HinChoulMova,Houlcallcmp04 jnzcm1 0 // Mancm1 0 // mancm1 0:mancm1 0:mova,mova,mova,hullclcmp1 0jn zdis0005 //是IT 1 0? 这是时间处理*/movflag,#00hljmptimer2 again1 :ljmpagainedis0001 :lcalldis01 ljmptimer1 dis0002 :lcalldis02 ljmptimer1 dis0003 :lcalldis03 ljmptimer1 dis0004 :lcalldis03 ljmptimer1 dis0004 : LCALLDIS05 LJMPTIMER1 DIS0006 :LCALLDIS06 LJMPTIMER1 ; ------------- Dis001 dis001 : LCALLDIS01 LJMPSCAN1 DIS002 : LCALLDIS02 LJMPSCAN1 DIS003 : LCALLDIS03 LJMPSCAN2 DIS 004 : LCALLDIS04 LJMPSCAN2 DIS005 : LCALLDIS05 LJMPSCAN3 DIS006 :LCALLDIS06 LJMPSAN3 ; --------------- Dis01 : LCALLDIS1 RETDIS02 : LCALLDIS1 LCALDIS2 RETDIS03 : LCALLDIS1 LDIS 2 LCALLDIS3 RETDIS04 : LCALLDIS1 LCALDIS2 LCALDIS3 LCALDIS4 RETDIS05 : lcalldis1 lcaldis2 lcaldis3 lcaldis4 lcaldis5 retdis06 :alldis5 lcalldis6 retdis1 :mova,secret // Secred //显示秒数单位movr0, #07 hlcallsplay1 ret; --------------------------------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------------------------------------------ /显示单位数字, #04 hlcallDisplay1 ret; --------------------------------------------------------------------------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ ---------------------------莫达,houh //来自Movr0的十个数字,#00hlcaldisPlay1 Ret; -----------------------------显示:在代码后,使U1 3 有效MOVX@R0,A //会计师的围墙首先是外部R0存储地址单元,以便相应的数字管 显示dect0ret; --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ----------------------------------------------------------------------------------------------------------------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ 6 有效MOVX@R0,A //累加器的发送到外部R0存储地址单元,以便显示相应的数字管 RT; ---------------------------------------------------------------------------------------------------------------------------------------- ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 比较何时A中的数字等于5 ADDA, #0fbhret; ------------------------------------------------------------------------------------------------------------------------------------------------ --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- H,6 6 H; 01 2 3 4 DB6 DH,7 DH,07 H,7 FH,6 FH; ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
八位数码管和锁存器制作电子时钟
使用8 个数字管,该原理是相同的4 位数字管。ti1 ; 1 发电包括0,封闭MOV3 H,#00; H,#00 lcalllkeysan。
3 AH,#00; 擦除5 0ms inc3 1 h的初始值; 如果计数为6 0秒MOV3 1 H,#00 INC3 2 H,则在几秒钟内将1 加1 ,#6 0; 我 ; 返回Intit1 :s.hpsw; 单击堆栈索引以还原PushAcc Clrea Movth1 站点,#4 CH; 恢复T1 MOVTL1 正时的初始值,#00h inc7 1 h; 7 1 h是contings Mova的5 0毫米,7 1 H CJNEA,#2 0,OUT1 MOV7 1 H,#00 MOVA MOVA; Jnea,3 9 h,out1 ; CLRP1 .0裁定警告; 在警报时,P1 .0 OUT1 :SETBEA; 打开popacc popsw reti; 返回优惠:Mova,3 1 H; 第二个显示movb,#1 0 dvabb2 0h,a; 将十个数字放在2 0H单元2 1 H中,b; 将一个数字放在剩余的数量VP0中; 将插座放在P0 C LRP2 .6 上; 清除P2 .6 ,点亮第七个数字管LCALLDEL1 MS; Movb,#1 0 Divab Mov2 H,A MOV2 3 H,BDISP5 :MOVA,2 2 H; 第二屏电影,#table movca,@a+dptr movp0,clrp2 .3 lcalldel1 ms setb2 .3 disp6 :mova,2 3 h; 在第一部电影中显示,#table movca,@a+dptr movp0,clrp2 .4 lcalldel1 ms setBp2 :mov,3 3 h; DVAB MOV2 4 H,A MOV2 5 H,BDISP8 :MOV A,2 4 H; MOVDPTR,#Table Movca,@A+DPTR MOVP0,CLRP2 .0 LCALLDEL1 MS SETB2 .0DISP9 :MOVA,2 5 H; 一h; - “查看movp0,clrp2 .5 lcalldel 1 ms setb2 .5 disp1 1 :mov3 5 h,#0bfh; - “查看movdptr,#table movca,@a+dptr movp0,clrp2 .3 lcallle lcallle l1 ms setb2 .3 d2 d2 :mova,2 7 h; 警报显示在单个数字电影,#Table Movca,@a+dptr movp0,clrp2 .4 lcalldel1 ms setbp2 .4 dispnz:mova,3 9 h; VCA,@a+dptr movp0,clrp2 .0 lc aldel1 ms setb2 .0 d6 :mova,2 9 h; 单个数字围绕时钟MOVDPTR,#Table Movca,@A+DPTR MOVP0,CLRP2 .1 LCALLDEL1 MS SETBP2 .1 MOV3 5 H,#0BFH; - “ Mova,3 5 h movp0,a clrp2 0h,0f9 h,0a4 H,0b0h,9 9 h,9 2 h,8 2 h,8 2 h,0f8 h,8 0h,8 0h,9 0h; 编号0 -9 sjmpkeyoyotkey1 :lcallldel2 0ms jbp3 .1 ,keyout jnbp3 .1 ,$ inc3 1 h; mov3 2 h,#00 sjmpkeyotkey3 :lcalldel2 0ms jbp3 .3 ,keyout jnbp3 .3 ,$ inc3 3 h; SJMPNZOUT: RETNZ2 : LCALLDISPLAY1 JNBP3 .5 , NZ3 JNB3 .6 , NZ4 KEYNZ4 : JNBP3 .4 , NZ2 SJM PNZOUTNZ3 : LCALLDEL2 0MS JB3 .5 , Nzout Jnbp3 .5 , $ Inc3 8 H Mova, 3 8 H CJNEA,#6 0,NZOUT MOV3 8 H,#00 SJMPNZOUTNZ4 :LCALLDEL2 0MS JBP3 .6 ,NZOUT JNBP3 .6 V3 9 H,#00 SJMPKEYOYOYNZ5 :JBP3 .7 ,NZOUT Jnb3 .7 ,$ SETBP1 .0.0.0 sjmpnzoutend