机电课程设计-------温度巡回检测仪
设有9个按钮,1-8为通道号,9为返回
电路图如下:
3.5时钟模块
本电路中采用的是时钟芯片DS1302,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能,按要求只需时、分、秒进行计时。工作电压为2.5V~5.5V,对采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。DS1302内部有一个31×8的用于临时性存放数据的RAM寄存器。 电路图如下:
其中Vcc1为后备电源,VCC2为主电源。X1和X2是振荡源,外接32.768kHz晶振。RST是复位/片选线,通过把RST输入驱动置高电平来启动所有的数据传送。RST输入有两种功能:
温度巡回检测仪 11 机电课程设计-------温度巡回检测仪
首先,RST接通控制逻辑,允许地址/命令序列送入移位寄存器;其次,RST提供终止单字节或多字节数据的传送手段。当RST为高电平时,所有的数据传送被初始化,允许对DS1302进行操作。如果在传送过程中RST置为低电平,则会终止此次数据传送,I/O引脚变为高阻态。
四.软件设计
4.1主程序 流程图见右:
程序初始化 温度数值转化 时钟显示
温度显示 4.1主程序: ORG 0000H SJMP START ORG 0003H AJMP INTR0 ORG 0040H
START: MOV A,#0C7H ;开放行(行输出全为0)
开始 键码检测 温度采集 30H是否为0 返回键是否按下
MOV P1,A CLR P3.3
CLR IT0 ;电平触发 MOV IE,#81H ;开放INT0中断
温度巡回检测仪 12 机电课程设计-------温度巡回检测仪
MOV 30H, #00H ;设定时钟初值
MOV SECOND,#00H MOV HOUR,#12H LCALL SET1302 LCALL GET1302 LCALL DISPLAY
;工作方式1
MOV MINUTE,#00H
MAIN: MOV R5,#25 MOV TMOD,#01H MOV TL0,#0C0H SETB TR0
LP1: MOV A, 30H JNZ SHOWTEM
JBC TF0,LP2 ;查询计数溢出
;重新置定时器初值
SJMP LP1 ;未到40 ms继续计数 LP2: MOV TH0,#63H MOV TL0,#0C0H
LCALL DISPLAY ;显示
DJNZ R5,LP1 ;未到1 S继续循环
LCALL GET1302 ;每过1s从DS1302读取一次时间 MOV R5,#25 SJMP LP1 SHOWTEM: MOV A, 30H JZ LP1
4.2时钟显示程序:
T_CLK Bit P3.4 ;实时时钟时钟线引脚 T_IO Bit P3.5 ;实时时钟数据线引脚 T_RST Bit P3.1 ;实时时钟复位线引脚 SECOND EQU 50H ;秒寄存器 MINUTE EQU 51H ;分寄存器 HOUR EQU 52H ;时寄存器
子程序名:DISPLAY 功 能:显示程序
温度巡回检测仪 13 MOV TH0,#63H ;置定时器初值(定时40ms)
;启动定时器0
机电课程设计-------温度巡回检测仪
调 用:CHAG,DELAY 影响资源: A R2 R3 R6 R7
DISPLAY:
MOV DPTR, #7FFFH MOV A, #80H
MOVX @DPTR,A ;设置8255控制字 MOV R3,SECOND LCALL CHAG MOV DPTR, #7FFDH MOV A, #0FEH MOVX @DPTR, A MOV DPTR, #7FFCH MOV A, R2 MOVX @DPTR, A LCALL DELAY MOV DPTR, #7FFDH MOV A,#0FDH MOVX @DPTR, A MOV DPTR, #7FFCH MOV A, R3
MOVX @DPTR, A
LCALL DELAY MOV R3, MINUTE LCALL CHAG MOV DPTR, #7FFDH
MOV DPTR, #7FFDH
MOV A,#0FBH MOVX @DPTR, A MOV DPTR, #7FFCH MOV A, R2 MOVX @DPTR, A
LCALL DELAY
MOV A,#0F7H MOVX @DPTR,A
MOV DPTR, #7FFCH
温度巡回检测仪 14 机电课程设计-------温度巡回检测仪
MOV A, R3 MOVX @DPTR, A
LCALL DELAY MOV R3, HOUR LCALL CHAG MOV DPTR, #7FFDH
MOV DPTR, #7FFDH
MOV A, #0DFH MOVX @DPTR,A MOV DPTR, #7FFCH MOV A, R3 MOVX @DPTR, A MOV A,#0EFH MOVX @DPTR, A MOV DPTR, #7FFCH MOV A, R2 MOVX @DPTR, A
LCALL DELAY
LCALL DELAY RET 子程序名:DELAY 功 能:延时程序 影响资源: R6 R7
DELAY: MOV R7,#50 D1: MOV R6,#10 D2: DJNZ R6,$
DJNZ R7,D1
RET 子程序名:CHAG
功 能:将R3中数据拆分,低字节放入R2,高字节放入R3 影响资源: A R2 R3
CHAG: PUSH ACC
;低字节放入R2,高字节放入R3
MOV A,R3 ANL A,#0FH
温度巡回检测仪 15