基于ARM的温湿度采集系统.19页

上传人:文库****9 文档编号:173995873 上传时间:2021-03-15 格式:DOC 页数:19 大小:223.50KB
返回 下载 相关 举报
基于ARM的温湿度采集系统.19页_第1页
第1页 / 共19页
基于ARM的温湿度采集系统.19页_第2页
第2页 / 共19页
基于ARM的温湿度采集系统.19页_第3页
第3页 / 共19页
基于ARM的温湿度采集系统.19页_第4页
第4页 / 共19页
基于ARM的温湿度采集系统.19页_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《基于ARM的温湿度采集系统.19页》由会员分享,可在线阅读,更多相关《基于ARM的温湿度采集系统.19页(19页珍藏版)》请在金锄头文库上搜索。

1、编编 号号2 2 期期末末大大作作业业 题目:题目:基于 ARM 的温湿度采集系统 物联网工程 学院 计算机科学与技术 专业 学 号 0304100222 学生姓名 仲其龙 指导教师 陈志国 二一三年五月 摘要 摘摘 要要 课题是基于 S3C44B0 x ARM 微处理器为核心,采用 LCD 液晶显示,设计空气中的温 温度和湿度数据采集显示系统。设计的过程主要包括硬件设计和软件设计,其中软件设 计为 C 语言设计。系统的主要功能是从空气中采集数据,通过 A/D 转换器,转换为数字 信号,并通过 LCD 液晶显示屏显示。实现了智能化的温度数据采集、传输、处理与显示 功能。 关键词:ARM;S3C

2、44B0 x;嵌入式系统;数据采集 目录 目目 录录 摘 要 .I 目 录 .I 第 1 章 概述 .1 1.1 实验目的及要求 .1 1.2 实验内容 .1 第 2 章 设计原理 .2 2.1 硬件系统总体设计 .2 2.2 LCD 液晶显示设计 .2 2.2.1 S3C44B0X LCD 控制器介绍 .2 2.2.2 显示控制 .3 2.2.3 电路设计 .3 2.3 A/D 转换设计 .4 2.3.1 采样保持接口 .4 2.3.2 分压电路 .4 2.4 电源电路设计 .5 2.5 温度采集电路设计 .6 第 3 章 设计步骤 .7 3.1 软件设计 .7 3.2 关键代码 .8 第

3、4 章 实验结果及结果分析 .12 4.1 实验结果 .12 4.2 实验结果分析 .12 第 5 章 小结 .12 参考文献 .13 嵌入式系统期末大作业 0 第第 1 章章 概述概述 1.1 实验目的及要求实验目的及要求 目前嵌入式系统的研究和应用中,ARM 芯片的使用越来越广泛。本课程的目的是了解 嵌入式系统基础理论的前提下,掌握一些常用的 ARM 处理器相关的汇编语言和 C 语言程序 设计方法,熟悉基于 S3C44B0X 芯片的硬件接口设计方法,学会使用 ARM 集成开发环境, 从而了解嵌入式系统的软硬件设计过程,为今后从事相关领域的应用和研究打好基础。通过 大作业期望可以实现如下目的

4、: 一、掌握一种 ARM 的开发工具使用方法; 二、掌握 S3C44B0X ARM 处理器的原理和接口设计方法; 三、掌握 ARM 的 C 语言和汇编语言编程方法; 四、培养选用参考书、查阅技术手册及相关参考文献的能力; 五、培养独立思考、分析问题和解决问题的能力; 六、培养严肃认真的学习风气和良好的沟通协作能力。 1.2 实验内容实验内容 题目题目:基于 ARM 的温湿度显示系统 具体要求:具体要求: 1以 S3C44B0X 的 ARM 处理器为核心,选择合适的元器件,设计一个空气中的温度和湿 度 的显示系统; 2温度传感器和湿度传感器的类型不限,要求温度测量范围为-20+60,湿度测量范

5、围 为 10%90%; 3温度和湿度的显示,可以采用八段数码管或 LCD 液晶屏的形式; 4要求给出 S3C44B0X 和主要装置的硬件连接电路图(原理图) ; 5要求编写相关的温湿度采集和显示程序,并给出合理的程序注释。 本科生毕业论文(设计)题目 1 1 第第 2 章章 设计原理设计原理 2.1 硬件系统总体设计硬件系统总体设计 在本系统的设计过程中,根据嵌入式系统的基本设计思想,系统采用了模块化的设计 方法;并且根据系统的功能要求和技术指标,系统遵循自上而下、由大到小、由粗到细 的设计思想;按照系统的功能层次,在设计中把硬件和软件分成若干功能模块分别设计 和调试,然后全部连接起来统调。

