




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
单片机产品设计简资料单片机产品设计简资料单片机产品设计简资料一、设计要求设计并制作出具有如下功能的电脑钟:(1)自动计时,由6位LED显示器显示时、分、秒。(2)具备校准功能,可以直接由0~9数字键设置当前时间。(3)具备定时起闹功能。(4)一天时差不超过1秒钟。单片机产品设计简资料单片机产品设计简资料单片机产品设计简资料1一、
设计要求设计并制作出具有如下功能的电脑钟:
(1)自动计时,由6位LED显示器显示时、分、秒。
(2)具备校准功能,可以直接由0~9数字键设置当前时间。
(3)具备定时起闹功能。
(4)一天时差不超过1秒钟。一、设计要求2二、
总体方案1.计时方案方案一:采用实时时钟芯片。方案二:软件控制。2.键盘/显示方案方案一:串口扩展,LED静态显示。方案二:8155扩展,LED动态显示。显示方式框图
(a)静态显示框图;(b)动态显示框图
二、总体方案显示方式框图
(a)静态显示框图;(b)3三、
硬件设计
1.电路原理图三、硬件设计1.电路原理图42.系统工作流程本电脑钟具备以下功能:
(1)时钟显示:6位LED从左到右依次显示时、分、秒,采用24小时计时。
(2)键盘功能:采用4×3键盘,包括:0~9数字键,键号为00H~09HC/R键时间设定/启动计时键,键号为0AHALM键闹钟设置/启闹/停闹键,键号为0BH(1)时间显示:上电后,系统自动进入时钟显示,从00:00:00开始计时,此时可以设定当前时间。(2)时间调整:按下C/R键,系统停止计时,进入时间设定状态,系统保持原有显示,等待键入当前时间。按下0~9数字键可以顺序设置时、分、秒,并在相应LED管上显示设置值,直至6位设置完毕。系统将自动由设定后的时间开始计时显示。
(3)闹钟设置/启闹/停闹:按下ALM键,系统继续计时,显示00:00:00,进入闹钟设置状态,等待键入启闹时间。按下0~9数字键可以顺序进行相应的时间设置,并在相应LED管上显示设置值,直至6位设置完毕。这将启动定时启闹功能,并恢复时间显示。定时时间到,蜂鸣器鸣叫,直至重新按下ALM键停闹,并取消闹钟设置。2.系统工作流程本电脑钟具备以下功能:5四、软件设计1.系统资源分配地址功能名称初始化值30H~35H显示缓冲区,小时、分、秒(高位在前)DISP0~DISP500H3CH~3FH计时缓冲区,时、分、秒、100msHOUR,MIN,SEC,MSEC00H40H~42H闹钟值寄存区,时、分、秒AHOUR,AMIN,ASECFFH50H~7FH堆栈区
PSW.5计时显示允许位(1:禁止,0:允许)F00PSW.1闹钟标志位(1:正在闹响,0:未闹响)F10电子钟控制软件片内RAM及标志位分配表四、软件设计1.系统资源分配地址功能名称62.软件流程图9.3主程序流程图2.软件流程图9.3主程序流程图7图9.4计时程序流程图图9.4计时程序流程图8图9.5时间设置/闹钟定时流程图
图9.5时间设置/闹钟定时流程图9图9.6键盘设置子程序流程图图9.6键盘设置子程序流程图10图9.7键盘扫描流程图
(4)键盘扫描程序模块KEYSCAN:流程图如图9.7所示。图9.7键盘扫描流程图(4)键盘扫描程11图9.8显示流程图
图9.8显示流程图
12图9.9定时比较流程图图9.9定时比较流程图13ORG 0000HAJMP MAINORG 000BHAJMP CLOCKORG 0030HPORT EQU 8000HPORTAEQU 8001HPORTBEQU 8002H;*****************主程序MAIN******************ORG 0000H;*****************主程14PORTC EQU 8003HDISP0 EQU 30HDISP1 EQU 31HDISP2 EQU 32HDISP3 EQU 33HDISP4 EQU 34HDISP5 EQU 35HHOUR EQU 3CHPORTC EQU 8003H15
MIN EQU 3DHSEC EQU3EHMSEC EQU3FHAHOUR EQU 40HAMIN EQU41HASEC EQU42HF1BITPSW.1MAIN:MOVSP,#50H ;设置堆栈区
MOVXDPTR,#PORT MOV A,#03HMIN EQU 16
MOVX@DPTR,A ;8155初始化
CLR F1 ;清零闹钟标志位
CLR F0 ;允许计时显示
MOV AHOUR,#0FFHMOV AMIN,#0FFHMOV ASEC,#0FFHMOV R7,#10HMOV R0,#DISP0 CLR AMOVX@DPTR,A ;815517LOOP:MOV @R0,AINC R0 DJNZR7,LOOP ;设置初值
MOVTMOD,#01H MOVTL0,#0B0H MOV TH0,#3CH ;定时器0初始化,定时时间100ms SETB TR0 ;启动定时器
SETB EA SETBET0 ;开中断
LOOP:MOV @R0,A18BEGIN:ACALL ALARM ;调用定时比较
ACALL KEYSCAN ;调用键盘扫描
CJNE A,#0AH,NEXT1;是CLR/RST键否?
CLRTR0 ;是则暂时停止计时
MOVR1,#HOUR ;地址指针指向计时缓冲区首地址
AJMP MODBEGIN:ACALL ALARM ;调19NEXT1:CJNEA,#0BH,BEGIN;是ALARM键否?
JB F1,NEXT2 ;闹钟正在闹响否?
MOV R1,#AHOUR;地址指针指向闹钟值寄存区首地址
MOD:SETB F0 ;置位时间设置/闹钟定时标志,禁止显示计时时间
ACALL MODIFY ;调用时间设置/闹钟定时程序
SETB TR0 ;重新开始计时
CLR F0 ;清零时间设置/闹钟定时标志,恢复显示计时时间NEXT1:CJNEA,#0BH,BEGIN;是20
AJMP BEGIN NEXT2:SETB P1.0 ;闹钟正在闹响,停闹
CLR F1 ;清零闹钟标志
AJMP BEGIN;**************时间设置/闹钟定时模块MODIFY************MODIFY:ACALL KEYIN ;调用键盘设置子程序
ACALLCOMB ;调用合字子程序
RET键盘设置子程序KEYIN:KEYIN: PUSH PSW PUSH ACCAJMP BEGIN 21
SETB RS1 ;保护现场
MOV R0,#DISP0 ;R0指向显示缓冲区首地址
MOV R7,#06H ;设置键盘输入次数L1:CLR RS1ACALL KEYSCAN ;调用键盘扫描程序取按下键的键号
SETB RS1CJNE A,#0AH,L2;键入数合法性检测(是否大于9)SETB RS1 ;保护现场22
L2: JNC L1 ;大于9,重新键入
MOV @R0,A ;键号送显示缓冲区
INC R0 DJNZ R7,L1 ;6位时间输入完否?未完继续,否则返回
POP ACC POP PSW CLR RS1 ;恢复现场
RETL2: JNC L1 ;大于9,重新键入23;**********键盘扫描子程序KEYSCAN***********KEYSCAN:ACALL TEST ;调判按键是否按下子程序TESTJNZREMOV;有键按下调消抖延时
ACALL DISPLAY ACALL ALARM AJMPKEYSCAN;无键按下继续判是否按键
REMOV:ACALL DISPLAY;调用显示子程序延时消抖
ACALL TEST ;再判是否有键按下;**********键盘扫描子程序K24
JNZ LIST ;有键按下转逐列扫描
ACALL DISPLAYACALL ALARMAJMP KEYSCAN ;无键按下继续判是否按键
LIST: MOV R2,#0FEH ;首列扫描字送R2 MOV R3,#00H ;首列键号送R3LINE0:MOV DPTR,#PORTA;DPTR指针指向8155的A口JNZ LIST ;有键按下转逐列25
MOVA,R2 ;首列扫描字送R2 MOVX @DPTR,A ;首列扫描字送8155的A口
MOVDPTR,#PORTC;DPTR指针指向8155的C口
MOVX A,@DPTR ;读入C口的行状态
JB ACC.0,LINE1 ;第0行键无键按下转第1行
MOV A,#00H;第0行有键按下,行首键号送A AJMP TRYK ;求键号MOVA,R2 26
NEXT:INC R3 ;扫描下一列
MOV A,R2 ;列扫描字送A JNB ACC.3,EXIT;4列扫描完,重新进行下一轮扫描
RL A ;4列未扫描完,扫描字左移扫描下一列
MOV R2,A ;扫描字送A AJMPLINE0 ;转向扫描下一列NEXT:INC R3 ;扫描下一列27
EXIT:AJMPKEYSCAN ;等待下一次按键TRYK:ADD A,R3 ;按公式计算键码,求得键号
PUSHACC ;键号入栈保护LETK: ACALLTEST ;等待按键释放
JNZ LETK ;按键未释放,继续等待
POP ACC ;按键释放,键号出栈
RET ;键盘扫描结束,返回EXIT:AJMPKEYSCAN ;等待下一次28TEST: MOV DPTR,#PORTA;DPTR指针指向8155的A口
MOV A,#00H MOVX@DPTR,A;全扫描字00H送8155的A口
MOV DPTR,#PORTC;DPTR指针指向8155的C口
MOVXA,@DPTR ;读入C口行状态
CPL A ;A取反,以高电平表示有键按下
ANL A,#07H ;屏蔽高5位
RET TEST: MOV DPTR,#PORTA;DPTR指针29;**************显示子程序DISPLAY*************DISPLAY: JBF0,DISP;允许时间显示标志F0=1转DISP ACALLSEPA;否则调用SEPA刷新显示缓冲区
DISP:push psw ;动态扫描显示子程序
Push acc setb rs0 MOV dptr,#PORTA;**************显示子程序DISPLAY***30
MOV A,#0FFH MOVX @DPTR,A ;关显示
mov r0,#disp0 mov r7,#00hmov r6,#06h mov r5,#0fehdis1: mov dptr,#tab mov a,@r0 movc a,@a+dptr mov dptr,#portb MOV A,#0FFH31
movx @dptr,a mov dptr,#porta mov a,r5 movx @dptr,ahere: djnz r7,here inc r0 mov a,r5 rl a movx @dptr,a32
mov r5,a djnz r6,dis1 clr rs0 pop acc pop psw rettab: db3fh,06h,5bh,4fh,66h,6dh,7dh,07h db7fh,6fh,77h,7ch,39h,5eh,79h,71h ;共阴极字型码表 mov r5,a33;*****************合字子程序COMB******************COMB:MOVR0,#DISP1;R0指向显示缓冲区小时低位
ACALLCOMB1 ;合字
CJNEA,#24H,CHK ;小时大于24否?CHK:JNC EXIT1 ;大于24则取消本次设置,退出
MOV @R1,A ;否则小时送计时缓冲区
/闹钟值寄存区小时单元
INC R1;*****************合字子程序COMB***34
MOV R0,#DISP3 ;R0指向显示缓冲区分低位
ACALL COMB1CJNE A,#60H,CHK1CHK1:JNC EXIT1 MOV@R1,A INC R1 MOVR0,#DISP5 ;R0指向显示缓冲区秒低位
ACALLCOMB1 CJNE A,#60H,CHK2MOV R0,#DISP3 ;R35
CHK2: JNC EXIT1MOV @R1,A RETEXIT1:AJMP MAIN ;输入不合法退出,重新清零计时COMB1:MOVA,@R0 ANLA,#0FH ;取出低位
MOV 43H,A ;暂存于43H单元
DEC R0 ;指向高位CHK2: JNC EXIT136
MOV A,@R0 ANL A,#0FH SWAP A ;高位送高4位
ORL A,43H ;高低位合并
RET;***************拆字子程序SEPA***************SEPA:PUSHPSW PUSHACC SETB RS0 MOV A,@R037
MOV R0,#DISP5 ;指向显示缓冲区秒低位
MOV A,SEC ACALL SEPA1MOV A,MINACALL SEPA1MOV A,HOURACALL SEPA1POP ACCPOP PSWMOV R0,#DISP5 ;指向显示缓冲区秒38
RETSEPA1:MOV44H,A ;暂存44H ANLA,#0FH ;取出低位
MOV@R0,A ;送显示缓冲区低位
DEC R0 ;指向显示缓冲区高位
MOVA,44H ANL A,#0F0H ;取出高位
SWAP A ;高位送往低4位形成高位数据 RET39
MOV @R0,A ;高位数据送显示缓冲区高位
RET;**************定时比较模块ALARM****************ALARM: MOV A,ASEC CJNE A,SEC,BACK ;秒单元相同则继续比较,否则返回
MOV A,AMIN CJNE A,MIN,BACK ;分单元相同则继续比较,否则返回
MOV A,AHOUR
MOV @R0,A 40
CJNEA,HOUR,BACK;小时单元相同定时时间到
CLR P1.0 ;启动闹钟鸣叫
SETB F1 ;置位闹钟标志BACK:RET;***************定时器0中断服务子程序CLOCK***************CLOCK:MOVTL0,#0B7H MOV TH0,#3CH ;重装初值,时间校正CJNEA,HOUR,B41
PUSH PSW PUSH ACC ;保护现场
INC MSEC MOV A,MSEC CJNE A,#0AH,DONE MOV MSEC,#00H MOV A,SEC INC APUSH P42
DA A ;二—十进制转换
MOV SEC,ACJNE A,#60H,DONEMOV SEC,#00HMOV A,MININC ADA AMOV MIN,ADA A ;二—十进制转换43
CJNE A,#60H,DONE MOV MIN,#00H MOV A,HOUR INC A DA A MOV HOUR,A CJNE A,#24H,DONE MOV HOUR,#00HCJNE A44
DONE: POP ACC POP PSW ;恢复现场
RETIDONE: POP ACC45四、系统调试与脱机运行1.硬件调试(1)脱机检查。(2)联机调试。2.软件调试(1)用仿真器修改显示缓冲区内容,屏蔽拆字程序,调试动态扫描显示功能。(2)运行主程序调试计时模块,不按下任何键,检查是否能从由00:00:00开始正确计时。(3)调试键盘扫描模块KEYSCAN,(4)调试时间设置/闹钟定时模块MODIFY。(5)运行主程序联调,检查能否用键盘修改当前时间以及设置闹钟,能否正确计时、启闹、停闹。3.脱机运行四、系统调试与脱机运行1.硬件调试(1)脱机检查。(2)46泰山学院信息科学技术学院自动化教研室TheEnd!TANKS泰山学院TheEnd!TANKS47谢谢观赏!2020/11/548谢谢观赏!2020/11/548单片机产品设计简资料单片机产品设计简资料单片机产品设计简资料一、设计要求设计并制作出具有如下功能的电脑钟:(1)自动计时,由6位LED显示器显示时、分、秒。(2)具备校准功能,可以直接由0~9数字键设置当前时间。(3)具备定时起闹功能。(4)一天时差不超过1秒钟。单片机产品设计简资料单片机产品设计简资料单片机产品设计简资料49一、
设计要求设计并制作出具有如下功能的电脑钟:
(1)自动计时,由6位LED显示器显示时、分、秒。
(2)具备校准功能,可以直接由0~9数字键设置当前时间。
(3)具备定时起闹功能。
(4)一天时差不超过1秒钟。一、设计要求50二、
总体方案1.计时方案方案一:采用实时时钟芯片。方案二:软件控制。2.键盘/显示方案方案一:串口扩展,LED静态显示。方案二:8155扩展,LED动态显示。显示方式框图
(a)静态显示框图;(b)动态显示框图
二、总体方案显示方式框图
(a)静态显示框图;(b)51三、
硬件设计
1.电路原理图三、硬件设计1.电路原理图522.系统工作流程本电脑钟具备以下功能:
(1)时钟显示:6位LED从左到右依次显示时、分、秒,采用24小时计时。
(2)键盘功能:采用4×3键盘,包括:0~9数字键,键号为00H~09HC/R键时间设定/启动计时键,键号为0AHALM键闹钟设置/启闹/停闹键,键号为0BH(1)时间显示:上电后,系统自动进入时钟显示,从00:00:00开始计时,此时可以设定当前时间。(2)时间调整:按下C/R键,系统停止计时,进入时间设定状态,系统保持原有显示,等待键入当前时间。按下0~9数字键可以顺序设置时、分、秒,并在相应LED管上显示设置值,直至6位设置完毕。系统将自动由设定后的时间开始计时显示。
(3)闹钟设置/启闹/停闹:按下ALM键,系统继续计时,显示00:00:00,进入闹钟设置状态,等待键入启闹时间。按下0~9数字键可以顺序进行相应的时间设置,并在相应LED管上显示设置值,直至6位设置完毕。这将启动定时启闹功能,并恢复时间显示。定时时间到,蜂鸣器鸣叫,直至重新按下ALM键停闹,并取消闹钟设置。2.系统工作流程本电脑钟具备以下功能:53四、软件设计1.系统资源分配地址功能名称初始化值30H~35H显示缓冲区,小时、分、秒(高位在前)DISP0~DISP500H3CH~3FH计时缓冲区,时、分、秒、100msHOUR,MIN,SEC,MSEC00H40H~42H闹钟值寄存区,时、分、秒AHOUR,AMIN,ASECFFH50H~7FH堆栈区
PSW.5计时显示允许位(1:禁止,0:允许)F00PSW.1闹钟标志位(1:正在闹响,0:未闹响)F10电子钟控制软件片内RAM及标志位分配表四、软件设计1.系统资源分配地址功能名称542.软件流程图9.3主程序流程图2.软件流程图9.3主程序流程图55图9.4计时程序流程图图9.4计时程序流程图56图9.5时间设置/闹钟定时流程图
图9.5时间设置/闹钟定时流程图57图9.6键盘设置子程序流程图图9.6键盘设置子程序流程图58图9.7键盘扫描流程图
(4)键盘扫描程序模块KEYSCAN:流程图如图9.7所示。图9.7键盘扫描流程图(4)键盘扫描程59图9.8显示流程图
图9.8显示流程图
60图9.9定时比较流程图图9.9定时比较流程图61ORG 0000HAJMP MAINORG 000BHAJMP CLOCKORG 0030HPORT EQU 8000HPORTAEQU 8001HPORTBEQU 8002H;*****************主程序MAIN******************ORG 0000H;*****************主程62PORTC EQU 8003HDISP0 EQU 30HDISP1 EQU 31HDISP2 EQU 32HDISP3 EQU 33HDISP4 EQU 34HDISP5 EQU 35HHOUR EQU 3CHPORTC EQU 8003H63
MIN EQU 3DHSEC EQU3EHMSEC EQU3FHAHOUR EQU 40HAMIN EQU41HASEC EQU42HF1BITPSW.1MAIN:MOVSP,#50H ;设置堆栈区
MOVXDPTR,#PORT MOV A,#03HMIN EQU 64
MOVX@DPTR,A ;8155初始化
CLR F1 ;清零闹钟标志位
CLR F0 ;允许计时显示
MOV AHOUR,#0FFHMOV AMIN,#0FFHMOV ASEC,#0FFHMOV R7,#10HMOV R0,#DISP0 CLR AMOVX@DPTR,A ;815565LOOP:MOV @R0,AINC R0 DJNZR7,LOOP ;设置初值
MOVTMOD,#01H MOVTL0,#0B0H MOV TH0,#3CH ;定时器0初始化,定时时间100ms SETB TR0 ;启动定时器
SETB EA SETBET0 ;开中断
LOOP:MOV @R0,A66BEGIN:ACALL ALARM ;调用定时比较
ACALL KEYSCAN ;调用键盘扫描
CJNE A,#0AH,NEXT1;是CLR/RST键否?
CLRTR0 ;是则暂时停止计时
MOVR1,#HOUR ;地址指针指向计时缓冲区首地址
AJMP MODBEGIN:ACALL ALARM ;调67NEXT1:CJNEA,#0BH,BEGIN;是ALARM键否?
JB F1,NEXT2 ;闹钟正在闹响否?
MOV R1,#AHOUR;地址指针指向闹钟值寄存区首地址
MOD:SETB F0 ;置位时间设置/闹钟定时标志,禁止显示计时时间
ACALL MODIFY ;调用时间设置/闹钟定时程序
SETB TR0 ;重新开始计时
CLR F0 ;清零时间设置/闹钟定时标志,恢复显示计时时间NEXT1:CJNEA,#0BH,BEGIN;是68
AJMP BEGIN NEXT2:SETB P1.0 ;闹钟正在闹响,停闹
CLR F1 ;清零闹钟标志
AJMP BEGIN;**************时间设置/闹钟定时模块MODIFY************MODIFY:ACALL KEYIN ;调用键盘设置子程序
ACALLCOMB ;调用合字子程序
RET键盘设置子程序KEYIN:KEYIN: PUSH PSW PUSH ACCAJMP BEGIN 69
SETB RS1 ;保护现场
MOV R0,#DISP0 ;R0指向显示缓冲区首地址
MOV R7,#06H ;设置键盘输入次数L1:CLR RS1ACALL KEYSCAN ;调用键盘扫描程序取按下键的键号
SETB RS1CJNE A,#0AH,L2;键入数合法性检测(是否大于9)SETB RS1 ;保护现场70
L2: JNC L1 ;大于9,重新键入
MOV @R0,A ;键号送显示缓冲区
INC R0 DJNZ R7,L1 ;6位时间输入完否?未完继续,否则返回
POP ACC POP PSW CLR RS1 ;恢复现场
RETL2: JNC L1 ;大于9,重新键入71;**********键盘扫描子程序KEYSCAN***********KEYSCAN:ACALL TEST ;调判按键是否按下子程序TESTJNZREMOV;有键按下调消抖延时
ACALL DISPLAY ACALL ALARM AJMPKEYSCAN;无键按下继续判是否按键
REMOV:ACALL DISPLAY;调用显示子程序延时消抖
ACALL TEST ;再判是否有键按下;**********键盘扫描子程序K72
JNZ LIST ;有键按下转逐列扫描
ACALL DISPLAYACALL ALARMAJMP KEYSCAN ;无键按下继续判是否按键
LIST: MOV R2,#0FEH ;首列扫描字送R2 MOV R3,#00H ;首列键号送R3LINE0:MOV DPTR,#PORTA;DPTR指针指向8155的A口JNZ LIST ;有键按下转逐列73
MOVA,R2 ;首列扫描字送R2 MOVX @DPTR,A ;首列扫描字送8155的A口
MOVDPTR,#PORTC;DPTR指针指向8155的C口
MOVX A,@DPTR ;读入C口的行状态
JB ACC.0,LINE1 ;第0行键无键按下转第1行
MOV A,#00H;第0行有键按下,行首键号送A AJMP TRYK ;求键号MOVA,R2 74
NEXT:INC R3 ;扫描下一列
MOV A,R2 ;列扫描字送A JNB ACC.3,EXIT;4列扫描完,重新进行下一轮扫描
RL A ;4列未扫描完,扫描字左移扫描下一列
MOV R2,A ;扫描字送A AJMPLINE0 ;转向扫描下一列NEXT:INC R3 ;扫描下一列75
EXIT:AJMPKEYSCAN ;等待下一次按键TRYK:ADD A,R3 ;按公式计算键码,求得键号
PUSHACC ;键号入栈保护LETK: ACALLTEST ;等待按键释放
JNZ LETK ;按键未释放,继续等待
POP ACC ;按键释放,键号出栈
RET ;键盘扫描结束,返回EXIT:AJMPKEYSCAN ;等待下一次76TEST: MOV DPTR,#PORTA;DPTR指针指向8155的A口
MOV A,#00H MOVX@DPTR,A;全扫描字00H送8155的A口
MOV DPTR,#PORTC;DPTR指针指向8155的C口
MOVXA,@DPTR ;读入C口行状态
CPL A ;A取反,以高电平表示有键按下
ANL A,#07H ;屏蔽高5位
RET TEST: MOV DPTR,#PORTA;DPTR指针77;**************显示子程序DISPLAY*************DISPLAY: JBF0,DISP;允许时间显示标志F0=1转DISP ACALLSEPA;否则调用SEPA刷新显示缓冲区
DISP:push psw ;动态扫描显示子程序
Push acc setb rs0 MOV dptr,#PORTA;**************显示子程序DISPLAY***78
MOV A,#0FFH MOVX @DPTR,A ;关显示
mov r0,#disp0 mov r7,#00hmov r6,#06h mov r5,#0fehdis1: mov dptr,#tab mov a,@r0 movc a,@a+dptr mov dptr,#portb MOV A,#0FFH79
movx @dptr,a mov dptr,#porta mov a,r5 movx @dptr,ahere: djnz r7,here inc r0 mov a,r5 rl a movx @dptr,a80
mov r5,a djnz r6,dis1 clr rs0 pop acc pop psw rettab: db3fh,06h,5bh,4fh,66h,6dh,7dh,07h db7fh,6fh,77h,7ch,39h,5eh,79h,71h ;共阴极字型码表 mov r5,a81;*****************合字子程序COMB******************COMB:MOVR0,#DISP1;R0指向显示缓冲区小时低位
ACALLCOMB1 ;合字
CJNEA,#24H,CHK ;小时大于24否?CHK:JNC EXIT1 ;大于24则取消本次设置,退出
MOV @R1,A ;否则小时送计时缓冲区
/闹钟值寄存区小时单元
INC R1;*****************合字子程序COMB***82
MOV R0,#DISP3 ;R0指向显示缓冲区分低位
ACALL COMB1CJNE A,#60H,CHK1CHK1:JNC EXIT1 MOV@R1,A INC R1 MOVR0,#DISP5 ;R0指向显示缓冲区秒低位
ACALLCOMB1 CJNE A,#60H,CHK2MOV R0,#DISP3 ;R83
CHK2: JNC EXIT1MOV @R1,A RETEXIT1:AJMP MAIN ;输入不合法退出,重新清零计时COMB1:MOVA,@R0 ANLA,#0FH ;取出低位
MOV 43H,A ;暂存于43H单元
DEC R0 ;指向高位CHK2: JNC EXIT184
MOV A,@R0 ANL A,#0FH SWAP A ;高位送高4位
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年汽车维修工考试职业前景
- 2024年宠物营养师专业知识考核试题及答案
- 小学一年级语文知识拓展试题及答案
- 美容师考试相关职业影响分析与公务员省考试题及答案
- 2024年统计学考试复习讲义与试题答案
- 2024-2025公司及项目部安全培训考试试题(4A)
- 古代文学中对生命的思考试题及答案
- 2025新版车间安全培训考试试题(ab卷)
- 2024-2025员工三级安全培训考试试题及1套参考答案
- 25年公司、项目部、各个班组三级安全培训考试试题答案各地真题
- 压裂施工安全操作规定(正式)
- 生理卫生教学【青春期男生性教育】走向成熟课件
- 人工呼吸的三种方式和操作方法课件
- 项目基坑坍塌事故专项应急预案桌面演练脚本
- 危险化学品MSDS(氮气)
- 无创通气常用模式与参数调节
- 清远市城市树木修剪技术指引(试行)
- GB∕T 8427-2019 纺织品 色牢度试验 耐人造光色牢度:氙弧
- 退休人员实行社区管理申请书
- 全国同等学力工商管理大纲重点整理
- 机耕道监理实施细则完整
评论
0/150
提交评论