繁体中文
设为首页
加入收藏
当前单片机技术首页 >-精典单片机资料 >> 温度传感器ds1820 的汇编程序

温度传感器ds1820 的汇编程序 (1)

2008-10-03 00:02:19  作者:  来源:网络  浏览次数:174  文字大小:【】【】【
温度传感器ds1820 的汇编程序温度传感器ds1820 的汇编程序-单片机技术,
 
晶振:12M
TEMPER_L EQU 36H
TEMPER_H EQU 35H
TEMPER_NUM EQU 60H
FLAG1 BIT 00H
DQ BIT P3.3

AAA:MOV SP,#70H
LCALL GET_TEMPER
LCALL TEMPER_COV
LJMP AAA
NOP
;------------------读出转换后的温度值
GET_TEMPER:
SETB DQ ; 定时入口
BCD:LCALL INIT_1820
JB FLAG1,S22
LJMP BCD ; 若DS18B20不存在则返回

S22:LCALL DELAY1
MOV A,#0CCH ; 跳过ROM匹配------0CC
LCALL WRITE_1820
MOV A,#44H ; 发出温度转换命令
LCALL WRITE_1820
NOP
LCALL DELAY
LCALL DELAY
CBA:LCALL INIT_1820
JB FLAG1,ABC
LJMP CBA
ABC:LCALL DELAY1
MOV A,#0CCH ; 跳过ROM匹配
LCALL WRITE_1820
MOV A,#0BEH ; 发出读温度命令
LCALL WRITE_1820
LCALL READ_18200 ;READ_1820
RET
;------------------读DS18B20的程序,从DS18B20中读出一个字节的数据
READ_1820:
MOV R2,#8
RE1:
CLR C
SETB DQ
NOP
NOP
CLR DQ
NOP
NOP
NOP
SETB DQ
MOV R3,#7
DJNZ R3,$
MOV C,DQ
MOV R3,#23
DJNZ R3,$
RRC A
DJNZ R2,RE1
RET

;-------------------写DS18B20的程序
WRITE_1820:
MOV R2,#8
CLR C
WR1:
CLR DQ
MOV R3,#6
DJNZ R3,$
RRC A
MOV DQ,C
MOV R3,#23
DJNZ R3,$
SETB DQ
NOP
DJNZ R2,WR1
SETB DQ
RET
;-------------------读DS18B20的程序,从DS18B20中读出两个字节的温度数据
READ_18200:
MOV R4,#2 ; 将温度高位温度传感器ds1820 的汇编程序温度传感器ds1820 的汇编程序-单片机技术电子技术信息港

[1] [2] [3]

相关文章
 

最新文章

更多

· 简易信号发生器源程序(51)

推荐文章

更多

· 基于ST72单片机的快速充...
· 简易信号发生器源程序(51)
· TMS320C203在高性价比、...

热点文章

更多

· [转帖]关于ARM启动的一篇...
· TMS320C203在高性价比、...
· 学习AVR(十四) 系统时...
· 平凡单片机教学——第十...
· Quartus II 6.0工具应对...
· 简易信号发生器源程序(51)
· 基于ST72单片机的快速充...