基于ARM7与DS18B20的数字温度计的方案设计书.docx

上传人:b****6 文档编号:7981338 上传时间:2023-01-27 格式:DOCX 页数:34 大小:420.86KB
下载 相关 举报
基于ARM7与DS18B20的数字温度计的方案设计书.docx_第1页
第1页 / 共34页
基于ARM7与DS18B20的数字温度计的方案设计书.docx_第2页
第2页 / 共34页
基于ARM7与DS18B20的数字温度计的方案设计书.docx_第3页
第3页 / 共34页
基于ARM7与DS18B20的数字温度计的方案设计书.docx_第4页
第4页 / 共34页
基于ARM7与DS18B20的数字温度计的方案设计书.docx_第5页
第5页 / 共34页
点击查看更多>>
下载资源
资源描述

基于ARM7与DS18B20的数字温度计的方案设计书.docx

《基于ARM7与DS18B20的数字温度计的方案设计书.docx》由会员分享,可在线阅读,更多相关《基于ARM7与DS18B20的数字温度计的方案设计书.docx(34页珍藏版)》请在冰豆网上搜索。

基于ARM7与DS18B20的数字温度计的方案设计书.docx

基于ARM7与DS18B20的数字温度计的方案设计书

综合电子课程设计

总结报告

 

设计项目:

基于ARM7与DS18B20的数字温度计的设计

项目完成人:

指导教师:

学院:

信息与计算机工程学院

专业:

电子信息工程2008级3班

2011年7月7日

综合电子课程设计任务书

学生姓名

学号

专业(班级)

08级电信3班

同组成员

设计项目

基于ARM7与DS18B20的数字温度计的设计

设计内容

本设计利用DS18B20智能温度传感器、ARM7LPC2131嵌入式系统、MS12864LCD液晶屏,设计一个数字温度采集系统。

人机接口电路的设计:

控制系统采用ARM7LPC2131,键盘采用独立按键,显示器采用MS12864液晶屏,温度超限报警采用LED。

主要技

术指标

和要求

1.测量温度范围:

-50℃~150℃;

2.精度:

±0.5℃;

3.线性度:

±0.3℃;

4.超限报警功能;

5.具有温度和时间显示功能;

6.工作电压:

总线供电。

设计所用仪器设备

1.ARM7LPC2138小系统;

2.高精度温度计;

3.数字万用表;

4.示波器。

工作计划

1.2011年6月22日:

下达课程设计任务书;

2.2011年6月23日:

撰写开题报告;

3.2011年6月25日:

开题答辩PPT;

4.2011年6月26日~6月27日:

硬件分析与设计、软件结构化设计;

5.2011年6月28日~7月9日:

电路焊接与组装、软件结构化编程、单元调试、系统联调、撰写课程设计总结报告;

6.2011年7月10日:

课程设计结题验收,提交数字温度计系统一套、总结报告一份。

参考资料

温度传感器DS18B20芯片资料

液晶屏MS12864R中文资料

嵌入式ARM7LPC2131开发板系统原理

指导教师签子

系主任签字

数字温度计的设计

摘要

本系统用ARM7LPC2131、温度传感器DS18B20、液晶屏12864、LED等组成,系统可实现实时显示当前室内温度功能。

系统除基本数字温度计功能外,还具有显示当前时间和日期、温度超限报警、设置时间和日期初值功能。

在设计中我们应用ARM7开发板。

ARM7开发板具有丰富的硬件资源。

本设计采用LPC2131控制可编程芯片DS18B20实现对温度的采集。

利用LPC213内部时钟资源采集时间和日期。

温度、时间和日期通过液晶屏12864显示,温度超限报警通过LED闪烁提示。

本文详细介绍了如何实现对DS18B20编程采集温度功能,以及如何采集ARM7LPC2131内部时钟资源,并实现键盘输入修改日期时间、温度超限报警等功能。

关键词:

LPC2131;DS18B20;12864;温度超限报警;

 

2.1EasyARM2131开发板.........................................................................................................4

2.2温度传感器DS18B20..........................................................................................................5

2.3MS12864R液晶屏简介.....................................................................................................6

3.1ARM7开发板硬件设计......................................................................................................9

3.2LCD液晶屏显示设计........................................................................................................9

3.3DS18B20温度传感器的设计..........................................................................................10

数字温度计设计

1绪论

1.1引言

