基于51单片机和时钟芯片ds1302的数字时钟设计内容摘要:
SETB T_CLK CLR T_RST DJNZ R7,S1302 CLR T_RST CLR T_CLK SETB T_RST MOV B,8EH。 控制寄存器 LCALL WRITEBYTE MOV B,80H。 控制, wp=1,写保护 LCALL WRITEBYTE SETB T_CLK CLR T_RST POP ACC MOV R1,A POP ACC。 A 恢复数据 14 RET。 GET1302:。 从 ds1302 读时间秒 /时 /分 MOV R0,SECOND。 R0 MOV R7,03H。 R7 MOV R2,81H。 R2 G13021:CLR T_RST CLR T_CLK SETB T_RST MOV B,R2 LCALL WRITEBYTE。 写操作时,将一字节的内容由 B 写至 DS1302 中 LCALL READBYTE。 读操作时,将一字节的内容读至 A 中 MOV @R0,A INC R0 INC R2 INC R2 SETB T_CLK CLR T_RST DJNZ R7,G13021 RET。 WRITEBYTE:。 写 B 寄存器中的内容至 1302 一字节 MOV R4,08H。 R4 INBIT1:MOV A,B RRC A MOV B,A SETB T_IO。 T_IO 口做输入口 MOV T_IO,C SETB T_CLK CLR T_CLK DJNZ R4,INBIT1 RET。 READBYTE:。 读 1302 一字节至 A 寄存器 MOV R4,8。 R4 OUTBIT1:MOV C,T_IO RRC A SETB T_CLK CLR T_CLK DJNZ R4,OUTBIT1 RET。 END DS0302。 ****** **************按键操作 ********************* ANJIAN_FUNCTION:。 功能选择键中断 接至 15 WAIT:JB ,WAIT SETB TR0。 启动定时器 0,延时 10ms JNB TF0,$ JNB ,$。 检测按键是否弹起 SETB EX1。 在有功能选择的时候开中断 1 INC FUNC PUSH ACC。 保存 A 中的数值 MOV A,FUNC CJNE A,03H,FUN_1 MOV LINE0,80H。 分隔符下移,以便区分于校时操作 MOV LINE1,80H FUN_1:CJNE A,04H,FUN_2 MOV LINE0,80H。 分隔符下移,以便区分于校时操作 MOV LINE1,80H FUN_2:CJNE A,05H,ANJIAN_FUNCTION_RET。 控制所要置数的计数位闪动 SETB ET1 CLR EX1。 在功能选择的时退出开中断 1 MOV FUNC,00H MOV LINE0,40H。 显示分和秒的间隔符 MOV LINE1,40H。 显示小时和分的间隔符 ANJIAN_FUNCTION_RET: POP ACC。 恢复 A 中的值 RETI。 校时加 中断 COUNT_UP: PUSH ACC MOV A,FUNC CLR C SUBB A,00H。 检测当前有无校时或者对闹铃的操作 CJNE A,00H,COUNT_UP_NEXT AJMP COUNT_UP_RET。 *****************时 ******************** COUNT_UP_NEXT: CJNE A,01H,COUNT_UP_1。 检测当前操作是否为时钟校时 时钟位 INC HOUR0 MOV R6,HOUR1。 校时 R6 CJNE R6,02H,COUNT_UP_0_1。 先判断小时高位是否已计数值 2 MOV R6,HOUR0 CJNE R6,04H,COUNT_UP_RET MOV HOUR1,00H MOV HOUR0,00H AJMP COUNT_UP_RET。 返回 COUNT_UP_0_1: MOV R6,HOUR0 CJNE R6,0AH,COUNT_UP_RET 16 MOV HOUR0,00H INC HOUR1 AJMP COUNT_UP_RET。 ***************分 **************************** COUNT_UP_1: CJNE A,02H,COUNT_UP_2。 校时 分 INC MIN0 MOV R6,MIN0 CJNE R6,0AH,COUNT_UP_1_1。 先判断分的低位 INC MIN1 MOV MIN0,00H COUNT_UP_1_1: MOV R6,MIN1 CJNE R6,06H,COUNT_UP_RET MOV MIN1,00H。 SJMP COUNT_UP_RET COUNT_UP_RET: LCALL HECHENG MOV SECOND,ZANCUN_SECOND。 每次校时秒都归零 LCALL SET1302。 每加一次对当前计数值进行一次重置 POP ACC RETI COUNT_UP_2: CJNE A,03H,COUNT_UP_3。 闹铃 时 CLR ET1。 暂停对 DS1302 的读操作 MOV R6,HOUR1。 时 R6 CJNE R6,02H,COUNT_UP_2_1。 先判断小时高位是否已计数值 2 INC HOUR0 MOV R6,HOUR0 CJNE R6,04H,COUNT_UP_NLRET MOV HOUR1,00H MOV HOUR0,00H AJMP COUNT_UP_NLRET。 返回 COUNT_UP_2_1: INC HOUR0 MOV R6,HOUR0 CJNE R6,0AH,COUNT_UP_NLRET MOV HOUR0,00H INC HOUR1 SJMP COUNT_UP_NLRET COUNT_UP_3:CJNE A,04H,COUNT_UP_RET。 闹铃 分 CLR ET1。 暂停对 DS1302 的读操作 INC MIN0 MOV R6,MIN0 CJNE R6,0AH,COUNT_UP_3_1。 先判断分的低位 17 INC MIN1 MOV MIN0,00H COUNT_UP_3_1:MOV R6,MIN1 CJNE R6,06H,COUNT_UP_NLRET MOV MIN1,00H COUNT_UP_NLRET: LCALL HECHENG POP ACC RETI。 *********** 有按键时重置 ds1302 当前位计数值 (R5) **************。 功能 :将当前时,分的高低显示计数值分别合成为 HOUR,MINUTE,对校时时 ds1302 重新写入数据做准备 HECHENG:。 R0,A PUSH ACC。 对 R0 的值压栈 MOV A,FUNC CLR C SUBB A,00H。 检测当前有无校时或者对闹铃的操作 CJNE A,01H,HECHENG_1 MOV ZANCUN0,HOUR0 MOV ZANCUN1,HOUR1 ANL ZANCUN0,0FH ANL ZANCUN1,0FH MOV R5,A。 保存 A 中的值 MOV A,ZANCUN1 SWAP A ADD A,ZANCUN0 MOV HOUR,A MOV A,R5。 恢复 A 的计数值 SJMP HECHENG_RET HECHENG_1: CJNE A,02H,HECHENG_2 MOV ZANCUN0,MIN0 MOV ZANCUN1,MIN1 ANL ZANCUN0,0FH ANL ZANCUN1,0FH MOV R5,A。 保存 A 中的值。基于51单片机和时钟芯片ds1302的数字时钟设计
相关推荐
液晶控制程序 液晶控制程序也就是液晶的驱动程序,这些程序对于液晶显示是必不可少的,液晶控制程序框图如图33所示:写命令程序判忙碌程序写数据程序图33 液晶控制程序框图判忙碌程序是对液晶模块内部的忙标志位(BF)的判断,也是执行写命令程序和写数据程序的前提,当模块在接受指令前,微处理顺必须先确认模块内部处于非忙碌状态,即读取BF 标志时BF 需为0,方可接受新的指令
,会产生一些临时的运算结果,这些结果需要临时存放在一个地方,这个地方就是数据寄存器。 89C51单片机具有四个存储器空间 : (1)片内程序存储器,即单片机芯片内置的存储空间; (2)片外程序存储器,即当单片机芯片内置的存储空间不够使用时,我们需要外加的一个存储器芯片; (3)片内数据存储器,即单片机芯片内置的存储空间; (4)片外数据存储器,即当单片机芯片内置的存储空间不够使用时
可以与 PC机组成测量仪器。 ( 4)数字化、智能化 微电子技术的进步,使仪器仪表产品与微处理器、 PC技术融合得更为紧密,其数字化、智能化程度不断提高。 尤其在仪器仪表的设计中采用了大量的超大规模集成( VLSI)的新器件,表面贴装技术( SMT) 、多层线路板印刷、圆片规模集成( WSI)和多芯片模块( MCM)等新工艺以及CAD,CAM,CAPP,CAT 等计算机辅助手段,使多媒体
uchar i=100。 if(K0==0) { delay(10)。 if(K0==0) { while(K0==0amp。 amp。 i) { i。 delay(10)。 } TR0=1。 s=time1。 m=0。 flag1=1。 flag2=1。 flag3=1。 XXXXXXXX 学院(论文) 17 num=0。 beep=1。 D0=1。 flag4=0。 //清除违规标志位
的户外广告设施的钢结构,当采用平面桁架或空间桁架结构形式时,构件的长细比 (λ)应符合下列规定: 1受压弦杆、斜杆、横杆: λ 小于或等于 150; 2辅助杆: λ 小于或等于 200; 3受拉杆: λ 小于或等于 6. 5电气系统要求 6. 5. 1户外广告设施的用电应以低压供电为主,宜采用三相五线制供电,电路设计应符合现行行业标准《民用建筑电气设计规范》 J GJ 16 的有关规定。 6.
了全系统小企业会计准则考试,有力促进了全系统培训活动扎实开展。 XX 区局代表市局参加了省局小企业会计准则抽考,获得全省地税系总评成绩第一名。 三是按照省局要求,做好省、市税收高层次人才和税收领军人才的培训选拔工作,经过筛选,市局向省局推荐了四名培训对象。 按照市局会议要求,对参加省局“纳税服务明星”评比竞赛取得突出成绩的人员进行通报嘉精美文档 值得收藏 精美文 档 值得收藏 3 奖。