|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
本帖最后由 CCxiaom 于 2020-3-16 12:07 编辑 6 x% D+ Y. i( _
9 w* q5 O2 ?: F) Y% M* p( n摘要:介绍了单总线测温器件DS18B20及其与ATmega8单
, ?( A* C! u d$ K片机共同组成单总线测温系统的接口方法,并给出了其核
0 M1 v, D2 R% u& e心的μS级软件延时的C语言源程序和对DS18B20进行操
: A; @# N5 w$ }9 B! o g* ^作的程序框图,以及利用C语言实现接口软件的方法以及5 U. S9 \" ?: E: p( A3 `, j4 O% B
使用时的技巧和需要注意的一些问题。) i- K$ V5 [4 s
9 s- R, F: U! `, O关键词:单总线;单片机;嵌入式C/ k3 r/ T) C7 E9 D
! Q( b, j' B, N& |: Z% P
1引言
/ I' z$ Q( H, y( q& C8 k工业生产过程中,普遍存在着需要进行温度测量
# |. A7 u I ^) x2 C( c的场合。利用单片机和温度传感器组成的专用测温系: \0 o+ o$ @' J! t
统由于具有结构简单、工作可靠、价格低廉的优势,而+ F! X, x) Y5 a3 c5 ^9 ]
得到了广泛的应用。
! A) L2 ^' t! N! z u+ N( p目前市场上单片机种类繁多,各具优势, ATMEL
& n p. @' Q8 }/ ^& m9 Z公司生产的mega8单片机无疑是其中较为典型的一: e4 J% ?- h, a1 O {( A( U' `1 x" [
种,它的内部集成了较大容量的存储器和丰富强大的
) `; L% f, c" w* z# M# ?硬件接口电路,如定时/计数器、实时时钟、PWM通道、; Z, u$ A$ T& `) g! g3 _6 c
A/D转换器、I2C的串行接口、可编程的串行USART# k6 B; M$ n4 H9 m6 Q" E
接口、SPI串行接口和带片内晶振的可编程看门狗定% t( B# J8 f5 ~- P
时器以及片内的模拟比较器等,除传感器外几乎可以
' C* U/ t7 ~" q" `- O) U2 W不需要其它任何元件独立而构成系统。它具有AVR
d0 r6 k' P0 I( K2 t高档单片机MEGA系列的全部特点,而价格仅与低档
0 s$ ~" b7 p6 d& Z' R# p% q单片机相当且系统二次开发极为方便,性价比极高。
2 \; v) n, N0 v4 A另外,由于采用了单周期指令模式,它具有极高的运
6 s4 N( k e- x J/ e4 @) I行速度,可达到1MIPS/MHz,比AT89C51高出10倍。5 K9 N/ V C0 Y8 A# U' P2 ?
并且在省电性能、稳定性、抗干扰性能和灵活性方面9 v7 G; q6 O$ N3 O: I6 t
极具特色。在产品应用市场上具有强大的竞争力,因( J$ s3 o# b. V* {2 m$ }$ I
而在工业测控领域中得到了广泛的应用。
7 K( J% [+ Q; z7 g3 T [& W
) L1 U% d5 G6 j# p5 g" CDS18B20是美国DALLAS半导体器件公司在其+ B( M6 b) U! G7 S8 Z4 Z
前代产品DS1820的基础上最新推出的单线数字化智 i! ^( I+ k Z( B! n$ D! o' x
能集成温度的传感器,其全部传感元件及转换电路集* S. R$ N7 T- a- X$ z
成在形如一只三极管的集成电路内。与其它温度传感
# B3 P1 y1 F2 F8 _6 E8 t, ?) ~! w器相比,DS18B20具有以下特性:①独特的单线接口
' f7 v4 g/ l" i方式,DS1820在与微处理器连接时仅需要一条接口线! l( o; j3 n; A* X, W6 X! I3 J3 b. j& F
即可实现微处理器与DS18B20的双向通讯。②
/ A% l+ p0 \8 P/ d: ?DS18B20支持多点组网功能,多个DS18B20可以并联* x6 l9 h+ R' b+ @+ k
在唯一-的信号线上,实现多点测温。③DS18B20在使4 _& F" n# Y9 d$ f# x1 Z
用中不需要任何外围元件。④测温范围-55C-+9 ~2 f+ n8 s' `6 n; Q- m4 o
125C,固有测温分辨率0.625C。⑤测量结果以9~12
2 B2 ]: m% U1 p" Y位数字量方式串行传送。
; K6 i. v# ?; z2 b7 t; n X2 Atmega8单片机与单总线测温器件: `8 u0 T) t# y; U# Y+ Z1 Q" o$ {
DS18B20的接口及其操作时序
. k. W' P/ }- w+ UDS18B20内部结构主要由四部分组成:64位光刻
. ?# K6 a+ n6 y% [& `' ^3 m" E/ fROM、温度传感器、非挥发的温度报警触发器TH/TL
+ D% G! u2 j5 C0 m和配置寄存器。. R: }# A8 ~( G
光刻ROM中的64位序列号是出厂前被光刻好
% I- d7 J" v7 k5 D8 ^' ~, F& \/ @的,可视作是DS18B20的地址序列码。光刻ROM的作
* v1 N7 O6 J8 a0 z; Y* U用是使每一个DS18B202 x( c1 m3 }' g Y% M: O
都各不相同,以实现一根总线上挂接多个9 e$ o! F5 Y6 k- l- B
DS18B20的目的。9 i! s9 M, A, }( n% e/ n; p
DS18B20温度传感器的内部存储器包括--个高3 B7 q; ^: `! r5 r0 @4 q+ V
速暂存RAM和一个非易失性的可电擦除的E2PROM,3 c* v( ~1 Q, k/ C
后者存放高/低温度触发器TH/TL和结构寄存器。暂3 E! q6 V4 s3 W
存存储器包含了8个连续字节,前两个字节是测得的2 A* ^; |' o8 X" O* K4 f' r
温度信息,第一个字节的内容是温度的低八位,第二
0 V% }* N2 a" o$ N( `+ e/ X个字节是温度的高八位。第三个和第四个字节是TH/
9 ]; @+ c7 l3 CTL的易失性拷贝,第五个字节是结构寄存器的易失性
]) a1 }, U5 W) R. g) p拷贝,这三个字节的内容在每一次上电复位时即被刷& `, ]3 k4 o* [; Z/ R3 F4 S" G) N
新。% w* P) r6 P3 L4 r
第六、七八个字节用于内部计算。第九个字节是
# w. M4 [: w' P( S冗余检验字节。
+ q, C4 X. L1 {, R) y8 |+ p4 H3 ZDS18B20中的温度传感器对温度的测量结果用+ [1 s$ Y e7 s D8 r( J; a
16位符号扩展的二进制补码读数形式提供,当转换精
+ Q O v% c; _0 K" e6 i度为12位时,则所得测量结果中前5位s为符号位,# g) V: k {' D2 h& O
如果测得的温度大于0C时,,S 均为0,否则为1。后111 d- h1 _% h' H* N7 q
位为数据位,分辨率为0.0625C/LSB,只要将测到的数
. C; }% a& P9 G# l) L值乘于0.0625即可得到实际温度。
- l( X* D4 p% a9 B. R: s5 }2 G- ?: E# p
! W7 b% U0 n+ p+ m4 B: t
- n# L3 n7 y5 _' O
附近下载: |
|