; 电子日历时钟asm.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
; 电子日历时钟asm.doc

; 电子日历时钟.asm ; (Electronic Calendar and Clock) ; Reference for Grade 2005, s.c.u.t. ; Author: YUJIAN.XU ; Revision: version 2.0 2007/12/01 ; Update : 2007/12/10 ; Limitations:None ; 开关Key0(for shift/adjust即调整/时间,日期显示模式/秒表控制键)connected to INT0 ; 开关Key1(for un-flash/flash即功能选择键) connected to INT1 ; 开关Key2:休眠唤醒键 connected to P2.6 ; 开关Key3:闹钟开关键 connected to P2.7 ; 开关Key4: 系统复位键,所有数值清零,初始值从07年12月01日12:00:00开始显示 ;变量定义 ;SLEEP_UP EQU 38H ;休眠计时器 TICK_CNT EQU 20H ;T0溢出计数器 FLASH_FLAG EQU 27H ;00h不选择修改,01h-03h分别为DATE的年,月,日闪烁, ;04h-06h分别为time的时,分,秒闪烁,07h-09h分别为bell的时,分,mode闪烁 ;时间 SECOND_BCD EQU 21H MINUTE_BCD EQU 22H HOUR_BCD EQU 23H ;闹钟 A_SEC_BCD EQU 34H A_MIN_BCD EQU 35H A_HOUR_BCD EQU 36H ;日期 DAY_BCD EQU 24H MONTH_BCD EQU 25H YEAR_BCD EQU 26H ;秒表 WATCH_FLAG EQU 30H S_PER_SEC_BCD EQU 31H ;秒表百分之一秒 S_SEC_BCD EQU 32H MIN_BCD EQU 33H ;LED系统功能状态标记 CLOCK_LED EQU P2.0 ALARM_LED EQU P2.1 WATCH_LED EQU P2.2 DATA_LED EQU P2.3 TIME_LED EQU P2.4 ;中断向量表 ORG 0000H LJMP MAIN ORG 0003H LJMP ADJUST0 ;外部中断0 ORG 000BH LJMP TIMEUP ;定时/计数器T0中断 ORG 0013H LJMP ADJUST1 ;外部中断1 ORG 001BH LJMP T1_INT ;定时/计数器T1中断 ORG 0030H MAIN: NOP ;主程序 MOV SP,#60H ;设置堆栈指针 ;初始化变量 MOV P2,#0FFH ;显示的时间: MOV SECOND_BCD, #00H ; 秒BOD码 MOV MINUTE_BCD, #00H ; 分BCD码 MOV HOUR_BCD, #12H ; 时BOD码 ;显示的日期: MOV DAY_BCD, #01H ; 天BCD码 MOV MONTH_BCD,#12H ; 月BCD码 MOV YEAR_BCD, #07H ; 年BCD码 ;秒表 MOV S_PER_SEC_BCD,#00H ; 百分秒 MOV S_SEC_BCD, #00H ; 秒 MOV MIN_BCD, #00H ; ;秒表清零 MOV WATCH_FLAG, #00H ; 秒表开始/停止标志 ;闹钟 MOV A_SEC_BCD,#00H MOV A_MIN_BCD,#00H MOV A_HOUR_BCD,#00H MOV FLASH_FLAG,#00H ;闪烁标志 MOV R7,#00H ;时间/日期转换标志 MOV TL0,#0B0H ;装T0的时间常数 MOV TH0,#3CH ;T0一次中断时间为0.05秒 MOV TL1,#0F0H ;装T1的时间常数 MOV TH1,#0D8H ; MOV SLEEP_UP,#00H MOV TICK_CNT,#14H ;T0循环计时次数20次(F=12Mhz) MOV TMOD,#11H ;T0初始化:方式1,计数位16位 CLR

文档评论(0)

zhaoxq + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档