云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 单片机课程设计论文完整

单片机课程设计论文完整

  • 62 次阅读
  • 3 次下载
  • 2025/6/15 22:29:47

MOV R4,#10 SETB POINT_3 CLR POINT_2

LCALL FOUR_KEY_SET ;设置读取月日

;****************************************************************** BACK_EX0_D:

MOV R1,#200 ;R2,R1的值用于设置循环,用于设置月日后显示停留

MOV R2,#100 MOV A,R7 MOV B,#10 MUL AB ADD A,R6 MOV MONTH,A MOV A,R5 MOV B,#10 MUL AB ADD A,R4

MOV DAY,A BACK_HOLD1:

LCALL UP_4LED

DJNZ R1,BACK_HOLD1 DJNZ R2,BACK_HOLD2 SJMP BACK_EX0_D1 BACK_HOLD2:

MOV R1,#200 SJMP BACK_HOLD1 BACK_EX0_D1:AJMP DPYEX0

;**********************************************************************

TIME_KEY_0: MOV R7,#10 ;设置时间,初始4个下划线 MOV R6,#10 MOV R5,#10 MOV R4,#10 SETB POINT_3 CLR POINT_2

LCALL FOUR_KEY_SET

;*********************************************************************

BACK_EX0_T: MOV R2,#100 ;R2,R1的值用于设置循环,用于设置时间后显示停留

MOV R1,#200 MOV A,R7 MOV B,#10

MUL AB ADD A,R6 MOV HOUR,A MOV A,R5 MOV B,#10 MUL AB ADD A,R4 MOV MINUTE,A MOV SECOND,#00H BACK1_HOLD1:

LCALL UP_4LED

DJNZ R1,BACK1_HOLD1 DJNZ R2,BACK1_HOLD2 SJMP BACK_EX0_T1 BACK1_HOLD2:

MOV R1,#200 SJMP BACK1_HOLD1 BACK_EX0_T1:AJMP DPYEX0

;**********************************************************************

EX0_RET:POP B POP PSW POP ACC RETI

;**********************************************************************

KEYT:DW 0EB77H,7B7DH ;键盘译码表 DW 0B7BBH,0BDD7H DW 0DBDDH,7EBEH DW 0DEE7H,0EDEEH

;***********************************************************************

EX1_INT:PUSH ACC ;保存相关寄存器值 PUSH PSW PUSH B SETB RS1 SETB RS0

DPYEX1: MOV R2,#0 ;进入第一层子菜单提示0,可选择闹钟/秒表 LCALL UP_LED0

EX1_KEY_0:LCALL KEY_SET ;判断键盘是否按下并读取键码 JNB KEY_DOWN,DPYEX1 LCALL KEY_REL EX1_KEY_1:MOV A,B ;读取键码

CJNE A,#0EEH,EX1_KEY_2 ;判断是不是退出键按下,是返回主程序

LJMP EX1_RET

EX1_KEY_2:CJNE A,#7EH,EX1_KEY_3 ; 判断是不是闹钟键按下,是进入闹钟设置子菜单

AJMP RING_KEY_0

EX1_KEY_3:CJNE A,#0BEH,EX1_KEY_4 ;判断是不是秒表键功能按下,是进入秒表设置子菜单

LJMP SWATCH_KEY_0 EX1_KEY_4:AJMP DPYEX1

RING_KEY_0:MOV R2,#1 ;提示1进入闹钟子菜单 LCALL UP_LED0

LCALL KEY_SET ;判断是否有键按下,若有按1,设置闹钟时间,按2开启闹钟,按3关闭闹钟

JNB KEY_DOWN,RING_KEY_0 LCALL KEY_REL RING_KEY_1:MOV A,B

CJNE A,#77H,RING_KEY_2 AJMP RING_SET_0

RING_KEY_2:CJNE A,#7BH,RING_KEY_3 LJMP SET_EN_RING

RING_KEY_3:CJNE A,#7DH,RING_KEY_4 LJMP SET_DIS_RING

RING_KEY_4:CJNE A,#0EEH,RING_KEY_5 LJMP EX1_KEY_0 RING_KEY_5:AJMP RING_KEY_0

;*************************************************************************

RING_SET_0:MOV R7,#10 MOV R6,#10 MOV R5,#10 MOV R4,#10 SETB POINT_3 CLR POINT_2

LCALL FOUR_KEY_SET ;设置闹钟时间

;*****************************************************************8 BACK_RKEY_0:MOV R2,#100 ;R2,R1,设置循环次数,用于显示时间暂停 MOV R1,#100 MOV A,R7 MOV B,#10 MUL AB ADD A,R6

MOV BELL_HOUR,A MOV A,R5 MOV B,#10 MUL AB

ADD A,R4

MOV BELL_MIN,A BACKR_HOLD1:

LCALL UP_4LED

DJNZ R1,BACKR_HOLD1

DJNZ R2,BACKR_HOLD2 SJMP BACK_RKEY_1 BACKR_HOLD2: MOV R1,#100

SJMP BACKR_HOLD1 BACK_RKEY_1:AJMP RING_KEY_0

;*********************************************************************

SET_EN_RING:SETB EN_RING ;键2按下,开启闹钟 SJMP BACK_RKEY_1

;***********************************************************************

SET_DIS_RING:CLR EN_RING ;键1按下,关闭闹钟 SJMP BACK_RKEY_1

;*********************************************************************

SWATCH_KEY_0:MOV R7,#0 ;进入秒表,置初值000.0 并显示 MOV R6,#0 MOV R5,#0 MOV R4,#0 SETB POINT_2 CLR POINT_3 SWATCH_KEY_1:LCALL UP_4LED

LCALL KEY_SET ;检查按键输入,按1启动/暂停秒表,按2秒表清0

JNB KEY_DOWN,SWATCH_KEY_1 LCALL KEY_REL

SWATCH_KEY_2:MOV A,B ;读取键码

CJNE A,#77H,SWATCH_KEY_3 ;判断1按下? JNB SWATCH_RUN,SWATCH_START CLR SWATCH_RUN ;秒表暂停 SJMP SWATCH_KEY_1

SWATCH_KEY_3:CJNE A,#7BH,SWATCH_KEY_4 ;判断2按下? CLR SWATCH_RUN ;秒表清0 SJMP SWATCH_KEY_0 SWATCH_KEY_4:LJMP DPYEX1

;*********************************************************************

SWATCH_START: SETB SWATCH_RUN ;SWATCH_RUN置1,让秒表跑

搜索更多关于: 单片机课程设计论文完整 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

MOV R4,#10 SETB POINT_3 CLR POINT_2 LCALL FOUR_KEY_SET ;设置读取月日 ;****************************************************************** BACK_EX0_D: MOV R1,#200 ;R2,R1的值用于设置循环,用于设置月日后显示停留 MOV R2,#100 MOV A,R7 MOV B,#10 MUL AB ADD A,R6 MOV MONTH,A MOV A,R5 MOV B,#10 MUL AB ADD A,R4 MOV DAY,

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com