。
五.程序模块框图
六.程序清单
主程序开始ORG0000HLJMPSTARTORG000BH定时器0的中断向量地址LJMPTIME0转到定时中断START显示缓冲区DISP_SBUF1EQU40HDISP_SBUF2EQU41HDISP_SBUF3EQU42HDISP_SBUF4EQU43H复位程序MOVR020HMOVR760HS1MOVR000HINCR0
5
fDJNZ
R7S1
定时程序MOV30H02H赋初值MOV31H01HMOV32H06H开机显示时间1200MOV33H00HMOV34H00H闹钟时间为700MOV35H01HMOV36H00HMOV37H02H起始日期:201062MOVTMOD01H定时计数器0工作于方式1MOVTH03CHMOVTL00B0H定时50msf1105MHzMOV70H20SETB12HSETBEA开总中断允许SETBET0开定时计数器0允许SETBTR0定时计数器0开始运行显示子程序KEYJB16HXUNHUANLCALLDSHBJJB04HSFXSJB05HMXSJB06HDXSJB10HNXSJB11HYRXSLJMPWORD1XUNHUANJB17HXUNHLJMPNXSLJMPWORD1XUNHLJMPYRXSLJMPWORD1DSHBJJB12HDSHBJ1JB14HDSHBJ1MOVA55HCJNEA63HDSHBJ1MOVA54HCJNEA62HDSHBJ1
6
fMOVA53HCJNEA61HDSHBJ1MOVA52HCJNEA60HDSHBJ1CLRP13SETB13HDSHBJ1RETNXSMOV40H34HMOV41H35HMOV42H36HMOV43H37HLJMPWORD1YRXSMOV40H30HMOV41H31HMOV42H32HMOV43H33HLJMPWORD1SFXSMOV40H52HMOV41H53HMOV42H54HMOV43H55HLJMPWORD1MXSMOV40H50HMOV41H51HMOV42H00HMOV43H00HLJMPWORD1DXSMOV40H60HMOV41H61HMOV42H62HMOV43H63HLJMPWORD1显示程序第1个字WORD1MOVDPTRTABJB00HWORD2SETB00HCLRP24MOVADISP_SBUF4MOVCAADPTRJB15HWORD11
7
fDECAWORD11MOVP0ASETBP27AJMPINT_T0_OUT第2个字WORD2JB01HWORD3SETB01HCLRP27MOVADISP_SBUF3MOVCAADPTRJB15HWORD21DECAWORD21MOVP0ASETBP26AJMPINT_T0_OUT第3个字WORD3JB02HWORD4SETB02HCLRP26MOVADISP_SBUF2MOVCAADPTRJB15HWORD31DECAWORD31MOVP0ASETBP25AJMPINT_T0_OUT第4个字WORD4JB03HWORD5SETB03HCLRP25MOVADISP_SBUF1MOVCAADPTRJB15HWORD41DECAWORD41MOVP0ASETBP24AJMPINT_T0_OUTWORD5CLR00HCLR01HCLR02HCLR03HAJMPWORD1键盘程序
8
fINT_T0_OUTANLP10FH保护P1的低四位,高四位置低电平ORLP20FH保护P2的高四位,低四位置高电平JNBP20KEY1JNBP21KEY2JNBP22KEY3JNBP23KEY4AJMPKEYKEY1LCALLT10MSSETBP20JNBP20KEY11AJMPKEYKEY2LCALLT10MSSETBP21JNBP21KEY21AJMPKEYKEY3LCAr