专栏中心

EEPW首页 > 专栏 > 汇编的温度传感器

汇编的温度传感器

发布人:0750long 时间:2010-02-02 来源:工程师 发布文章
汇编的温度传感器

 

 

;============功能提要=============
;为18B20温度器进行数码管显示温度。
;本课重点、难点:18B20协议。
;=================================
LSB DATA 29H
MSB DATA 28H
YS1 DATA 30H
YS2 DATA 31H
ZS  DATA 32H
BUF DATA 33H
DQ  BIT P3.7
ORG 0000H
;----------------主程序----------------------
MAIN:    MOV SP,#80H
LOOP:    LCALL DUWEN    ;读温度程序
         LCALL ZHENGHE  ;对读出的温度进行整合
         LCALL BCD
         LCALL YHDTSM
         SJMP LOOP
;-----------------结束-----------------------
DUWEN:   ACALL FUWEI
         JB F0,CUNZHI
         RET
CUNZHI:  MOV A,#0CCH
         ACALL XIE
         MOV A,#44H
         ACALL XIE
         ACALL FUWEI
         MOV A,#0CCH
         ACALL XIE
         MOV A,#0BEH
         ACALL XIE
         ACALL DUCHU
         RET
ZHENGHE: MOV A,LSB
         MOV C,28H.0
         RRC A
         MOV C,28H.1
         RRC A
         MOV C,28H.2
         RRC A
         MOV C,28H.3
         RRC A
         MOV ZS,A
         RET
;----------显示部分---------------
BCD:     MOV A,ZS
         MOV B,#10
         DIV AB
         MOV BUF,B
         MOV B,#10
         DIV AB
         MOV BUF+1,B
         RET
YHDTSM:  MOV R5,#0
         MOV R0,#BUF
LYH1:    MOV P2,R5
         LCALL CB
         INC R5
         CJNE R0,#BUF+2,LYH1
         RET
CB:      MOV DPTR,#TABLE
         MOV A,@R0
         MOVC A,@A+DPTR
         MOV P0,A
         LCALL D5MS
         INC R0
         RET
;----------温度协议---------------
FUWEI:   CLR DQ          ;进行拉低复位
         MOV R2,#250     ;复位时间最少为480us
         DJNZ R2,$       ;实际延时500us
         SETB DQ         ;复位完后拉高
         MOV R2,#25      ;做50us等待18B20响应
LFU1:    JNB DQ,BIAOZHI  ;有回应进行18B20存在处理
         DJNZ R2,LFU1
         CLR F0
         SJMP TFU1       ;无回应返回
BIAOZHI: SETB F0
         MOV R2,#120
         DJNZ R2,$
TFU1:    SETB DQ
         RET
XIE:     MOV R3,#8       ;进行写协议
LXI1:    CLR DQ
         MOV R2,#6
         DJNZ R2,$
         RRC A
         MOV DQ,C
         MOV R2,#23
         DJNZ R2,$
         SETB DQ
         DJNZ R3,LXI1
         RET
DUCHU:   MOV R4,#2
         MOV R1,#LSB
LDU2:    MOV R3,#8
LDU1:    CLR DQ
         NOP
         SETB DQ
         MOV R2,#9
         DJNZ R2,$
         MOV C,DQ
         MOV R2,#21
         DJNZ R2,$
         RRC A
         SETB DQ
         DJNZ R3,LDU1
         MOV @R1,A
         DEC R1
         DJNZ R4,LDU2
         RET
;----------延时程序---------------
D5MS:    MOV YS1,#5
D1:      MOV YS2,#250
         DJNZ YS2,$
         DJNZ YS1,D1
         RET
TABLE:
DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H
END

专栏文章内容及配图由作者撰写发布,仅供工程师学习之用,如有侵权或者其他违规问题,请联系本站处理。 联系我们

关键词:

相关推荐

近百家PLC厂商亮相工博会,虚拟PLC成AI落地新引擎

电子科技大学--嵌入式系统应用开发技术05

电子科技大学--嵌入式系统应用开发技术08

网卡芯片RTL8019AS中文翻译资料

使用电化学传感器的低噪声、单电源有毒气体探测器,集成可编程增益TIA,可用于快速原型制作

一可视化程度更高的自动化环境Tornado Tools描述文件

一种基于Java技术的信息家电远程控制方法的实现

SiC MOSFET界面陷阱检测升级:Force-I QSCV方法详解

测试测量 2025-09-29

电子科技大学--嵌入式系统应用开发技术07

​FM生成技术:已解决的示例

抢占百万工程师市场:世强硬创免费仓储服务限时上线

国际视野 2025-09-29

电子科技大学--嵌入式系统应用开发技术06

DSP通讯问题

luden 2005-09-12

电子科技大学--嵌入式系统应用开发技术04

天工驱动,开物共生:构建具身智能产业新生态

泰瑞达荣获2025年台积电Open Innovation Platform(OIP)年度合作伙伴大奖

​Armstrong的调频生成方法

诊断和分析工具WindView2.0描述文件

锁相环CD4046应用介绍

从芯片到智能网络,全面验证O-RAN无线连接

深入解析Arm Zena CSS:面向AI定义汽车的计算平台

更多 培训课堂
更多 焦点
更多 视频

技术专区