基于ARM嵌入式数据采集系统的设计(DOC).doc

上传人:龙*** 文档编号:297887 上传时间:2018-09-17 格式:DOC 页数:11 大小:98.80KB
下载 相关 举报
基于ARM嵌入式数据采集系统的设计(DOC).doc_第1页
第1页 / 共11页
基于ARM嵌入式数据采集系统的设计(DOC).doc_第2页
第2页 / 共11页
基于ARM嵌入式数据采集系统的设计(DOC).doc_第3页
第3页 / 共11页
基于ARM嵌入式数据采集系统的设计(DOC).doc_第4页
第4页 / 共11页
基于ARM嵌入式数据采集系统的设计(DOC).doc_第5页
第5页 / 共11页
点击查看更多>>
资源描述

1、 1 嵌入式系统 专 业: 电子信息科学与技术 班 级: 0311411 学 号: 031141105 学生姓名: 刘光明 2 基于 ARM的嵌入式数据采集系统 一、设计内容 1.1 设计目的 1、注重培养综合运用所学知识、独立分析和解决实际问题的能力,培养创新意识和创新能力,并获得科学研究的基础训练。 2、了解 所选择的 ARM 芯片各个引 脚功能,工作方式,计数 /定时, I/O 口 ,中断等 的相关原理,并巩固学习 嵌入式 的相关 内容知识。 3、通过软硬件设计实现 利用 ARM 芯片对周围环境温度信号的采集及显示 。 1.2 设计意义 嵌入式系统是以应用为中心,以计算机技术为基础,且软

2、硬件可裁剪,适应应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。它一般由以下几部分组成:嵌入式微处理器 、 外围硬件设备 、 嵌入式操作系统 。 嵌入式系统是面向用户、面向产品、面向应用的,它必须与具体应用相结合才会具有生命力、才更具有优势。因此嵌入式系统是与应用紧密结合的,它具有很强的专用性,必须结合实际系统需求进行合理的裁减利用。嵌入式系统是将先进的 计算机技术、半导体技术和电子技术和各个行业的具体应用相结合后的产物,这一点就决定了它必然是一个技术密集、资金密集、高度分散、不断创新的知识集成系统。嵌入式系统必须根据应用需求对软硬件进行裁剪,满足应用系统的功能、可靠性、成

3、本、体积等要求。所以,如果能建立相对通用的软硬件基础,然后在其上开发出适应各种需要的系统,是一个比较好的发展模式。目前的嵌入式系统的核心往往是一个只有几 K 到几十 K 微内核,需要根据实际的使用进行功能扩展或者裁减,但是由于微内核的存在,使得这种扩展能够非常顺利的进行。 数据采集 (DAQ),是指 从传感器和其它待测设备等模拟和数字被测单元中自动采 集 非电量或者电量信号 , 送到上位机中进行分析,处理。数据采集系统是结合基于计算机或者其他专用测试平台的测量软硬件产品来实现灵活的、用户自定义的测量系统 。 被采集数据是已被转换为电讯号的各种物理量,如温度、水位、风速、压力等,可以是模拟量,也

4、可以是数字量。采集一般是采样方式,即隔一定时间(称采样周期)对同一点数据重复采3 集。采集的数据大多是瞬时值,也可是某段时间内的一个特征值。准确的数据量测是数据采集的基础。数据量测方法有接触式和非接触式,检测元件多种多样。不论哪种 方法和元件,均以不影响被测对象状态和测量环境为前提,以保证数据的正确性。 传统的 温度 采集系统由于存在响应慢、精度低、可靠性差、效率低、操作繁琐等弊端,已经不能完全适应现代化工业的高速发展。随着嵌入式技术的迅猛发展,设计高速度、高效率、低成本、高可靠性、操作方便的 温度 采集系统成为当务之急。 基于 ARM 的温度采集系统就成为了解决传统温度采集系统各种弊端的优先

