-
本科毕
业设计
(
论文
)
题目
:
基于单片机的数字气压计设计
教学单位:
专
业:
学
号:
姓
名:
指导教师:
2013
年
5
月
摘
要
气压计是利用压敏元件将待测气压
直接变换为容易检测、传输的电流或电压信
号,然后再经过后续电路处理并进行实时显示
的一种设备。其中的核心元件就是气
压传感器,它在监视压力大小、控制压力变化以及物
理参量的测量等方面起着重要
作用。运用于气压计的气压传感器基本都是依靠不同高度时
的气压变化来获取气压
值的。
本文主
要介绍基于单片机的数字气压计设计。核心是气压传感器
BMP085
< br>的精
密数字气压计系统的软、硬件实现方法。本文围绕气压计,着重介绍了
MCS51
单片
机、气压传感器
BMP085
、液晶显示模块
LCD1602
还有蜂鸣器等的功能结构和用处
并对其组成的一个数字气压传感器系统
进行了详细的分析。本文介绍通过气压传感
器
BMP085
p>
获得与大气压相对的模拟电压值,用V/F转换器则可把气压传感器输
出的电压信号转换成具有一定频率的脉冲信号;以便用单片机接收该脉冲信号,并
根据
单位时间内得到的脉冲数,并经过单片机中的
A/D
转换模块转
换为数字脉冲,
通过单片机对此脉冲序列的计数等处理后获得实际的气压值,并通过数码
管显示电
路显示这一系统。本文具体阐述了系统的软件设计和硬件的搭建,以
C
语言为开发
工具,进行了详细设计和编码。总体
目标是实现系统的可靠性、稳定性、安全性和
经济性。
p>
关键词:
单片机;数字气压计;气压传感器;
I
Abstract
The barometer
sensitive
element
test
pressure will
be directly
converted
into easily
detected,
and
the
transmission
of
current
or
voltage
signal,
and
then
through
the
subsequent processing
circuitry, and a real-time display of a device.
The core component
is the air pressure
sensor, which monitors the pressure in size,
control pressure changes as
well as the
measurement of physical parameters play an
important role. Used in barometer
pressure sensors are basically relying
on the pressure change when different heights to
get
the pressure value.
This
paper describes the design of microcontroller-
based digital barometer. The core
of
the pressure sensor BMP085 Precision Digital
Barometer system software and hardware
implementation.
Around
the
barometer,
highlighting
the
MCS51
microcontroller,
air
pressure
sensor
BMP085
LCD
module
LCD1602
buzzer
functional
structure
and
usefulness of digital pressure sensor
system consisting of a detailed analysis. This
article
describes the pressure sensor
BMP085 atmospheric pressure relative to the analog
voltage
value V / F converter can put
pressure sensor output voltage signal into a pulse
signal of a
certain frequency; order to
use microcontroller receives the pulse signal
based on the unit
the number of pulses
in the time, and after the microcontroller's A / D
converter module is
converted
into
a
digital
pulse
through
the
microcontroller
of
this
pulse
sequence
count
obtained
after
processing
the
actual
pressure
value
and
the
system
through
the
digital
display
circuit.
The
paper
describes
the
design
of
the
system
software
and
hardware
to
build, C language development tools, a
detailed design and coding. The overall objective
is to achieve system reliability,
stability, security and economic.
Key words
: SCM; digital
barometer; pressure sensor;
II
目录
第
1
章
绪论
.
..
..................................................
..................................................
.................................. 1
1.1
选题背景
.
..................................................
..................................................
............................. 1
1.2
研究意义
.
......................................
..................................................
......................................... 1
1.3
国内外相关技术概况
p>
.
.............................
..................................................
............................. 2
1.3.1
气压计技术概况
< br>.
...................................
..................................................
..................... 2
1.3.2
国内外相关技术
< br>.
...................................
..................................................
..................... 3
1.4
本课题的重点及难点
.
.............................................
..................................................
.............. 3
1.5
本课题相关理论及西安地区大气压
.
..................................................
................................... 4
第
2
章
系统总体设计
.
................................................ .................................................. ...................... 6
2.1
气压计结构
.
.....................................
..................................................
...................................... 6
2.2
设计方案
.
..................................................
..................................................
............................. 7
2.2.1
方案一
.
.......................................
..................................................
................................. 7
2.2.2
方案二
.
.
..................................................
..................................................
..................... 7
2.3
系统总体结构
.
................................................ .................................................. ....................... 8
2.4
系统各功能模块
< br>.
...................................
..................................................
................................ 8
2.4.1
初始化模块
.
.................................................
..................................................
............... 8
2.4.2
数据处理模块
.
................................................ .................................................. .......... 10
2.4.3
数码显示模块
.
................................................ .................................................. .......... 10
2.4.4
警报电路模块
.
................................................ .................................................. .......... 10
2.5
各功能模块的选择
.
..............................................
..................................................
............... 10
2.5.1
单片机的选择
.
................................................ .................................................. .......... 10
2.5.2
气压传感器的选择
.
..............................................
..................................................
.... 11
2.5.3
数码显示的选择
.
< br>............................................... .................................................. ....... 11
2.5.4
蜂鸣器的选择
.
................................................ .................................................. .......... 11
2.6
系统的配置
.
.................................................
..................................................
........................ 11
第
3
章
硬件电路的搭建
< br>.
...................................
..................................................
............................... 13
3.1
单片机
.
.
..................................................
..................................................
.............................. 13
3.1.1
AT89S52
单片机简介
.
...............................
..................................................
............... 13
3.1.2
AT89S52
主要特性
.
................................
..................................................
.................. 15
III
3.1.3
A
T89S52
管脚说明
.
..............................
..................................................
.................... 15
3.1.4
单片机最小系统
< br>.
...................................
..................................................
................... 16
3.2
气压传感器
BMP085 ................
..................................................
.......................................... 17
3.2.1
BMP085
主要特性
......
..................................................
............................................. 18
3.2.2
BMP085
发送控制命令方式
..
..................................................
................................. 18
3.2.3
BMP085
读取数据方式
....
..................................................
....................................... 19
3.2.4
BMP085
控制程序总结
.....................
..................................................
..................... 19
3.2.5
BMP085
电路结构
......
..................................................
............................................. 20
3.3
LCD
数码显示
.
....................................
..................................................
................................ 20
3.3.1
1602
字符型
LCD
简介
.
..............................
..................................................
............. 20
3.3.2
1602LCD
的基本参数及引脚功能
.......................................
..................................... 21
3.3.3
1602LCD
的时序
.
.................................
..................................................
.................... 23
3.3.4
1602
电路结构
< br>.
...................................
..................................................
...................... 24
3.4
蜂鸣器
.
.......................................
..................................................
.......................................... 25
3.5
总体电路显示
.
................................................ .................................................. ..................... 25
第
4
章
软件的设计
.
.................................................
..................................................
....................... 27
4.1
应用软件的介绍
< br>.
...................................
..................................................
.............................. 27
4.1.1
Altium
Designer
软件介绍
...............
..................................................
........................ 27
4.1.2
Keil
软件介绍
< br>.
...................................
..................................................
....................... 27
4.1.3
PROTEUS
软件介绍
.....
..................................................
........................................... 27
4.2
气压与海拔的关系
.
..............................................
..................................................
............... 28
4.3
程序流程图
.
.................................................
..................................................
........................ 28
第
5
章
系统调试与经验教训
.
.............................................
..................................................
........... 30
5.1
硬件调试
.
..................................................
..................................................
........................... 30
5.1.1
单片机最小系统的调试
.
................................
..................................................
.......... 30
5.1.2
LCD1602
调试
.
.................................
..................................................
....................... 30
5.1.3
气压传感器的测试与调式
.
...............................
..................................................
....... 31
5.1.4
蜂鸣器的调试
.
................................................ .................................................. .......... 31
5.2
软件程序修改与调试
.
.............................................
..................................................
............ 31
5.3
经验教训
.
..................................................
..................................................
........................... 35
总结
.............................................
..................................................
..................................................
........ 36
致谢
..............
..................................................
..................................................
....................................... 37
参考文献
.
..................................................
..................................................
............................................ 38
IV
西京学院本科毕业设计(论文)
第
1
章
绪论
1.1
选题背景
数字气压计是利用压敏元件将待测的气压值直接变换为容易检测、易于传输的
电流或电压
信号,然后再经过后续的电路处理并进行实时显示的一种设备。其中的
核心元器件就是气
压传感器。气压传感器在监视压力的大小、控制压力的变化以及
物理参量的测量等方面起
着重要的作用。运用气压计的气压传感器基本上都是依靠
不同高度时的气压变化来获取气
压值的。相对于普通的水银气压计,不仅准确易读,
而且方便携带。
气象学研究表明,在垂直方向上气压随高度增加而降低。例如在低层,每上升
p>
100m
气压便降低
10hPa
;
在
5
~
6km
的高空,
高度每增加
1
00m
,
气压便会降低
7hPa
;
而当高度进一步增加时,即到
9
~
10km
的高空之后,
高度每增加
100m
,
气压便会降
p>
低
5hPa
;同样,若空气中有下降气流时
,气压会增加;若空气中有上升气流时,作
用于空气柱底部的气压就会减小。一般把作用
于单位面积上空气柱的重量称为大气
压力。
< br>数字气压计大量应用在各种工矿企业、野外作业、以及各消费类电子产品等中,
需
求极为广泛。本文着重介绍数字气压计在汽车胎压方面的应用。
我设计的是一种基于单片机的数字气压计的设计,主要针对的是汽车轮胎胎压
计的设计
。汽车轮胎胎压计是通过气压传感器获得与汽车轮胎胎压相对应的模拟电
压值,
并经过
A
/
D
变换输入到单片机中进行分析处理,
从而实时显示相应的气压值。
由于使用胎压计有一定的参数要求,所以设计数字气压计时要仔细了解这些参数以
防由于使用不当而损坏胎压计。汽车轮胎胎压计采用高性能绝对压力传感器,屏幕
显示出高准确度的汽车轮胎胎压,实现了对轮胎压力的实时监测。当汽车轮胎压力
处
于非正常运行状态时,即通过报警电路来通知驾驶员注意控制轮胎爆胎发生,以
便达到安
全驾驶的目的。
1.2
研究意义
随着社会经济的高速发展,高速公路网的蓬勃兴起,以及交通的日趋发达,车
辆行驶速度
的不断攀升,交通隐患的防范问题已迫在眉睫。因汽车轮胎漏气和爆炸
1
西京学院本科毕业设计(论文)
等原因造成的交通事故,大多都是由轮胎的工作温度过高或者不合理胎压引起的。
研究汽车轮胎胎压计,对现代汽车行驶时的安全性、经济性和操纵稳定性具有尤为
重要的现实意义。
现如今,人们对驾驶过程中的安
全性与舒适性的追求越来越高,随车携带的数
字气压计可以保证人们安全的行驶,有效地
降低由于爆胎而导致的交通事故发生的
概率。而服务商所要做的就是提供一种物美价廉的
数字气压计,以满足有车一族的
需要。
本课题设计充分利用了
BMP085
芯片的功能,它不仅满足
数字气压计采集、控
制和数据处理的需要,而且还可以提高系统稳定性和抗干扰能力。同
时,由于大量
的工作由单片机软件来实现,简化了设计电路,而且调整方便、可兼顾的指
标多,
从而大大降低了成本。另外,作为一种功能强大的平台,该数字气压计具有很好的
功能扩展性,具有精度高、稳定性好、功能易于扩展等优点,为仪器及电子产品设
计后续技术升级,以进一步满足市场的需要提供了条件。
1.3
国内外相关技术概况
1.3.1
气压计技术概况
目前国际国内很多公
司都推出了其数字气压传感器,如摩托罗拉公司的
MPX4105
和
Intersema
公司的
MS5
534b
另外还有华普微电子的
HP03
系列数字气压
传感器、
BOCSH
的
BPM085
系列数字气压传感器。
众
多数字气压传感器的出现使得
多样化的数字化气压测量装置、用品大量出现,并越来越普
及,精度也越来越高。
数字气压计一般不会只有测量气压一种功能,一般都有其他的功能
,比如测温度、
指南针、码表等等的功能。本课题研究所用的气压计就附带有温度测控。
目前各国研制的轮胎气压报警系统主要分为两种类型:一种是
间接式,它通过
汽车
ABS(
防抱制动
系统
)
的轮速传感器及轮胎的力学模型,
间接求出轮胎气压,
以达
到监视轮胎气压的目地;另一种是直
接式,它利用安装在每一个轮胎里的以锂离子
电池为电源的压力传感器来直接测量轮胎的
气压,并通过无线调制发射到安装在驾
驶台的监视器上,而监视器随时显示各种轮胎气压
,驾驶者可以直观地了解各个轮
胎的气压状况,当轮胎气压太低或有渗漏时,系统就会自
动报警,确保行车安全。
市场研究的预测表明,直接系统技术将成为主流技术。
汽车高速行驶中,由于轮胎的压力不正常而造成爆胎是驾驶员难以预防
的,也
2
西京学院本科毕业设计(论文)
是突
发性和恶性交通事故发生的重要原因。引起轮胎漏气和爆胎的原因主要有:
(1)
轮胎工作温度过高;
(2)
轮胎气压过大;<
/p>
(3)
轮胎使用时间过长;
(4)
轮胎负荷过大;
(5)
汽车行驶速度过快。为
使汽车能够处于安全的驾驶状态,驾驶者必须在行车过程中
实时了解轮胎的超压、欠压、
温度等工作状态,我们设计的基于单片机的汽车轮胎
胎压计具有以下的功能:
(1)
实时监测轮胎的压力情况及温度;
(2)<
/p>
当某个轮胎处于欠
压状态时,相应的欠压报警指示灯亮。当汽车轮
胎压力处于非正常状态运行时,通
过报警来通知驾驶员,控制轮胎爆胎发生,以达到安全
驾驶的目的。
1.3.2
国内外相关技术
对轮胎爆胎进行预警
是保障汽车安全行驶的关键所在,已成为汽车行业研究的
热点问题。在轮胎爆胎预警系统
及相关技术的研究方面,美国、日本、德国、法国、
英国在近几年都取得了突破性的进展
,形成了性能和功能完善的轮胎压力监测系统
产品。从近年发布的世界新车资料来看,林
肯大陆、奔驰、宝马、标志、道奇等中
高档车均安装了轮胎压力监测装置,用于监测汽车
行驶过程中轮胎气压,车内主控
机板显示模块实时显示轮胎气压状态。
< br>
据中国汽车工业协会相关市场调查表明,国内轮胎爆胎预警系统的相关产品有<
/p>
推出,但都是技术性能不甚完善简易系统产品,存在以下缺点:①系统工作寿命极
短;②系统在低温或高温环境下失效;③工作可靠性较差。而性能可靠、功能完善、
技术成熟的产品均是一些国外知名公司的品牌产品,但价格较为昂贵。因此,研制
性能可靠、功能完善并且价格能为当前多数国内消费者所接受的轮胎爆胎预警技术
产
品很有必要。国内汽车行业正迫切需求成熟的轮胎爆胎预警系统及产品的投放市
场以解决
因轮胎爆胎而引起的行驶安全性问题。
1.4
本课题的重点及难点
本课题的重点及难点就是对整体设计方案的选择和各硬件模块的选择,具体表
现为整个系统总共包含几个模块,对气压传感器、
A/D
转换器
等的选择,还有就是
怎样通过气压传感器对气压信号的采集、控制、放大等处理完成气压
参数的自动获
取,以及进行数字显示等等。
3
西京学院本科毕业设计(论文)
1.5
本课题相关理论及西安地区大气压
在
设计电子气压计之前首先要搞清楚气压的定义。气压是作用在单位面积上的
大气压力,即
等于单位面积上向上延伸到大气上界的垂直空气柱的重量。气压以百
帕(
hPa
)为单位,取一位小数。国际制单位:帕斯卡,简称帕,符号是
Pa
。常用单
位:标准大气压。表示气压的单位
,习惯上常用水银柱高度。例如,一个标准大气
压等于
760<
/p>
毫米高的水银柱的重量,它相当于一平方厘米面积上承受
1.03
36
公斤重
的大气压力。由于各国所用的重量和长度单位不同,
因而气压单位也不统一,这不
便于对全球的气压进行比较分析。因此,国际上统一规定用
"百帕"作为气压单位。
经过换算:
一个标准大气压=
1013
百帕(毫巴)
1
毫米水银
(
汞柱)柱高=
4/3
百帕(毫巴)
1
个标准大气压=
760mm
水银
(
汞柱)柱高。
气压产生的原因:从分子动理论可知,气体的压强是大量分子频繁地碰撞容器
壁而产生的。单个分子对容器壁的碰撞时间极短,作用是不连续的,但大量分子频
< br>繁的碰撞器壁,对器壁的作用力是持续的、均匀的,这个压力与器壁面积的比值就
是压强大小。
影响压强的因素:气压的大小与海拔高度、大气温度
、大气密度等有关,一
般随高度升高按指数律递减。气压有日变化和年变
化。一年之中,冬季比夏季气压
高。一天中,气压有一个最高值、一个最低值,分别出现
在
9
~
10
时
和
15
~
16
时,
还有一个次高值和一个次低值,分别出现在
21
~
22
时和
3
~
4
时。气压日变化幅度
较小,一般为
0.1
~
0.4
千帕,并随纬度增高而减小。气压变化与风、天气的好坏等
关系密切,因
而是重要气象因子。通常所用的气压单位有帕
(Pa)
、毫米水
银柱高
(mm·
Hg)
、毫巴
(mb)
。它们之间的换算关系为:
100
p>
帕=
1
毫巴
≈3<
/p>
/
4
毫米水银柱高。
气象观测中常用的测量气压的仪器有水银气压表、空盒气压表、气压计。温度为
0<
/p>
℃
时
760
毫米
垂直水银柱高的压力
,
标准大气压最先由意大利科学家托里拆利
测出。
大气压强随高度升高而降低
在海拔
2000
米范围内
.
海拔每升高
12m
降低一
个毫
米汞柱。
西安市平均海拔高度:
397
米
.
大
气压力:冬季:
734
毫米汞柱,夏季
718
毫米
汞柱
。
由公式:
1
毫米汞柱
=0.133
千帕
4
西京学院本科毕业设计(论文)
可得:
734
?
0.133=97.622kpa
718
?
0.133=95.494kpa
所以可得,西安
地区大致气压范围在
95.494
—
9
7.622
之间。
5
西京学院本科毕业设计(论文)
第
2
章
系统总体设计
2.1
气压计结构
本文研究的气压计结构如图
2.1
所示。其中气压传感器用来
将被测气压转换为电
压信号;用V/F转换器则可把气压传感器输出的电压信号转换成具
有一定频率的
脉冲信号;以便用单片机接收该脉冲信号,并根据单位时间内得到的脉冲数
,依据
电压与频率的线性关系式计算出所对应的气压值,最后在单片机控制下由LED显
示出来。
本气压计能够在气压传感器
的线性范围内准确测量相应气压值。需要说明的是,
其测量值是绝对气压值。本文研究的
气压计
BMP085
的技术指标如下。
压力范围:
300
—
< br>1100hPa
(海拔
9000
米—
-500
米)
< br>电源电压:
1.8V
—
3.6V
(
VDDA
)
1.62V
—
3.6V
(
VDDD
)
LCC8
封装:
无铅陶瓷载体封装(
LCC
)
尺
寸:
5.0mmx5.0
?
1.2mm
低功耗:
5μA
在标准模式
高精度:
低功耗模式下,分辨率为<
/p>
0.06hPa
(
0.5
米)
高线性
模式下,分辨率为
0.03hPa
(
0
.25
米)
含温度输出
I
2
C
p>
接口
温度补偿
无铅,符合
RoHS
规范,
MSL 1
反应时间:
7.5ms
待机电流:
0.1?
A
无需外部时钟电路
LCD
被
测
p>
气
压
气
p>
压
传
感
器
单
片
机
显
示
模
块
6
图
2.1
气压计结构
西京学院本科毕业设计(论文)
2.2
设计方案
2.2.1
方案一
采
用单片机主控,通过压力传感器、
A/D
转换采集数据信息,经
过含有单片机
的检测系统检测,将结果传送到单片机控制的主控器,数据通过显示器显示
。原理
框图如图
2.2
所示。
器
气
p>
压
传
感
单
片
机
控
制
的
检
测
系
< br>统
转
换
器
总
线
p>
单
片
机
控
制
的
主
控
系
统
A/D
显
示
器
p>
2.2.2
方案二
采用集成的单片机主控,通过
压力传感器将气压信号送入带
A/D
转换的单片机
中,以及在相关模拟分立元件的辅助下进行
A/D
转
换以及其它的数据处理,将处理
的结果送显示部分进行显示。原理框图如图
2.3
所示。
图
2.2
设计方案一
气
压
传
p>
感
器
单
片
机
处
理
89S52
p>
综上所述,方案一电路虽然与方案二类似,都较方案二调整方便、可兼顾的指
标多,但方案一利用
PC
机平台实现软件操作,在操作
运行复杂,并且性价较低,因
此耗费较大,所以在实际应用中一般不用,所以我们选择第
二种方案。
设计
51
单片机数字气压计系统时,需要考虑下面
4
个方面的内
容。
·
选择合适的气压传感器芯片,
这要根据实际需要以及各种气压传感器的性能参
数来决定。
<
/p>
·
选择合适的
A/D
转换器件,它的作用是将气压传感器输出的模拟电流或电压信
号转换为数字信号。<
/p>
显
示
器
图
2.3
设计方案二
7
西京学院本科毕业设计(论文)
·<
/p>
设计单片机和
A/D
转换器件的接口电路
。
·
实现气压信息采集并输出的软件
设计。
2.3
系统总体结构
本系统的总体结构框图
如图
2.4
所示。
初始化模块
基于单片机的数字
气压计设计
数据处理模块
数码显示模块
警报模块
图
2.4
系统总体结构
由图
< br>2.4
可知,整个系统的工作流程如下。
测量前先为各功能模块初始化,测量时被测气压由气压传感器转换为模拟的电
压输出,此输出信号不能直接交由单片机处理。因此,需要经过
V/F
< br>转换模块把气
压传感器输出的模拟电压信号转换为数字脉冲
(其频率随输入电压呈线性变化)
。
通
过单片机接收该脉冲信号,得到单位时间内获得的脉冲数,依据电压与频率的线性<
/p>
关系式计算出所对应的实际气压值,最后通过数码管显示电路显示给用户。如果该
气压值不在预设值范围之内,则传送一个脉冲信号给单片机控制蜂鸣器报警,提示
用户气压出现异常。
2.4
系统各功能模块
2.4.1
初始化模块
1
)
LCD1602
的初始化
1602
一般初始化(复位)过程
延时
15ms
写指令
38H
(不检测忙信号)
延时
5ms
写指令
38H
(不检测忙信号)
8
西京学院本科毕业设计(论文)
延时
5ms
写指令
38H
(不检测忙信号)
以后每次写指令、读
写数据操作均需要检测忙信号
写指令
38H
:显示模式设置
写指令
08H
:显示关闭
写指令
01H
:显示清屏
写指令
06H
:显示光标移动设置
写指令
0CH
:显示开及光标设置
LCD1602
由程序实现软初始化,部分程序如下:
< br>
void InitLcd();
//
初始化
lcd1602
void WriteDataLCM(uchar
dataW);
void WriteCommandLCM(uchar
CMD,uchar Attribc);
void
DisplayOneChar(uchar X,uchar Y
,uchar
DData);
void conversion(long
temp_data);
void
Single_Write(uchar
SlaveAddress,uchar
REG_Address,uchar
REG_data);
//
单个写入数据
uchar
Single_Read(uchar
REG_Address);
//
单个读取内部寄存器数据
void
//
连续的读取内部寄存器数据
2
)气压传感器的初始化
初始化
BMP085
,
单
片机开机进行自检,
检查各硬件连接状况,
利用蜂鸣器来判
p>
断各个模块状况。其初始化程序如下:
void bmp085Calibration()//BMP085
初始化设置;
{
ac1 = bmp085ReadInt(0xAA);
ac2 = bmp085ReadInt(0xAC);
ac3 = bmp085ReadInt(0xAE);
ac4 = bmp085ReadInt(0xB0);
Multiple_Read(uchar,uchar);
9
西京学院本科毕业设计(论文)
ac5 = bmp085ReadInt(0xB2);
ac6 = bmp085ReadInt(0xB4);
b1 = bmp085ReadInt(0xB6);
b2 = bmp085ReadInt(0xB8);
mb = bmp085ReadInt(0xBA);
mc = bmp085ReadInt(0xBC);
md = bmp085ReadInt(0xBE);
}
2.4.2
数据处理模块
数据处理模块主要是对
A/D
转换模块的数据进行多次采集,并且对采集的数据
进行处理,此处理过程主要是对采集的数据进行初值定义以及相应的移位处理,并
且把处理好的数据送入相应的缓冲区,为后面的显示模块作好准备。
2.4.3
数码显示模块
本设计是用单片机的<
/p>
P1
口连接一个
LCD1602
液晶显示屏显示。通过软件编码,
显示当前的温度和气压值。
2.4.4
警报电路模块
当气压传感器所测到的
气压值超出预设值范围时,即给单片机一个脉冲信号,
单片机控制蜂鸣器报警。由于受条
件所限,本次设计没法控制气压,只能控制温度,
即当传感器测得温度值大于
30
摄氏度时,单片机控制蜂鸣器报警。
2.5
各功能模块的选择
2.5.1
单片机的选择
方案一:选择
arm
系列芯片,
arm
系列具有低功耗,高性能的优点,一个机器周
期能处理
32<
/p>
位数据,可以使气压计的精度更高。
方
案二:选择
TI
公司的
MSP430<
/p>
系列,
430
现在成为比较主流的单片机
,在具
有低功耗的五种模式下,还具有一定的计算能力,一般都为
16
位。
方案三:选择使用八位处
理的
51
系类单片机。
10
西京学院本科毕业设计(论文)
综合
比较:
arm
系列虽然处理精度高,但相比较
< br>MSP430
系列和
51
系类价
格太高。
考虑到我们身处平原地区,气压值浮动较小,不需要精度太高综合价格,我们最
终
选择
51
系类单片机,采用
STC89S52
。
2.5.2
气压传感器的选择
方案一:
采用摩托罗拉公司的
MPX4105
,
MPX4105
可以产生于所加气压呈线性
关系
的高精度模拟输出电压。
方案二:采用
BOCSH
的
BMP085
,
BMP085
是一款高精度、超低能耗的压力传
感器,可以应用在移动设备中。它的性能卓越,绝对精度最低可以达到
0.03hPa
,并
且耗电极低,只有
3
?
A
。
BMP085
采用强大的
8-pin
陶瓷无引线芯片承载(
LCC
)超
薄封装,可以通过
I
?
C
总线直接与各种
微处理器相连。
综合考虑,我们选用第二种方案,即
BOCSH
公司的
BPM085
。
2.5.3
数码显示的选择
方案一:采用八连排
七段数码管,七段数码管有共阴和共阳两种,如用共阳显
示电路需要用
< br>74LS47
译码驱动集成电路,无论共阴还是共阳七段显示电路,都需要
加限流电阻。否则通电后就把数码管烧坏了。但其价格便宜,
使用简单。
方案二:采用
LCD1602
,
1602
液晶也叫
1602
字符型液晶,它是一种专门用来
显示字母、数字、符号等的点阵型液晶模块,内含复位电路,具有对比度可调、微
< br>功耗、体积小、显示内容丰富、超薄轻巧等特点,常用在袖珍式仪表和低功耗应用
系统中。
综上考虑,我们选用第二种方案,即用
LCD1602
作为数码显示。
2.5.4
蜂鸣器的选择
方案一:采用有源蜂鸣
器,有源蜂鸣器在工作的时候具有较高的稳定性。
方案二:采用无源蜂鸣器。
综合比较
:使用无源蜂鸣器,考虑到板子上的线路布局,使用无源蜂鸣器,在
电路上加入一个
p>
8550
三级管,同样可以使其更稳定。
2.6
系统的配置
我们用
< br>AT89S52
单片机作为整个系统的核心,气压传感器、
LCD1602
数码显示
11
西京学院本科毕业设计(论文)
器、
蜂鸣器等为重要组成部分,组成了一个稳定的数字气压计系统。本系统通过气
压传感器对
气压信号的采集、控制、放大等处理完成气压参数的自动获取,以及进
行数字显示等等。
在此过程中需要利用
AT89S52
单
片机内部的定时器对其进行度量,
再使用软件模块对其进行处理,即得到了
A/D
转换的结果。进行多次
A/D
转换后,
我们就可以采集到一脉冲序列的数据,对这些数据进行适当的处理,最
后通过数码
管显示电路显示给用户,进而达到了我们对整个系统设计的基本要求。
12
西京学院本科毕业设计(论文)
第
3
章
硬件电路的搭建
3.1
单片机
单片微型计算机简称单片机,
是典型的嵌入式微控制器(
Microcontroller
Unit
)
,常用英文字母的缩写
MC
U
表示单片机,
它最早是被用在工业控制领域。
单片机由芯片内仅有
CPU
的专用处理器发展而来。<
/p>
最早的设计理念是通过将大
量外围设备和
CPU
集成在一个芯片中,使计算机系统更小,更容易集成进复杂
的而对体积要求严格的控制设备当中。
INTEL
的
Z80
是最早按照这种思想设计
出的处理器,从
此以后,单片机和专用处理器的发展便分道扬镳。
20
世纪
80
年代以来,单片机的发展非常迅速,
就通用单片机而言,世界上一些著名的计算机
厂家已投入市场的产品就有
50
多个系列,数百个品种。尽管单片机的品种很多,但
是在我国使用的最多的是
INTER
公司的
< br>MCS-51
系列单片机,直到现在
MCS-51
系
列单片机仍不失为主流系列。在最近的若干年仍是工业检测控制的主
角。
MCS-51
系列单片机内部包
括一个
8
位
CPU
,
128
个字节
RAM
,
21
个特殊功能
寄存器
,
4
个
8
位并
行
I/O
口,
2
个
16
位定时器
< br>/
计数器,片内集成有
4K ROM
,作
为程序存储器,是一个程序不超过
4K
字节的小系统。
ROM
内的程序是公司制作芯
片时,代为用户烧制的,出厂的
8051
都是含
有特殊用途的单片机。
3.1.1
AT89S52
单片机简介
单片机是把微型计算机主要部分都集成在一个芯片上的单芯片微型计算机,即
将运算器,控制器,输入输出接口,部分存储器以及其他一些逻辑部件集成在一个
芯
片上,故可以把单片机看成是一个不带外部设备的微型计算机,相当于一个没有
显示器,
没有键盘,不带监控程序的单板机。其结构如下图
3.1
所示。
13
西京学院本科毕业设计(论文)
计
数
器
图
3.1
单片机结构框图
ROM
RAM
外
部
设
备
I/O
中
断
AT89S52
是一种带
8K
字节闪烁可编程可擦除只读存储器(
FPER
OM
—
Falsh
Programmable and Erasable Read Only Mem
ory
)的低电压,高性能
CMOS8
位微处理
器,俗称单片机。由于将多功能
8
位
CPU
和闪烁存储器组合在单个芯片中,
ATMEL
的
AT89S52
是一种高效微控制器,
AT89S52
单片机为很多嵌入式控制系统提供了一
种灵活性高且价廉的方案,外形及引脚排列如图
3.2
所示。
图
3.2
单片机引脚排列图
C P U
口
14
西京学院本科毕业设计(论文)
3.1.2
AT89S52
主要特性
*
与
MCS-51
兼容
*
4K
字节可编程闪烁存储器
*
p>
寿命:
1000
写
/
擦循环
*
数据保留时间:
10
年
*
全静态工作:
0Hz-24Hz
*
三级程序存储器锁定
* 128*8
位内部
RAM
* 32
可编程
I/O
线
3.1.3
AT89S52
管脚说明
VCC
:供电电压。
GND
:接地。
P0
口:
P
0
口为一个
8
位漏级开路双向
I/O
口,每脚可吸收
8TTL
门电流。当
P0
口的管脚第一次写
1
时,被定义为高阻输入。
P0
能
够用于外部程序数据存储器,它可
以被定义为数据
/
地址的低八位。
在
FIASH
编程时,
P0
口作为原码输入口,
当
FIASH
进行校验时,
P0
p>
输出原码,此时
P0
外部必须被拉高。
p>
P1
口:
P1<
/p>
口是一个内部提供上拉电阻的
8
位双向<
/p>
I/O
口,
P1
口缓冲器能接收输出
4TTL
门电流
P
1
口管脚写入
1
后,被内部上拉为高,
可用作输入,
P1
口被外部下拉为
低电
平时,将输出电流,这是由于内部上拉的缘故。在
FLASH
编
程和校验时,
P1
口作为低八位地址接收。
P2
口:
P2
< br>口为一个内部上拉电阻的
8
位双向
I/O
口,
P2
口缓冲器可接收,输
出
4
个
TTL
门电流,当
P2
口被写
“1”
时,其管脚被内部上拉电阻拉高,且作为输入。并
因此作为输入时,
p>
P2
口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。
P2
口当用于外部程序存储器或
16<
/p>
位地址外部数据存储器进行存取时,
P2
口输出地址
的高八位。在给出地址
“1”
时,它利用内部上拉优势,当对外部八位地址数据存储器
进行读写时,
P2
口输出其特殊功能寄存器的内容。
P2
口在
FLASH
编程和校验时接收
高八位地址信号和控制信号。
P3
< br>口:
P3
口管脚是
8
个带内部上拉电阻的双向
I/O
口,可接收输出<
/p>
4
个
TTL
门电
流。当
P3
口写入
“1”
后,它们被内部上拉为高电平,并用作输入。作为输入,由于外
15
西京学院本科毕业设计(论文)
部下
拉为低电平,
P3
口将输出电流(
IL
L
)这是由于上拉的缘故。在实际应用中,大
多数情况下都使用
P3
口的第二功能。
RST
:复位输入。当振荡器复位器件时,要保持
RS
T
脚两个机器周期的高电平。
ALE
/PROG
:
当访问外部存储器时,
地
址锁存允许的输出电平用于锁存地址的低
位字节。在
FLASH
编程期间,此引脚用于输入编程脉冲。在平时,
ALE
端以不变的
频率周期输出正脉冲信号,此频率为振荡器频率的
1/6
。因此它可用作对外部输出的
脉冲或用于定
时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个
ALE
脉冲。
如想禁止
ALE
的输
出可在
SFR8EH
地址上置
0
。
此时,
ALE<
/p>
只有在执行
MOVX
,
< br>MOVC
指令时
ALE
才起作用
。另外,该引脚被略微拉高。如果微处理器在
外部执行状态
AL
E
禁止,置位无效。
/PSEN
p>
:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器
周期两次
/PSEN
有效。
但在访
问外部数据存储器时,
这两次有效的
/PSEN
信号将不出
现。
EA/VP
P
:当
/EA
保持低电平时,则在此期
间外部程序存储器(
0000H-FFFFH
)
,
不管是否有内部程序存储器。注意加密方式
1
时,
/EA
将内部锁定为
RESET
;当
/EA
端保持高电
平时,
此间内部程序存储器。
在
FLA
SH
编程期间,
此引脚也用于施加
12
V
编程电源(
VPP
)
。
XTAL1
:反向振荡放
大器的输入及内部时钟工作电路的输入。
XTAL2
:来自反向振荡器的输出。容并且冻结振荡器,禁止所用其他芯片功能,
直到下一个硬件复位为止。
3.1.4
单片机最小系统
< br>单片机的最小系统由复位电路、晶振电路等组成。单片机最小系统的搭建如下
图<
/p>
3.3
所示。
16
西京学院本科毕业设计(论文)
图
3.3
单片机的最小系统
3.2
气压传感器
BMP085
本设计气压传感器采用的是
BOCSH
公司的<
/p>
BMP085
。
BMP085
是一款高精度、
超低能耗的压力传感器,可以应用在移动设备中。它的性能
卓越,绝对精度最低可
以达到
0.03hPa
< br>,并且耗电极低,只有
3?
A
。
BMP085
采用强大的
8-pin<
/p>
陶瓷无引线
芯片承载(
LCC
)超薄封装,可以通过
I?
C
总线直接与各种微处理器相连。其引脚分
布图如图
3.4<
/p>
所示:
图
3.4
气压传感器
BMP085
引脚分布
17
西京学院本科毕业设计(论文)
3.2.1
BMP085
主要特性
?
压力范围:
300
—
1100hPa
(海拔
p>
9000
米
.
—<
/p>
-500
米)
?
电源电压:
1.8V
—
3.6V
(
VDDA
)
1.62V<
/p>
—
3.6V
(
V
DDD
)
?
LCC8
封装:
无铅陶瓷载体封装(
LCC
)
?
尺
寸:
5.0mmx5.0
?
1.2mm
?
低功耗:
5μA
在标准模式
?
高精度:
低功耗模式下,分辨率为
0.06hPa
(
0.5
米)
高线性模式下,分辨率为
0.03hPa
(
0.25
米)
?
含温度输出
I
p>
2
C
接口
?
温度补偿
MSL
1
?
无铅,符合
< br>RoHS
规范,
?
反应时间:
7.5ms
?
待机电流:
0.1?
A
?
无需外部时钟电路
3.2.2
BMP085
发送控制命令方式
MCU
对
BMP085
发送控制命令的方式如图
3.5
所示。
图
3.5
BMP085
发送控制命令的方式图
向
BMP085
发送命令的步骤如下:
1
)发送模块地址
+W
(
表示写操作)
,如图
4.5
中的
0xEE
。
p>
2
)发送寄存器地址
(register
address)
,如图
4.5
中的第
一个
0xF4
。
3
)发送寄存器的值
(control
register data)
,如图
4.5
< br>中第二个
0xF4
。
寄存器的值代表
BMP085
要进行的测量方式
。不同的值分别代表,测量温度;
18
西京学院本科毕业设计(论文)
低精度压力测量;中精度压力测量;高精度压力测量。
3.2.3
BMP085
读取数据方式
从
BMP085
读取数据的方法如图
3.6
所示。
图
3.6
BMP085
读取数据方式
从
BMP085
读取数据的步骤如下。
1
)发送模块地址
+W
(
表示写操作)
,如图
4.6
中的
0xEE
。
2
)送寄存器地址
(register
address)
,如图
4.6
中的第
一个
0xF6
。
3
)重新开始
IIC
传输(
Restart
)
p>
。
4
)发送模块
地址
+R
(表示要进行读操作)
,如图
4.6
中的
0xEF
< br>。
5
)读取测量值的高
8
位(
MSB
)
p>
。
6
)读取测量值的低
8
位(
LSB
)
。
3.2.4
BMP085
控制程序总结
从图
3.5
与图
3.6
可以清楚地看出
MCU
控
制
BMP085
的方法,
这里再进行一
些
简单的概括。其实对
BMP085
的控制可以概括为两句话:向固定的寄存器(
0xF4
)
写特定值,从特定的寄存器读返回值。每次通讯时的
< br>Module
address
都是一个固定
的值,主要是为了符合
IIC
协议。
1
)向固定的寄存器(
0xF4
)写特定值
其实
就是向
0xF4
地址写不同的值从而完成温度测量或不同的压力
精度的测量。
2
)从特定的寄存器读返回值
从
EEPROM
读取
Calibration
所需要的数据,共有
11
个
WORD
(双字节)
。<
/p>
从
0xF6
,
0xF7
,
0xF8
< br>,
读取
UT
或者
UP
,
具体是
UP
还是
UT
要由前面进行的操作决定
(进
行了温度转换就存有温度数据,进行了压力转换就存有压力数据)
。
19
西京学院本科毕业设计(论文)
3.2.5
BMP085
电路结构
BMP085
电路结构图如下图
3.7
所示。
图
3.7
BMP085
电路结构
3.3
LCD
数码显示
3.3.1
1602
字符型
LCD
简介
字符型液晶显示模块是一种专门用于显示字母、数字、符号等点阵式
L
CD
,目
前常用
16
< br>?
1
,
16
?
2
,
20
?
2
和
40
?
2
行等的模块。下面以长沙太阳人电子有限公司
的
1602
字符型液晶显示器为例,介绍其用法。一
般
1602
字符型液晶显示器实物如
图
3.8
所示。
20
西京学院本科毕业设计(论文)
图
3.8
1602
字符型液晶显示器实物图
3.3.2
1602LCD
的基本参数及引脚功能
1602LCD
分为带背光和不带背光两种,基控制器大部分为
HD44780
,带背光的
比不带背光
的厚,是否带背光在应用中并无差别,两者尺寸差别如下图
3.9
所示。
图
3.9
1602LCD
尺寸图
21
西京学院本科毕业设计(论文)
1602LCD
主要技术参数:
p>
显示容量
:16×
2
个字符
芯片工作电压
:4.5
p>
—
5.5V
工作电流
:2.0mA(5.0V)
模块最佳工作电压
:5.0V
字符尺
寸
:2.95×
4.35(W×
H)m
m
引脚功能说明:
1602LCD
采用标准的
14
脚(无背光)或
16
脚(带背光)接口,各引脚接口说明如
表
3.1
所示
。
表
3.1
引脚接口说明表
编号
1
2
3
4
5
6
7
8
符号
VSS
VDD
VL
RS
R/W
E
D0
D1
引脚说明
电源地
电源正极
液晶显示偏压
数据
< br>/
命令选择
读
/
写选择
使能信号
数据
数据
编号
9
10
11
12
13
14
15
16
符号
D2
D3
D4
D5
D6
D7
BLA
BLK
引脚说明
数据
数据
数据
数据
数据
数据
背光源正极
背光源负极
第
1
脚:
VSS
为地电源。
第
2
脚:
VDD
接
5V
正电源。
p>
第
3
脚:
VL
为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比
度最高,对比度过高时会产生
“
鬼影<
/p>
”
,使用时可以通过一个
10K
的电位器调整对比
度。
第
4
脚:
RS
为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存
器。
第
5
脚:
< br>R/W
为读写信号线,高电平时进行读操作,低电平时进行写操作。当
RS
和
R/W
共同为低电
平时可以写入指令或者显示地址,当
RS
为低电平
R/W
为高
电平时可以读忙信号,当
RS
为高电平
R/W
为低电平
时可以写入数据。
第
6
脚:
E
端为使能端,当
E<
/p>
端由高电平跳变成低电平时,液晶模块执行命令。
第
7
~
14
脚:
D0
~
D7
为
8
位双向数据线。
22
西京学院本科毕业设计(论文)
第<
/p>
15
脚:背光源正极。
第
16
脚:背光源负极。
3.3.3
1602LCD
的时序
与
HD44780
相兼容的芯片时序表
3.2
如下。
表
3.2
基本操作时序表
读状态
输入
RS=L
,
R/W=H
,
E=H
输出
D0
—
D7=
状态
字
写指令
输入
RS=L
,
R/W=L
,
D0
—
D7=
指令码,
E=
输出
无
高脉冲
读数据
输入
RS=H
,
R/W=H
,
E=H
输出
D0
—
D7=
数据
写数据
输入
RS=H
,
R/W=L
,
D0
—
D7=
数据,
E=
输出
无
高脉冲
读写操作时序如图
3.10
和
3.11
所示
。
图
3.10
读操作时序
23
西京学院本科毕业设计(论文)
图
3.11
写操作时序
3.3.4
1602
电路结构
< br>液晶显示模块
1602
电路结构图如图
< br>3.12
所示。
图
3.12
1602
显示模块电路图
24
西京学院本科毕业设计(论文)
3.4
蜂鸣器
蜂鸣器是一种一体化结构的电
子讯响器,采用直流电压供电,广泛应用于计
算机、打印机、复印机、报警器、电子玩具
、汽车电子设备、电话机、定时器等
电子产品中作发声器件。蜂鸣器主要分为压电式蜂鸣
器和电磁式蜂鸣器两种类
型。如下图
3.13
< br>所示。
图
3.13
蜂鸣器
3.5
总体电路显示
综上所述,本次设计有单片机最小系统,气压传感器,
LCD1602
数码显示模块,
蜂鸣器报警模块。总体原理图如下图
3.14
所示。
25
西京学院本科毕业设计(论文)
图
3.14
系统总原理图
26
-
-
-
-
-
-
-
-
-
上一篇:ECSI
下一篇:英国文学史期末复习要点