近年来随着科技的飞速发展,嵌入式的应用正在不断深入,同时带动传统控制检测技术日益更新。

在实时检测和自动控制的嵌入式应用系统中,嵌入式往往作为一个核心部件来使用,仅嵌入式方面知识是不够的,还应根据具体硬件结构软硬件结合,加以完善。

温度是一种最基本的环境参数,人们生活与环境温度息息相关,在工业生产过程中需要实时测量温度,在工业生产中也离不开温度的测量,因此研究温度的测量方法和控制具有重要的意义。

DS18B20是美国DALLAS半导体公司继DS1820之后最新推出的一种改进型智能温度传感器,通过此次项目设计,可以在原有的理论基础上,更加深入的了解传感器的工作原理特别是DS18B20温度传感器的工作原理,同时提高我们的实践动手能力以及逻辑思维能力,特别是拓宽了对ARM控制器的使用视野。

数字温度计的控制方式很多。

本系统采用LPC2000系列ARM芯片和可编程串行I/O接口芯片DS18B20为中心器件来设计数字温度计,实现了设计一个数字温度采集系统,利用LCD液晶屏显示当前温度、时间和日期,并具有温度超限报警功能

1.2系统方案设计

利用控制芯片、温度传感器、LCD液晶屏、时钟资源、LED等分别实现:

(1)实时显示当前室内温度

(2)显示年、月、日、星期、时、分、秒;

(3)能够通过键盘输入日期和时间的初值;

(4)温度超限报警;

图1-1为设计方案总体框图

图1-1设计方案总体框图

系统初始化后,LCD上显示当前室内温度,同时LCD上显示时间和日期,通过功能键能实现日期和时间的初值设定,如果温度超过预先设定的温度值,八个LED灯会闪烁提示温度超限。

1.3方案论证

(1)显示模块

方案一:

使用LCD液晶屏12864作为时间日期显示,LCD液晶显示器的构造是在两片平行的玻璃当中放置液态的晶体,两片玻璃中间有许多垂直和水平的细小电线,透过通电与否来控制杆状水晶分子改变方向,将光线折射出来产生画面。

显示清晰,实现功能全。

方案二:

使用8为数码管作为显示,通过芯片HD7279控制数码管,可实现时间和日期还有当前温度显示,缺点是数码管显示数字,显示不灵活多变。

由于LCD可同时显示温度和时间,显示清晰,实现功能全。

故选用方案一LCD12864作为显示模块。

(2)温度传感器

DS18B20数字温度传感器,该产品采用美国DALLAS公司生产的DS18B20可组网数字温度传感器芯片封装而成,具有耐磨耐碰,体积小,使用方便,封装形式多样,适用于各种狭小空间设备数字测温和控制领域。

由于DS18B20性能已经够好,控制起来也比较方便,故不需要对比,直接选用DS18B20作为温度传感器

(3)时钟电路模块

方案一:

DS1302一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、周日、时、分、秒进行计时,具有闰年补偿功能,工作电压为2.5V~5.5V。

采用三线接口与CPU进行同步通信,并可采用突发方式一次传送多个字节的时钟信号或RAM数据。

DS1302内部有一个31×8的用于临时性存放数据的RAM寄存器。

  方案二:

ARM7LPC2131具有丰富的硬件资源,直接编程即可使用内部时钟资源

由于使用DS1302还得外接电路而且编程比较麻烦,故选用ARM7内部时钟资源

(4)报警电路

报警电路采用8只LED,控制方便、准确。

2系统主要器件选型及依据

2.1EasyARM2131开发板

EasyARM2131开发板是广州周立功公司设计的EasyARM系列开发套件之一,采用了PHILIPS公司基于ARM7TDMI-S核、单电源供电、LQFP64封装的LPC2131,具有JTAG仿真调试、ISP编程等功能。

开发板上提供了一些键盘、LED、蜂鸣器等常用功能部件,还具有RS232接口电路、I2C存储器电路。

另外,用户也可以更换兼容的CPU进行仿真调试,如LPC2132、LPC2138、LPC2142等。

灵活的跳线组合(开发板内使用的所有I/O均可断开连接),还有用户I/O接口,极大地方便了用户进行32位ARM嵌入式系统的开发实验。

EasyARM2131实验板功能特点:

*完全自主设计的软硬件、拥有自主版权的JTAG仿真技术;

*支持ADS1.2集成开发环境及其PHILIPS所有型号ARM微控制器的仿真与开发;

