|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
[摘要]介绍了一种韩国三星公司生产的高性能8位单片机S3F9454。 给出了以该单片机为' U/ w, d3 x% f- y0 n: k
核心的水位水温检测电路。分别介绍了--种通过串行发光二极管(LED)显示驱动器MAX7219与两4 a/ ]% v! H7 g S( d0 {: T. k
个3位数码管构成的水位显示器和水温显示器、--种有多个电极的探测棒和与这些电极相连接的电.6 p. `( p8 j% E# G I; F* M
阻网络构成的水位传感器以及与其相关的水位检测电路、一种由热敏电阻构成的水温传感器以及与.$ Z/ P5 ?$ v1 B% d$ `' W
其相关的水温检测电路;介绍了水位检测原理和水温检测原理;以及如何用单片机S3F9454来完成检.
. [: t: i! m' e$ |; S' M测和显示的过程,给出了各功能模块的程序流程。
3 E9 m$ x: {9 p" \6 R
9 O; G4 \8 {8 R1 e0 [/ K9 f" e关键词:单片机,S3F9454, MAX7219,水位检测,水温检测8 g7 v; w5 i3 s1 q. f1 l, X
- t; T5 R. A3 M8 L: @( y
0引言4 L1 ~/ k$ M% I& g
S3F9454是韩国三星公司生产的高性能8位微处' Z8 O5 ?/ u: a3 e
理器,其价格低廉、控制功能强、工作稳定,是一种较理1 V! y/ _" A k: a( n
想的微控制器,可以用于各种控制电路中。本文介绍.- P1 s4 @+ K/ ]; Y0 n1 p+ z
笔者为某太阳能热水器研制的控制系统中的水位、水
6 i1 \: D& A0 `8 t5 j# q' Y1 m) [温检测电路的设计和各功能模块的程序流程。
. [! E# v6 |9 G4 i9 x* ~9 s1 S3F9454 单片机的结构和特点4 p0 J. A9 j2 i O# Z- s) x
封装形式:DIP,有20引脚和16引脚两种。
2 J/ a& a" f5 _( K3 FROM:4 kB Flash存储器,208 B RAM。
& l3 ^9 l& b) o& A3 DRAM:208 B,其中16 B作为工作寄存器且这16# r" x* V# a- B1 t
个寄存器都可以作为累加器。
& H& x: k* Y$ m& j控制寄存器:26 个,11个系统控制,15个I/0控.
. J Q8 C3 j/ T k* T7 R制。
' p7 n; }) C" [/ W+ I8 G精简指令集:41条指令,最短执行时间400 ns
) p4 m& `. q# n" y' }(fosc=10 MHz)。4 l# e6 _6 |; c- V( ~
振荡器:可接外部晶体振荡器,其频率范围1 MHz .0 I6 I, O4 N7 }, M6 [7 D
~ 10 MHz;也可只用内部RC振荡器,在5 V电源时有: L5 Z5 g' Y+ J* M2 D
3.2MHz和0.5MHz两种频率。
. B' L" P/ \0 s1 y看门狗功能:1个8位看门狗定时器。.
: j+ G8 O, ]; R7 O% ]/ e6 H- V; x# v复位功能:内外两种复位,内复位为低电压复位,.
. e7 \- W4 b" G3 S: I可设置为2.3 V.3.0 V.3.9 V;外部低电平复位;不用4 J& P* ]3 F0 q5 r
外部复位时,其复位引脚可用做普通I/0引脚。& o) X( _2 E% V) v; c. z: y# _
中断源:4个(1个中断矢量)。
9 L, ^9 d$ t1 B6 [7 F( G' CI/0口:3个(最大18个I/O引脚)。
4 ?8 L7 Z! b. J/ D脉宽调制( PWM)功能:1个8位PWM输出。
9 O# h% q9 k" {9 ^/ i7 @* u定时器:1个基本定时器,1个8位定时/计数器。 X: |2 x. M* X; R% W0 o/ D
A/D转换器:1个10位A/D转换器,9个模拟输1 D: F) n( I, I: b
入。
& x, C4 ?1 M ]. ~6 l' b工作电压:2 V ~5.5 V。; e3 }2 T: X. y& F' ~
工作温度: -40C ~ +85%C
1 t( w i1 o( u8 d2水位检测; U- r+ q* u5 T# o1 y2 j/ x* u
图1为基于S3F9454的水位、水温检测电路。
! M% K6 ~/ e7 d) S可以看出,水位传感器是在一根探棒上等间隔布- Z! p8 r/ F" R4 I3 o
置10个电极,电极与-一个电阻网络(R1 ~R11 )相连,
7 U; l7 H4 x/ q8 x7 j% R它们与R14一起构成分压电路,设计时要恰当地选择; e# I# q/ K c/ M- H! @
这些电阻的阻值,使得探棒悬空时,a点有一个恰当的
5 ^) W- s: ]5 O3 G, @9 z: n# t电压值。探棒深入水中时,每淹没一个电极,由于水电
9 v6 P7 U; W! m0 J$ W阻的作用,a点的电压值都会发生变化。不同的电压1 [% T6 d6 O6 ^- n5 E7 }6 m7 ~, a5 `
值代表了被水淹没的不同的电极。R11、 R12、R13、
9 Z6 G! r$ V( K9 YC1.U1构成振荡器,该振荡器输出的交变电压接到探6 j! D, J+ Z8 Q( z) |8 f3 p
棒的电极,这样可以避免水中的离子向电极沉积而结
) i- B; _) X' H1 m垢。V1、C2、R15.U4构成解调电路,将a点的交变电
. k" E* a7 v! ~: u, I5 b% J5 W压解调成直流。R16、R17将其转换为适于单片机.
& w6 D. `7 y& g" h5 r4 aS3F9454工作的电压值,该电压代表了水位的高低。.
H- \: ~ W; P3 ]把它接入S3F9454的P0. 6。
' f# w3 e4 P: y" T% o' H# {& t9 QP0.6是单片机A/D转换器的模拟输入口之- - 。
9 @- k4 @, R" R* h7 o3 a2 l& s探棒在水中随着水位的变化,每淹沒一个电极表示水
$ J# Q" E8 n2 Q# l. Y1 `位变化10%。水满时,淹没最上面的电极显示100%。0 Q; Q2 d) n* e( [% ~% s
单片机中的A/D转换器将这个电压变换成相应的数
: ]% {2 J0 g* L7 o' x5 O0 W字量。该数字量代表被水淹没的探极所处的水位,数3 ~5 D* S8 j) N& W# f$ _8 i
码管显示水位分别为0, 10,20, ..,100,直观地表示水
# `* V" x; r3 J% U位在水箱中的百分数。但实际的A/D转换值不是这
2 n/ Z- D0 J' ?# U) T些显示值,因此要对变换后的数字量进行处理,使其成4 w6 _" ^2 A& ]4 c6 i$ N/ q; @3 J
为相应的显示值。
2 W- {3 Z5 p X" S$ D8 ]1 E( ^* t' V3 k1 i
% }7 r i d# b2 a6 a& Q v# R/ d
附件下载:
; i8 s4 j9 O2 W! M$ [$ _ _3 {7 V% b1 a( ?
|
|