5、选择方案。 4 二、设计方案 2.1 设计要求 1、查阅相关文献资料,熟悉所选 ARM 芯片及温度传感器 2、总体设计方案 规划 3、系统硬件设计,熟悉 AD 转换原理及过程,温度传感器与 ARM 芯片的硬件接口实现及温度显示。 4、系统软件设计,包括温度的 AD 转换及显示的软件实现,用 C 语言编程 5、设计心得体会及总结 2.2 方案论证 有许多客观需求促进了 ARM 处理器的设计改进。首先,便携式的嵌入式系统往往需要电池供电。为降低功耗, ARM 处理器已被特殊设计成较小的核,从而延长了电池的使用时间。 高的代码密度是嵌入式系统的又一个重要需求。由于成本问题和物理尺寸的限制,嵌入式系统

6、的存储器是很有限的。所以,高的代码密度对于那些只限于在板存储 器的应用是非常有帮助的。 另外,嵌入式系统通常都是价格敏感的,因此一般都使用速度不高、成本较低的存储器。 ARM 内核不是一个纯粹的 RISC 体系结构,这是为了使它能够更好的适应其主要应用领域嵌入式系统。在某种意义上,甚至可以认为 ARM 内核的成功,正是因为它没有在 RISC 的概念上沉入太深。现在系统的关键并不在于单纯的处理器速度,而在于有效的系统性能和功耗 。 在本系统的设计过程中,根据嵌入式系统的基本设计思想,系统采用了模块化的设计方法 , 并且根据系统的功能要求和技术指标,系统遵循自上而下、由大到小、由粗到 细的设计思想

7、 , 按照系统的功能层次,在设计中把硬件和软件分成若干功能模块分别设计和调试,然后全部连接起来统调。 5 三、硬件设计 3.1 设计思路 本设计的基于 ARM 的嵌入式数据采集和显示装置的原理框图如图 3-1 所示。由图可见,本系统采用 “ 电源部分 ARM 核心控制模块温度采集模块 ” 实现所需功能。并考虑到系统的可扩展性和延伸性,本系统采用主从 CPU 协同工作,实现了数据的实时采集、传输与显示,具有处理速度快、精度高、人机交互界面友好、稳定性高、扩展性好等优点。 本设计的基于 ARM 的嵌入式数据采集 和显示装置的原理框图如图 3-1 所示。由图可见,本系统采用 “ 电源部分 ARM 核

8、心控制模块温度采集模块 ” 实现所需功能。 电源部分 图 3-1 系统原理框图 多路温度传感器 协控制器 RS-232 ARM 处理器 LCD 显示器 Flash ROM存储器 SD RAM 存储器 键 盘 电源电路 ARM 核心控制模块 温度采集模块 6 3.2 系统电路设计 3.2.1 电源电路设计 本系统的电源电路由两部分组成:系统总电源电路和 RAM 核心模块电源电路。如图 3-2: +12V 恒定直流电源经电容滤波,分别进入 7809 和 7805 稳压,得到 +9V和 +5V的稳定电压输出后分别供给 ARM核心控制模块和其余电 路部分使用。图中 IN4148 是为了防止输出端并接高

9、于本稳压模块的输出电压而烧坏 7809 和7805 而特别设计,达到了可靠性电源设计目的。另外,由于系统正常工作电流较大,因此使用时均应在 7809 和 7805 上加散热片散热。 由图可见,系统采用双电源供电,提供了系统正常工作所需的电源电压。另外,由于考虑到便携目的,本系统采用 +12V 铅蓄电池提供系统所需的恒定直流电源。 图 3-2 系统电源电路 原理图 如图 3-2: I/O 口提供了相应的稳定直流电源。其中的 IN4004 是为了防止电源输入反接烧坏集成稳压块而 设计的。由于 S3C44B0x 采用 2.5V 作为 ARM 内核电源,使用 3.3V 作为 I/O 口电压,故 ARM

10、 核心控制模块电源需要另外单独设计,其电源电路如图 3-2所示。由系统总电源电路提供的 +9V 稳压电源作为输入,7 分别经 AS1117-5.0、 AS1117-3.3、 AS1117-2.5 稳压后,输出 5.0V、 3.3V 和 2.5V恒定电源,为 RAM 内核和 I/O 口提供了相应的稳定直流电源 。其中的 IN4004是为了防止电源输入反接烧坏集成稳压块而设计的。 3.2.2 温度采集电路设计 温度采集模块电路采用 AT89S52 单片机作为模块的协控制器。对于温度传感器的选用 DS18B20,因为 DS18B20 是 Dallas 公司最新单总线数字温度传感器,该传感器集温度变换

