|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
& q9 O8 d( u! ^% q& f
摘要:介绍了一种基于温度传感器DS1820、单片机P89LV51RD2和SD卡来对温度进行采
9 K& T+ m; T9 \* b集、显示和存储的控制处理设计方案与实现方法,重点介绍了P89LV51RD2的新特性及其SPI
2 G# c. _8 W/ l工作模式,给出了P89LV51RD2的管脚连接配置以及SD卡的数据传输过程,最后简要说明了7 t0 u. v2 W7 l& G' S( {/ z4 F
系统程序的设计流程。
& X4 j' V4 O" B7 P4 H" j# ]关键词:温度传感器; DS1820; 单片机; P89LV51RD2; SD卡;温度控制 V0 w% i+ Y4 g" L
0引言
, ^- o# A% x& m+ V+ s% a温度是一种最基本的环境参数。人们日常生& s2 r5 p1 e7 }6 E# P5 e+ ?
活与温度息息相关,工业生产中需要对温度进行
/ n0 T0 v7 c7 y8 ?& d* c: T* ]* a监控,农业方面需要参考温度来进行生产,可! g) V1 U, {/ w! t
见,温度在许多方面都起着重要的作用。因此,+ l$ \) W( k1 w1 m, I% g
对温度进行测量,并将数据进行存储,以备将来# a3 h1 }* {7 w" U
参考使用具有重要意义。+ ]5 C- I) l. j
为此,本文将设计一个较为简易,成本较$ S* _1 K# [: C/ a5 l
低,能实时监控并显示温度,使用方便的温度采7 W% c" {0 U0 b" F) u/ H
集控制系统。其中,温度的采集工作主要由温度
6 o& s* w7 T, t+ {" A# S' J传感器DS1820来完成,而采集到的温度数据则存! }3 E1 M6 ]/ y
于目前比较流行的SD卡中。而控制与转换处理功+ R6 F, H. I; U
能则采用新款单片机P89LV51RD2来实现,温度
) i* J' @; S1 ?4 m; _1 I) t的显示由锁存器74LV377驱动三片数码管来实现。
' w8 y. t7 e( G+ T7 L本文首先介绍了控制处理系统设计的原理,接着
/ K6 a; g9 R" d- c/ Z+ T给出了硬件的连接和系统的配置方法,最后介绍0 p+ ?$ Z" h' f6 S- b$ [" ]; ]
了软件程序的编写方法。( A- o- R: d3 _8 a# [5 {4 F1 R, k
1温度控制处理 系统设计
7 c; {2 |' C6 D图1给出了一个温度控制与处理系统的实现2 M- ?# j2 M& v& j6 l C7 F
原理框图。系统中的硬件主要包括温度传感器6 @7 {- G# \! `- t
DS1820、单片机P89LV51RD2、SD卡、锁存器
+ e N- `- E1 v! ]5 r+ F2 V9 v2 H) E74LV77以及数码管。系统工作时,先由温度传感% [( v& o/ i9 L- l9 F5 G
( ~" Q) c! }9 v$ Z' S. T
器DS1820对温度进行测量,并将所测得的温度值
8 r1 w" E. B4 x转化成9位二进制数据后以串行方式传输到单片
# _; i/ u* ]: U0 V/ D机P89LV51RD2,然后由单片机将收到的9位温度
! M) n. G4 T" {+ A2 W# I( b. x% E数据存到内部RAM中,并根据这个值来控制输出
7 j) x8 R+ l" X' p+ B G端口,同时将信息值送人对应的锁存器中,再由
% q0 c# d, v) @* F s锁存器来驱动数码管,最后将温度值以摄氏温度
& r( r. M$ y! `# [/ d6 X. @的形式显示出来。与此同时,系统在显示时不要
8 T5 L6 i6 p9 X: d0 J! d将RAM中的数据以串行方式传人SD卡中进行存
5 \( T% x+ ?- {1 `8 P0 Q储,以便在需要时再将有用数据从卡读取出来。7 h& e3 T8 D; ?; |/ _# r1 M1 K" E
下面就各芯片的工作模式与相关配置进行说明。5 w: l' a q" q A O, o( i
围1温控系统结构原理框 围3 I. ]2 L2 _3 m
1.1 数字温度传感器DS1820
2 r8 k! N% @& e$ S! kDS1820数字温度传感器的内部结构如图2所
( }! w2 e: s D9 F3 ^- y示。由图可知,DS1820由 三个主要数字器件组! W$ a2 _6 o1 V$ ]+ D' Y; Z
成: 64bit闪速ROM、温度传感器、非易失性温度
! d3 z; H! n' B) u报警触发器TH和TL。其测温范围为-55C叶: Z$ \" p& @9 h) p1 Y. e
125C,测量精度为0.0625C。DS1820的测温时,8 a- t2 Y0 ]- k' D8 a: n4 X
先由内部计数器对一个受温度影响的振荡器的脉
8 P0 o- {, S* X* ]0 f冲进行计数(低温时振荡器的脉冲可以通过门电
9 |6 V- t) e- U7 _路,而当达到某一设置高温时振荡器的脉冲不通
2 W. _& a7 C. r3 m- n过门电路),当计数器- -55C的值时,如果计数器
" {( T% H3 S6 L* g在到达0之前,门电路未关闭,则温度寄存器的5 L# Z) f/ d8 x+ [0 k. u3 K- ~
1 b$ I% B; h# V+ _5 i7 Z! D; j: k( e. ]
# d( Y3 g9 i$ N- Z* p5 y) Y
- d' o4 ]9 b4 E& |# H* D3 K
: F0 \* R. t: t1 t: p2 d6 X V
附件下载:/ W: b- n0 o% o
; h& y/ U: ~1 Q6 X; g( b
|
|