机电课程设计-------温度巡回检测仪
MOV R2,A MOV A,R3 SWAP A ANL A,#0FH MOV R3,A
MOV DPTR,#DATATAB MOV A,R2 MOVC A,@A+DPTR MOV R2,A MOV A,R3 MOVC A,@A+DPTR MOV R3,A RET
POP ACC
DATATAB: DB 0B7H,90H,3DH,0B9H,9AH,0ABH,0AFH,0B0H,0BFH,0BBH
****************************************************************************** 子程序名:Set1302
功 能:设置DS1302 初始时间,并启动计时。 调 用:RTInputByte
入口参数:初始时间在:Second,Minute,Hour,Day,Month,Week.Year (地址连续。起始80H) 影响资源:A B R0 R1 R7 SET1302:
CLR T_RST CLR T_CLK SETB T_RST
;控制寄存器 ;写操作前WP=0
MOV B, #8EH LCALL RTInputByte MOV B, #00H LCALL RTInputByte SETB T_CLK CLR T_RST MOV R0, #Second; MOV R7, #7 ; MOV R1, #80H S13021: CLR T_RST CLR T_CLK SETB T_RST MOV B, R1
;秒写地址
;写秒 分 时
LCALL RTInputByte
温度巡回检测仪 16 机电课程设计-------温度巡回检测仪
MOV A, @R0 MOV B, A
;写秒数据
LCALL RTInputByte INC R0 INC R1 INC R1 SETB T_CLK CLR T_RST DJNZ R7, S13021 CLR T_RST CLR T_CLK SETB T_RST MOV B, #8EH LCALL RTInputByte MOV B, #80H LCALL RTInputByte SETB T_CLK CLR T_RST RET
子程序名:GET1302 功 能:从DS1302 读时间
调 用:RTInputByte,RTOutputByte
入口参数:时间保存在:Second,Minute,Hour,Day,Month,Week.YearL 影响资源:A B R0 R1 R4 R7 GET1302:
MOV R0, #SECOND; MOV R7, #7 MOV R1, #81H CLR T_RST CLR T_CLK SETB T_RST MOV B, R1
;秒 分 时
LCALL RTInputByte LCALL RTOutputByte MOV @R0, A INC R0 INC R1 INC R1
温度巡回检测仪 17 ;控制寄存器 ;控制,WP=1,写保护
;秒地址
G13021:
;秒
机电课程设计-------温度巡回检测仪
SETB T_CLK CLR T_RST DJNZ R7, G13021 RET
****************************************************************************** 子程序名:RTInputByte
功 能:写1302一字节 (内部子程序) 影响资源:A B R4 RTInputByte:
MOV R4, #8 RRC A MOV B, A MOV T_IO, C SETB T_CLK CLR T_CLK DJNZ R4, Inbit1 RET
Inbit1: MOV A, B
****************************************************************************** 子程序名:RTOutputByte
功 能:读1302一字节 (内部子程序) 影响资源:A R4 RTOutputByte:
4.3键盘输入模块
流程图见下:
MOV R4, #8 RRC A SETB T_CLK CLR T_CLK DJNZ R4, Outbit1 RET
Outbit1: MOV C, T_IO
温度巡回检测仪 18 机电课程设计-------温度巡回检测仪
采用3*3的矩阵式键盘,各列分别接P1.3,P1.4,P1.5,各行分别接P1.0,P1.1,P1.2
设有9个按钮,1-8为通道号,9为返回
电路图如下:
温度巡回检测仪 19 机电课程设计-------温度巡回检测仪
行列式键盘电路图:
键盘扫描原理简介(图):
温度巡回检测仪 20