11、、 A/D 转换于同一芯片,输出直接为数字信号,大大提高了电路的效率。由于现场温度直接以 “ 一线总线 ” 的数字方式传输,大大提高了系统的抗干扰性,且提高了 CPU 的效率。 AT89S52 单片机的 P0 口与 8 路温度传感器相连,用于采集温度数据;另外,模块提供 RS-232 串行口与 RAM 核心控制模块通信,达到数据传输的目的。温度采集模块电路 原理图 如图 3-3。 图 3-3 温度采集 电路 原理图 8 四、 软件设计 4.1 设计思路 本系统软件设计是在 CodeWarrior for ADS 开发环境下完成的。本温度数据采集与显示装置的主体由 S3C44B0x 核心控制模块

12、和温度数据采集模块构成,所以系统软件也是围绕这两个模块来编写的。而又由于系统采用了 S3C44Box 和 AT89S52 两个 CPU 协同工作,所以软件的编写需要对这两个 CPU 分别编写,以实现所要求的功能 。程序流程图如图 4-1。 图 4-1 程序流程图 由该流程图可看出,刚上电时 , S3C44B0x 要先进行 ARM 内部的初始化,以开始 ARM初始化 硬件装置初始化 通信初始化 LED 显示初始化 键盘初始化 扫描键盘 有键按下 处理数值 相应显示 数据获取 数据处理 数据显示 Y N 9 使 ARM 进入相应的状态和模式;然后初始化硬件装置,以使硬件系统可以正常支持温度数据采集

13、;接着通信初始化,以确定温度采集模块与 ARM 核心控制模块连接正常,并通过 UART 复位温度数据采集模块,确保其进入正常温度数据采集状态;然后初始化 LCD 显示和键盘,在 LCD 上显示相应的菜单列表,供用户通过键盘选择操作;至此,系统初始化完成,并进入正常主程序循环状态。 在正常主程序循环状态中,首先扫描键盘,以快速的响应用户的按键操作;若没有键值按下,则 ARM 立即进行数据的采集、 处理与显示,以实现实时数据采集与显示等功能。 其主程序包括温度采集程序、 ARM 获取温度子程序、温度处理和转换子程序。当 ARM 处理器接收到正确的温度数据后,立即进行相应的温度数据处理与转换,变成可

14、被 LCD 直接显示的正确温度值。 4.2 程序清单 温度处理与转换子程序如下: /存放读取到的当前温度值,未转换 Static U16 a-temp-now8=8*0 /存放经精度计算后的实际温度值,高 8位整数部分,低 8 位小数部分 static U16 b-temp-now8=8*0; /存放 8路转换后温度值 ,分别为百位 ,十位 ,个位 ,小数位 static U8 temp-convent-all32=32*0; /- /温度处理与转换子程序 /- void temp-change(void) U8 negtive=0x00; /存放数的符号,若为正 =0;若为负, =0xff

15、U8 j=0; U8 *pt=temp-convent-all; U16 *p1=a-temp-now; U16 *p3=b-temp-now; U16 temp=0; for(j=0;j8;j+) negative =0x00; temp=*p1; 10 /若温度为负值,进行相应处理 if(tempbreak; case 0x3f: /精度为 10 位 ,则清除最低 2位无效位 temp=tempbreak; case 0x5f: /精度为 11 位 ,则清除最低 1位无效位 temp=tempbreak; case 0x7f: /精度为 12 位 break; /换算成实际温度 ,并扩大 10 倍 ,去掉小数部分 temp=(U16)(float)(temp)*0.625); /折算放入 b-temp-now 数组中 /高 8 位放整数部分,低 8位放小数部分,最高位放符号位 if(negtive= 0xff) /若为负值 *p3=(temp/10)8)|(temp%10)|0x8000;

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

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。