*采用“主板+CPUPACK适配器+SD卡适配器(标准配置)+多种可选配置适配器”

*的形式构成EasyARM2131开发套件,标准配置的CPUPACK主芯片为

LPC2131FBD;

*板上的功能部件与CPU之间,可以使用跳线器选择连接;

*全面支持9种型号的64PIN小管脚ARM7微控制器:

-LPC213x(LPC2131/2132/2134/2136/2138)

-内置USB接口的LPC214x(LPC2142/2144/2146/2148)

*多种免费商业化软件包及其详细的开发文档:

*移植μC/OS-II到ARM7软件包

*数据队列软件包

*串口驱动软件包

*MODEM接口软件包

*SPI总线软件包

*I2C总线软件包

*ZLG/FSV1.0版本文件管理系统软件包

*ZLG/GUI图形用户界面软件包

*ZLG/SD卡读写软件包

*ZLG/USB固件程序及其驱动程序软件包

*多种可选配置适配器:

-各种型号的CPUPACK,用户可按需求和喜好配置主ARM芯片

-MG12864点阵图型液晶模块

*所有I/O口全部引出,方便用户连接外部电路的开发与使用;

*可进行GPIO的控制实验,如键盘输入、蜂鸣器控制、模拟SPI等;

*6个独立按键(可用于外部中断、定时器捕获输入),8个LED指示灯;

*具有RS232转换电路,可与上位机进行通讯,完成UART通讯实验;

*可以与标准串行modem直接接口,方便远程通讯;

*具有I2C接口和SPI/SSP接口输出;

*提供基于PC的人机界面,方便调试实时时钟、串口通信等功能;

*可进行外部中断实验,学习向量中断控制器(VIC);

*定时器控制实验,如定时控制LED、定时器捕获等;

*使用板内的CAT1025(内含复位功能),完成I2C总线的实验;

*使用74HC595芯片,实现SPI接口数据发送、接收实验;

*A/D转换实验;DAC转换实验(更换CPU为LPC2132及以上);

*实时时钟控制实验;

*WDT及低功耗控制实验;

*54个基础实验及其大量的中间件软件包,完整地验证了几乎所有的硬件功能资源;

*详细的配套资料(《深入浅出ARM7—LPC213x/214x》(上/下册),北航出版社,其中上册为标准配置)。

2.2温度传感器DS18B20

DS18B20数字温度计是DALLAS公司生产的1-Wire,即单总线器件,具有线路简单,体积小的特点。

因此用它来组成一个测温系统,具有线路简单,在一根通信线,可以挂很多这样的数字温度计,十分方便。

DS18B20产品的特点

  

(1)、只要求一个端口即可实现通信。

  

(2)、在DS18B20中的每个器件上都有独一无二的序列号。

  (3)、实际应用中不需要外部任何元器件即可实现测温。

  (4)、测量温度范围在-55。

C到+125。

C之间。

  (5)、数字温度计的分辨率用户可以从9位到12位选择。

  (6)、内部有温度上、下限告警设置。

DS18B20的引脚介绍

  TO-92封装的DS18B20的引脚排列见图1,其引脚功能描述见表1。

DS18B20的使用方法

  由于DS18B20采用的是1-Wire总线协议方式,即在一根数据线实现数据的双向传输,而对AT89S51单片机来说,硬件上并不支持单总线协议,因此,我们必须采用软件的方法来模拟单总线的协议时序来完成对DS18B20芯片的访问。

  由于DS18B20是在一根I/O线上读写数据,因此,对读写的数据位有着严格的时序要求。

DS18B20有严格的通信协议来保证各位数据传输的正确性和完整性。

该协议定义了几种信号的时序:

初始化时序、读时序、写时序。

所有时序都是将主机作为主设备,单总线器件作为从设备。

而每一次命令和数据的传输都是从主机主动启动写时序开始,如果要求单总线器件回送数据,在进行写命令后,主机需启动读时序完成数据接收。

数据和命令的传输都是低位在先。

DS18B20的复位时序

DS18B20的读时序

  对于DS18B20的读时序分为读0时序和读1时序两个过程。

  对于DS18B20的读时隙是从主机把单总线拉低之后,在15秒之内就得释放单总线,以让DS18B20把数据传输到单总线上。

DS18B20在完成一个读时序过程,至少需要60us才能完成。