6、本设计的基于ARM 的嵌入式数据采集和显示装置的原理框图如图1所示。由图可见, 本系统采用“电源部分ARM 核心控制模块温度采集模块”实现所需功能。下面分别 对各部分的工作原理做简要的说明: 多路温度传感器协控制器RS-232 电源电路 ARM处理器 LCD显示 键盘 Flash ROM存储 器 SDRAM存储器 图1 为了实现系统所要求的功能和指标,并考虑到系统的可扩展性和延伸性,本系统采用 主从CPU协同工作,实现了数据的实时采集、传输与显示,具有处理速度快、精度高、人 机交互界面友好、稳定性高、扩展性好等优点。 2.2 LCD 液晶显示设计液晶显示设计 2.2.1 S3C44B0X LC

7、D 控制器介绍控制器介绍 S3C44B0X 处理器集成 LCD 控制器,支持 4 位单扫描、4 位双扫描和 8 位单扫描工作 方式。处理器使用内部 RAM 区作为显示缓存,并支持屏幕水平和垂直滚动显示。数据的 传送采用 DMA(直接内存访问)方式,以达到最小的延迟。根据实际硬件水平和垂直像素 点数、传送数据位数、时间线和帧速率方式等进行编程以支持多种类型的液晶屏。可以 支持的液晶类型有: 嵌入式系统期末大作业 2 - 单色液晶 - 4 级或 16 级灰度屏(基于时间抖动算法或帧速率控制-FRC) - 256 色彩色液晶(STN 液晶) 2.2.2 显示控制显示控制 LCD 控制器主要提供液晶屏

8、显示数据的传送、时钟和各种信号的产生与控制功能。 S3C44B0X处理器的LCD控制器主要部分框图如图2所示: 寄存器控制 数据控制DMA传送控制 信号产生电路 3232 32 System Bus VCLK VD3:0 VM VFRAME VLNE VD7:3 图2 LCD控制框图 2.2.3 电路设计电路设计 进行液晶屏控制电路设计时必须提供电源驱动、偏压驱动以及LCD 显示控制器。由于 S3C44B0X处理器本身自带LCD 控制器,而且可以驱动实验板所选用的液晶屏,所以控制 电路的设计可以省去显示控制电路,只需进行电源驱动和偏压驱动的电路设计即可。 图 3 液晶显示电路 本科生毕业论文(

9、设计)题目 3 3 2.3 A/D 转换设计转换设计 2.3.1 采样保持接口采样保持接口 在S3C44B0X中A/D模块有8 个模拟输入通道,通道的切换可以由内部的定时器完成。 如果要进行8个通道连续变化的信号的转换,还必须在8个通道全部加采样保持器,采样保 持的接口电路如下图。模拟输入信号为需要转换的信号,驱动控制信号可以通过编程利 用ARM里面的timer产生,也可以通过I/O 口来控制,输出信号直接接到A/D模块中的输入 通道。 图4 采样保持接口 2.3.2 分压电路分压电路 分压电路比较简单,为了保证电压转换时是稳定的,可以直接调节可变电阻得到稳定 的电压值。 嵌入式系统期末大作业

10、 4 图 5 分压电路 2.4 电源电路设计电源电路设计 本系统的电源电路由两部分组成:系统总电源电路和RAM核心模块电源电路。如图: +12V恒定直流电源经电容滤波,分别进入7809和7805稳压,得到+9V和+5V的稳定电压输 出后分别供给ARM核心控制模块和其余电路部分使用。图中IN4148是为了防止输出端并 接高于本稳压模块的输出电压而烧坏7809和7805而特别设计,达到了可靠性电源设计目 的。另外,由于系统正常工作电流较大,因此使用时均应在7809和7805上加散热片散热。 由图可见,系统采用双电源供电,提供了系统正常工作所需的电源电压。另外,由于考 虑到便携目的,本系统采用+12

