淮阴工学院毕业设计说明书(论文)
MOV 6DH,A CLR 00H POP PSW POP ACC RETI
;
;清溢出标志
;堆栈恢复 ;
;中断返回
第 26 页 共 45 页
;******************************************************************** ;INTT1 PROGRAM
;T1计数器中断服务程序。(计数器T1由外中断1输入控制,当为高电平时计时开始)
;******************************************************************** INTT1: PUSH ACC
;堆栈保护
;
;6CH计时单元加1 ; 移入A
; 不等于0转INTT11 ;进位,6DH单元加1 ; 移入A
; 不等于0转INTT11 ;计时器溢出,置溢出标志
PUSH PSW INC 6CH
MOV A,6CH JNZ INTT11 INC 6DH
MOV A,6DH JNZ INTT11 SETB 00H
INTT11: POP PSW
POP ACC RETI
; 恢复堆栈
;
;中断返回
;**************************************** ;DISPLAY S ;里程显示控制程序
;****************************************
DISPLAYS: SETB P1.3 ;点亮LED1(显示里程状态)
CLR P1.7 ;关闭速度指示灯 LCALL SSS
;将圈数转为公里数
;显示公里数据
LCALL DISPLAY
淮阴工学院毕业设计说明书(论文)
LJMP START0
;跳回START0
;****************************************** ;DISPLAY V ;速度显示控制程序
;*******************************************
DISPLAYV: CLR P1.3 ;关闭 LED1(里程)灯
第 27 页 共 45 页
SETB P1.7 ;点亮LED2(显示时速状态) LCALL VVV
;每圈时间换算为Km/h程序
;将十位数(BCD码)值移入A ;与预定报警值比较
MOV A,71H SUBB A,#02H JNC WARING SETB P3.4
;时速超过20时报警
;关报警灯
V1: LCALL DISPLAY
RET
;子程序返回
;报警灯LED3点亮(并鸣叫) ;转V1退出
WARING: CLR P3.4
AJMP V1
;************************************************************ ;VIICWRITR
;归一化EEPROM存入程序(12MHZ时钟),存入数在50H起单元 ;************************************************************* VIICWRITE: ACALL WMOV9
MOV SLA , #SLAW MOV NUMBYT ,#09H LCALL WRNBYT RET
WMOV9: MOV 5FH,#50H
MOV R0,#MTD MOV R1,#5FH MOV R2,#09H
WMOV: MOV A,@R1
淮阴工学院毕业设计说明书(论文)
MOV @R0,A INC R0 INC R1
第 28 页 共 45 页
DJNZ R2,WMOV RET
;************************************************************** ;VIICREAD
; 归一化EEPROM读出程序(12MHZ时钟),读出数在60H-67H单元
;***************************************************************** VIICREAD: MOV MTD,#50H
MOV SLA,#SLAW MOV NUMBYT,#01H LCALL WRNBYT MOV SLA,#SLAR MOV NUMBYT,#08H LCALL RDNBYT ACALL RMOV8 RET
RMOV8: MOV R0,#MRD
MOV R1,#60H MOV R2,#08H
RMOV: MOV A,@R0
MOV @R1,A INC R0 INC R1 DJNZ R2,RMOV RET
;****************************************** ;VIIC PROGRAM
;I2C串行归一化存储子程序
淮阴工学院毕业设计说明书(论文)
;**************************************** STA: SETB VSDA
SETB VSCL 第 29 页 共 45 页
NOP NOP NOP NOP
CLR VSDA NOP
CLR VSDA NOP NOP NOP NOP
CLR VSCL RET
STOP: CLR VSDA
SETB VSCL NOP NOP NOP NOP
SETB VSDA NOP NOP NOP NOP
CLR VSDA CLR VSCL RET
淮阴工学院毕业设计说明书(论文)
MACK: CLR VSDA
SETB VSCL 第 30 页 共 45 页
NOP NOP NOP NOP
CLR VSCL SETB VSDA RET
MNACK: SETB VSDA
SETB VSCL NOP NOP NOP NOP
CLR VSCL CLR VSDA RET
CACK: SETB VSDA
SETB VSCL CLR F0 MOV C,VSDA JNC CEND SETB F0
CEND: CLR VSCL
RET
WRBYT: MOV R0,#08H WLP: RLC A
JC WR1 AJMP WR0