DS18B20的写时序

  对于DS18B20的写时序仍然分为写0时序和写1时序两个过程。

  对于DS18B20写0时序和写1时序的要求不同,当要写0时序时,单总线要被拉低至少60us,保证DS18B20能够在15us到45us之间能够正确地采样IO总线上的“0”电平,当要写1时序时,单总线被拉低之后,在15us之内就得释放单总线。

2.3MS12864R液晶屏简介

MS12864R汉字图形点阵液晶显示模块,可显示汉字及图形,内置8192个中文汉字(16X16点阵)、128个字符(8X16点阵)及64X256点阵显示RAM(GDRAM)。

主要技术参数和显示特性:

电源:

VDD3.3V~+5V(内置升压电路,无需负压);

显示内容:

128列×64行

显示颜色:

黄绿

显示角度:

6:

00钟直视

LCD类型:

STN

与MCU接口:

8位或4位并行/3位串行

配置LED背光

多种软件功能:

光标显示、画面移位、自定义字符、睡眠模式等

模块引脚说明

MS128X64R引脚说明

引脚号

引脚名称

方向

功能说明

1

VSS

-

模块的电源地

2

VDD

-

模块的电源正端

3

V0

-

LCD驱动电压输入端

4

RS(CS)

H/L

并行的指令/数据选择信号;串行的片选信号

5

R/W(SID)

H/L

并行的读写选择信号;串行的数据口

6

E(CLK)

H/L

并行的使能信号;串行的同步时钟

7

DB0

H/L

数据0

8

DB1

H/L

数据1

9

DB2

H/L

数据2

10

DB3

H/L

数据3

11

DB4

H/L

数据4

12

DB5

H/L

数据5

13

DB6

H/L

数据6

14

DB7

H/L

数据7

15

PSB

H/L

并/串行接口选择:

H-并行;L-串行

16

NC

空脚

17

/RET

H/L

复位低电平有效

18

VOUT

19

LED_K

-

背光源负极(LED-OV)

20

LED_A

-

背光源正极(LED+5V)

逻辑工作电压(VDD):

4.5~5.5V

电源地(GND):

0V

工作温度(Ta):

0~60℃(常温)/-20~75℃(宽温)

接口时序

模块有并行和串行两种连接方法(时序如下):

8位并行连接时序图

MPU写资料到模块

MPU从模块读出资料

串行连接时序图

串行数据传送共分三个字节完成:

第一字节:

串口控制—格式11111ABC

A为数据传送方向控制:

H表示数据从LCD到MCU,L表示数据从MCU到LCD

B为数据类型选择:

H表示数据是显示数据,L表示数据是控制指令

C固定为0

第二字节:

(并行)8位数据的高4位—格式DDDD0000

第三字节:

(并行)8位数据的低4位—格式0000DDDD

串行接口时序参数:

(测试条件:

T=25℃VDD=4.5V)

3硬件设计

3.1ARM7开发板硬件设计

系统原理图设计如图3-1所示,ARM7LPC213系统实现如下功能:

(1)控制温度传感器DS18B20读取当前温度值;

(2)控制ARM7内部时钟资源读取时间和日期;

(3)控制LCD液晶屏显示当前温度、时间和日期;

(4)控制LED温度超限报警。

图3-1系统原理图

3.2LCD液晶屏显示设计:

LCD液晶屏显示电路如图3-2所示。

该液晶可实现显示当前年、月、日、周、时、分秒和温度值,具体控制和实现方法如下:

(1)ARM7的P0.0-P0.7口连接液晶屏的DBO-DB7,控制对液晶屏并行数据读和写;

(2)ARM7的P0.8口连接液晶屏的RS口,控制并行的指令/数据选择信号;

(3)ARM7的P0.9口连接液晶屏的R/W口,控制并行的读写选择信号;

(4)ARM7的P0.10口连接液晶屏的EN口,控制并行的使能信号;;

(5)ARM7的P0.11口连接液晶屏的PSB口,控制并/串行接口选择:

H-并行;L-串行;

(6)ARM7的P0.12口连接液晶屏的RET口,实现对液晶屏的复位,低电平有效;

 

图3-2LCD液晶屏电路图

3.3DS18B20温度传感器的设计

电路如图3-3所示,该温度传感器电路可实现对温度传感器DS18B20数据的读写,具体控制方法如下:

(1)ARM7的P0.30口连接DS18B20的DQ口,控制串行数据的读和写;