11、V铅蓄电池提供系统所需的恒定直流电源。 本科生毕业论文(设计)题目 5 5 图6 电源电路 2.5 温度采集电路设计温度采集电路设计 温度采集模块电路如图。考虑到系统成本因素,此处采用AT89S52单片机作为模块的协控制器。 对于温度传感器的选用DS18B20,因为DS18B20是Dallas公司最新单总线数字温度传感器,该传感器集 温度变换、A/D转换于同一芯片,输出直接为数字信号,大大提高了电路的效率。由于现场温度直接 以“一线总线”的数字方式传输,大大提高了系统的抗干扰性,且提高了CPU的效率。图4中AT89S52 单片机的P0 口与8路温度传感器相连,用于采集温度数据;另外,模块提供R

12、S-232串行口与RAM核心 控制模块通信,达到数据传输的目的。 图 7 温度采集电路 嵌入式系统期末大作业 6 第第 3 章章 设计步骤设计步骤 3.1 软件设计软件设计 本温度数据采集与显示装置的主体由S3C44B0 x核心控制模块和温度数据采集模块构 成,所以系统软件也是围绕这两个模块来编写的。而又由于系统采用了 S3C44Box和 AT89S52两个CPU协同工作,所以软件的编写需要对这两个CPU分别编写,以实现所要求的 功能。 开始 ARM初始化 硬件装置初始化 扫描键盘 处理按键 键盘初始化 LCD显示初始化 相应显示 数据获取 数据处理 数据显示 有键按下Y N 软件设计流程图

13、由该流程图可看出,刚上电时,S3C44B0 x 要先进行 ARM 内部的初始化,以使 ARM 进 入相应的状态和模式;然后初始化硬件装置,以使硬件系统可以正常支持温度数据采集; 接着通信初始化,以确定温度采集模块与 ARM 核心控制模块连接正常,并通过 UART 复位 本科生毕业论文(设计)题目 7 7 温度数据采集模块,确保其进入正常温度数据采集状态;然后初始化 LCD 显示和键盘, 在 LCD 上显示相应的 菜单列表,供用户通过键盘选择操作;至此,系统初始化完成,并 进入正常主程序循环状态。 在正常主程序循环状态中,首先扫描键盘,以快速的响应用户的按键操作;若没有 键值按下,则 ARM 立

14、即进行数据的采集、处理与显示,以实现实时数据采集与显示等功 能。 3.2 关键代码关键代码 LCD 液晶屏初始化:液晶屏初始化: void lcd_init(void) rDITHMODE = 0 x12210; rDP1_2= 0 xa5a5; rDP4_7= 0 xba5da65; rDP3_5= 0 xa5a5f; rDP2_3 = 0 xd6b; rDP5_7 = 0 xeb7b5ed; rDP3_4= 0 x7dbe; rDP4_5 = 0 x7ebdf; rDP6_7 = 0 x7fdfbfe; / disable,8B_SNGL_SCAN,WDLY=16clk,WLH=16clk

15、, rLCDCON1= (0 x0)|(25)|(MVAL_USED7)|(0 x38)|(0 x310)|(CLKVAL_COLOR12); / LINEBLANK=10 (without any calculation) rLCDCON2 = (LINEVAL)|(HOZVAL_COLOR10)|(1021); rLCDCON3 = 0; / 256-color, LCDBANK, LCDBASEU rLCDSADDR1 = (0 x322)1); rLCDSADDR2=M5D(unsigned int)g_unLcdActiveBuffer+(SCR_XSIZE*LCD_YSIZE)1)

16、 | (MVAL21);、 rLCDSADDR3 = (LCD_XSIZE/2) | ( (SCR_XSIZE-LCD_XSIZE)/2)9 ); /The following value has to be changed for better display. rREDLUT =0 xfdb96420; / 1111 1101 1011 1001 0110 0100 0010 0000 rGREENLUT=0 xfdb96420; / 1111 1101 1011 1001 0110 0100 0010 0000 rBLUELUT =0 xfb40; / 1111 1011 0100 0000 rLCDCON1=(0 x1)|(25)|(MVAL_USED7)|(0 x38)|(0 x310)|(CLKVAL_COLOR 12); rPDATE=rPDATE lcd_clr(); 嵌入式系统期末大作业 8 LCDLCD显示温度湿度代码:显示温度湿度代码: /- /显示温度湿度 /- void word_view320 x240 x256(UINT8T *pBuffer) UINT3

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号