第一范文网 - 专业文章范例文档资料分享平台

基于单片机的多路数字温度测量系统设计

来源:用户分享 时间:2025/9/18 11:08:54 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

六、附录:

1.系统程序:

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

;常数定义

;**************************************************************** TMEL EQU 0E0H ;20ms,定时器0时间常数 TMEH EQU 0B1H TMEPHEAD EQU 36H

;**************************************************************** ;工作内存定义

;**************************************************************** BITST DATA 20H TIMEISOK BIT BITST.1 TEMPONEOK BIT BITST.2 TEMPL DATA 26H TEMPH DATA 27H TEMPHC DATA 28H TEMPLC DATA 29H

;**************************************************************** ; 引脚定义

;**************************************************************** TEMPDIN BIT P3.7

;**************************************************************** ; 中断向量区

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

ORG 000H LJMP START

ORG 00BH LJMP T0IT

;**************************************************************** ;系统初始化

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

16

ORG 100H

START: MOV SP,#60H CLSMEM: MOV R0,#20H MOV R1,#60H CLSMEM1: MOV @R0,#00H INC R0

DJNZ R1,CLSMEM1

MOV TMOD,#00100001B MOV TH0,#TIMEL MOV TL0,#TIMEH SJMP INIT ERROR: NOP

LJMP START NOP INIT: NOP

SETB ET0 SETB TR0 SETB EA MOV PSW,#00H CLR TEMPONEOK LJMP MAIN

;**************************************************************** ; 定时器0中断服务程序

;**************************************************************** T0IT: PUSH PSW MOV PSW,#10H MOV TH0,#TIMEH MOV TL0,#TIMEL INC R7

CJNE R7,#32H,T0ITI MOV R7,#00H SETB TIMEISOK TOIT1: POP PSW

17

RETI

;**************************************************************** ; 主程序

;**************************************************************** MAIN: LCALL LM35_1

JNB TIME1SOK,MAIN CLR TIME1SOK JNB TEMPONEOK,MAIN2 LCALL READTEMP1 LCALL CONVTEMP LCALL LM35_1

MAIN2: LCALL READTEMP SETB TEMPONEOK LJMP MAIN

;**************************************************************** ;子程序区

;**************************************************************** ; RESETLM35

;**************************************************************** INILM35: SETB TEMPDIN NOP NOP

CLR TEMPDIN MOV R6,#0A0H DJNZ R6,$ MOV R6,#0A0H DJNZ R6,$ SETB TEMPDIN MOV R6,#32H DJNZ R6,$ MOV R6,#3CH

LOOPLM35: MOV C,TEMPDIN JC INILM35UT DJNZ R6,LOOPLM35

18

MOV R6,#064H DJNZ R6,$ SJMP INILM35 RET

INILM35UT: SETB TEMPDIN RET

; **************************************************************** ; 读LM35的程序,从LM35中读出一个字节的数据

; **************************************************************** READLM35: MOV R7,#08H SETB TEMPDIN NOP NOP

READLM35LOOP: CLR TEMPDIN NOP NOP NOP

SETB TEMPDIN MOV R6,#07H DJNZ R6,$ MOV C,TEMPDIN MOV R6,#3CH DJNZ R6,$ RRC A SETB TEMPDIN DJNZ R7,READLM35LOOP MOV R6,#3CH DJNZ R6,$ RET

; **************************************************************** ; 写LM35的程序,从LM35中写一个字节的数据

; **************************************************************** WRITELM35: MOV R7,#08H SETB TEMPDIN

19

基于单片机的多路数字温度测量系统设计.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c49rfs4jyfh48fsc2ak6h_5.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top