(2)DS18B20的VDD连接到ARM7开发板的VDD上;

(3)DS18B20的GND连接到ARM7开发板的GND上;

图3-3温度传感器电路

 

4系统的软件设计

4.1系统主流程图

图4-1为系统主流程图,主流程图具体介绍如下:

(1)系统初始化包括对DS18B20进行初始化、设定GPIO、RTC初始化、液晶屏初始化;

(2)初始化之后显示当前室内温度同时显示日期和时间;

(3)与此同时进行按键判断,如果有按键继续判断是什么按键,如果是修改时间按键那么修改时间;如果是修改日期按键那么修改日期。

如没有按键按下,那么判断室内温度是否超过预先设定值,如果超过驱动LED闪烁报警。

图4-1系统主流程图

 

4.2温度传感器功能模块

图4-2为温度传感器功能模块流程图;

图4-2温度传感器功能模块流程图

4.3液晶显示功能模块

图4-3为液晶显示功能模块流程图;

图4-3液晶显示功能模块流程图

 

5总结

本系统利用控制芯片、温度传感器、LCD液晶屏、LED等分别实现:

(1)实时显示当前室内温度

(2)显示年、月、日、星期、时、分、秒;

(3)能够通过键盘输入日期和时间的初值;

(4)温度超限报警;

系统设计简便、实用性强、操作简单、程序设计简便。

系统不足:

时间和日期初值设定中利用按键较多,此外还没有充分考虑到温度超限报警的多变性,温度报警上限不可调节,只能预先程序中设定超限报警温度值。

一周的综合电子工艺课程设计结束了,可能在别人看来,这或许只是一个小的设计,可是它给于我的却不仅仅是这样,认真的做课程设计,运用ARM做一个系统的东西,我从心里给予了足够的重视。

刚开始做总是出问题,多次重新分析,从细节着手寻找问题,最后找到了。

发现自己想象的太多、太复杂,实际上只需要很简单的一种方法就可以的,问题解决了,也给我很多收获。

我觉得自己的方法不可行,关键的原因在于自己对ARM的工作原理没有透彻的理解,所以就不能很好的理解老师的设计要求,结果就造成了很多的弯路,找不到一种合理的途径去解决问题。

希望以后有机会可以多做一些这样的设计,增强自己的设计意识,加深所学的知识。

 

参考文献

[1]郁有文传.感器原理及工程应用(第三版).西安电子科技出版社,2008.7

[2]阎石.数字电子技术基础(第四版).高等教育出版社,1998.11

[3]周立功.ARM嵌入式系统基础教程(第二版).北京航空航天大学出版社,2008.9

[4]汪建军.基于非平衡电桥的电阻数字温度计设计[J].浙江万里学院学报,2009

[5]老虎工作室.电路设计与制板protel99se典型实例.人民邮电出版社

[6]宋文绪、杨帆.传感器与检测技术[M].高等教育出版社,2004:

 

附录A

/**********************************************************************************

*描述:

*

*

(1)此程序所有延时采用定时器做

(2)开发板上的P0.30口连接温度传感器DQ口线

(3)开发板上P0.0-P0.7口连接液晶屏的DBO-DB7,其他液晶口线连接详见程序中宏定义

(4)如需液晶显示的更清楚,需在液晶屏上加10K电位器,调节液晶屏输入参考电压

**

*******************************************************************************/

#include

#defineeq1<<30

#defineuint8unsignedchar

#defineFpclk11059200

#definekey11<<16

#definekey21<<17

#definekey31<<18

#definekey41<<19

#definekey51<<20

#definekey61<<21

intnn=0,yy=0,rr=0,zz=0,ss=0,ff=0,mm=0;

/*******************定义与LCD相关的宏*******************/

#defineLCD_DATA0xFF

#defineLCD_DI1<<8//与p0.8对应

#defineLCD_RW1<<9//与p0.9对应

#defineLCD_EN1<<10//与p0.10对应.

#defineLCD_PSB1<<11//与p0.11对应//电路直接拉高

#defineLCD_RST1<<12//与p0.12对应//上电自动复位,一般也可以不接*

#defineclear_screen0x01

#definereset_address0x02

#defineset_point0x06//0000_0110

#definedisplay_set0x0c//显示设定

#definecursor_shift_control0x1c//0001_1100

#definefunction_set0x30//功能设定基本

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试认证 > 司法考试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1