盐城工学院嵌入式系统课程设计报告

上传人:微*** 文档编号:103387803 上传时间:2022-06-08 格式:DOCX 页数:30 大小:436.04KB
返回 下载 相关 举报
盐城工学院嵌入式系统课程设计报告_第1页
第1页 / 共30页
盐城工学院嵌入式系统课程设计报告_第2页
第2页 / 共30页
盐城工学院嵌入式系统课程设计报告_第3页
第3页 / 共30页
点击查看更多>>
资源描述
逾城工建院课程设计说明书基于ARM的GPRS1块的设计专业学生班级学号 指导教师 完成日期2021年月日目录摘要 11 绪论 21.1 嵌入式系统21.1.1 嵌入式系统概述21.1.2 嵌入式处理器21.2 ARM处理器21.3 GPRS无线通讯31.3.1 GPRSS义 31.3.2 GPRS勺技术特点32 系统选型及设计32.1 硬件选型 32.2 模块总体框图 43 系统硬件设计43.1 ARM 硬件构造及电路概述43.1.1 SANSUNG S3c2410既述 43.1.2 ST241瞰件资源分配53.1.3 ST241您口 资源 83.1.4 ST2410的串 口通讯 93.2 M22通讯电路板的设计133.2.1 BENQ 电源局部设计143.2.2 BENQ M22 与 SIM 卡的接口 143.2.3 BENQ M22 在语音通讯设计方面的问题153.2.4 BENQ M22 通讯板的串口 164 系统软件设计174.1 引导加载程序的设计174.1.1 BOOTLOADER 的根本概念174.1.2 ST2410 的 BOOTLOADER 功能说明 204.2 串口通讯程序的设计214.3 BENQ M22 模块部的软件特性 215 模块软件运行流程图 216 模块设计总结23基于ARM与嵌入式Linux的GPRS模块摘要随着科技的高速开展, 嵌入式系统已经进入32 位时代。 在当前数字信息技术和网络技术的高速开展的后 PC 时代,嵌入式系统已经广泛地应用于各类产业。 随着国外嵌入式产品地进一步开发和推广, 嵌入式技术和人类生活的联系越发严密。本文介绍了在 SAMSUNG ARM9 和嵌入式 Linux 平台上的,基于 BenQM22 模块的 GPRS 无线通讯模块的软硬件设计。主要容包括: M22 通讯电路板的 PCB 设计; ARM9 中 Bootloader 编程与 FLASH 烧写; M22 和ARM9 的外围与部硬件电路的设计;串口通讯的编程; AT 指令的收发等等。该系统能够实现语音通讯、短信效劳、来电查询、来电显示等功能关键词:嵌入式; ARM ; Linux ; GPRS1 绪论1.1 嵌入式系统1.1.1 嵌入式系统概述嵌入式系统Embedded System ,是一种嵌入机械或电气系统部、具有专一功能和实时计算性能的计算机系统。嵌入式系统常被用于高效控制许多常见设备, 被嵌入的系统通常是包含数字硬件和机械部件的完整设备, 例如汽车的防锁死刹车系统。 相反, 通用计算机如个人电脑那么设计灵活, 可以智能处理各式各样的运算情况,以满足广阔终端用户不同的需要。现代嵌入式系统通常是基于微控制器如含集成存和 / 或外设接口的中央处理单元 的, 但在较复杂的系统中普通微处理器 使用外部存储芯片和外设接口电路也很常见。通用型处理器、专门进展某类计算的处理器、为手持应用订制设计的处理器等, 都可能应用到嵌入式系统。 常见的专用处理器有数字信号处理器。1.1.2 嵌入式处理器嵌入式处理器是嵌入式系统的核心,是控制、辅助系统运行的硬件单元。可以分为:嵌入式微处理器、嵌入式微控制器、嵌入式DSP处理器等。嵌入式处理器是嵌入式系统的核心,是控制、辅助系统运行的硬件单元。围极其广阔,从最初的4位处理器,目前仍在大规模应用的8位单片机,到最新的受到广泛青睐的32位,64 位嵌入式CPU。1.2 ARM 处理器ARM 处 理 器 是 一 种 32 位 嵌 入 式 RISC 处 理 器 。 ARMAdvancedRISCMachineS),既可以认为是一个公司的名字,也可以认为是对微处理器的通称,还可以认为是一种技术的名字。 ARM 处理器是一个32位元精简指令集(RISC处理器架构,其广泛地使用在许多嵌入式系统设计。Thumb指令集为ARM指令集的功能子集,但与等价的 ARM代码相比较,可节省30%40%以上 的存储空间,同时具备32位代码的所有优点。大量使用存放器,数据处理指令 只对存放器进展操作,只有加载/存储指令可以访问存储器,以提高指令的执行 效率。1.3 GPRS无线通讯1.3.1 GPR旋义通用分组无线效劳英语: General Packet Radio Service缩写:GPRS是 GSM移动用户可以使用的一种移动数据业务/技术。它经常被描述成“ 2.5G, 意指这项技术介于第二代2G与第三代3G移动通讯技术之间。它是利用 GSM网络中未使用的TDMA信道,提供中速的数据传输效劳。起初有人想通过 扩展GPRS来覆盖其他标准,只是这些网络都正在转而使用 GSM标准,这样GSM 就成了 GPRS唯一能够使用的网络。GPRS在Release 9之后被集成进GSM标准, 起先它是由ETSI标准化,但是现在已经移交 3GPP负责。1.3.2 GPRS勺技术特点数据实现分组发送和接收,按流量计费;56115Kbps的传输速度.GPRS的应用,迟些还会配合 Bluetooth低牙技术)的开展。到时,数码相机 加了 bluetooth,就可以马上通过手机,把像片传送到遥远的地方,也不过一刻钟 的时间。相对于GSM的9.6kbps的访问速度而言,GPRS拥有171.2kbps的访问速度; 在连接建立时间方面,GSM需要10-30秒,而GPRS只需要极短的时间就可以访 问到相关请求;而对于费用而言,GSM是按连接时间计费的,而 GPRS只需要 按数据流量计费;GPRS对于网络资源的利用率而相对远远高于 GSM。2系统选型及设计2.1 硬件选型由于ARM系列处理器中 ARM9对于Linux操作系统的支持性明显强于ARM7。因此,本模块采用的核心微处理器是属于 ARM9系列微处理器的 SAMSUNG S3C2410出于本钱和功能的考虑,本模块中选用的GPRS/GSM选用的BenQ的M22无线模块。主要仪器设备如下: SAMSUNG ST2410 ARM9 开发板SHARP TFT_LCD液晶屏 BenQ M22 GPRS 模块SIM卡GSM 900/1800 MHz吸盘天线BenQ M22电路板2.2 模块总体框图3系统硬件设计3.1 ARM硬件构造及电路概述3.1.1 SANSUNG S3c2410既述S3c2410A采用了 ARM920T核,0.18um工艺的CMOS标准宏单元和存 储单元。它的低功耗、精简和出色的全静态设计特别适用于对本钱和功耗敏感的 应用。同样它还采用了一种叫做 Advanced Microcontroller Bus Architecture(AMBA) 新型总线构造。S3C2410的显著特性是它的 CPU核心,是一个由 Advanced RISC Machines(ARM)设计 的 16/32 位 ARM920T RISC 处理器。ARM920T 核由 ARM9TDMI、存储管理单元MMU和高速缓存三局部组成。其中, MMU可 以管理虚拟存。ARM920T实现了 MMU , AMBA BUS和Harvard高速缓冲体系 构造。这一构造具有独立的 16KB指令Cache和16KB数据Cache,每个都是 由8字长的行构成。ARM920T有两个部协处理器:CP14和CP1S CP14用于 调试控制,CP15用于存储系统控制以及测试控制。S3c2410的部构造图如图 3.1所示ARro 1,2;7血UWDwie*JA PSDVMMCBcGPIOTrfnarBgFE工二二ZDrrES - tl-uo丁._ tr Ites宰JTlFLSU牛/渊_(3 Ttijf图3.9 M22电路板电源局部电路原理图3.2.2 BenQ M22 与 SIM 卡的接口由于BenQ M22必须通过中国电信的 GSM/GPRS网络才能够工作,所以必须要用到SIM卡。安装时只要以右上角的缺口为准即可。ONDSIM CLK1SIM_CTi 3IMO SIMVCC ownU13I GNDSIM CDSIM CLK SW IOsimZrst sm_tccSIM VCCGNDGND Q4|0?/INLVCL:SIM VCC .VR51Mi:直SIM IO 的VRSMOf.zlSIM CLKI SIM CLK - iP2R 22R图3.10 SIM卡接口电路原理图3.2.3 BenQ M22在语音通讯设计方面的问题在语音通讯方面,M22提供了两个语音通道:一个我们叫做差分通道,也 就是说无论是MICPHONE信号的输入,还是SPEAKER信号的输出都是采用差 分的形式。也就是我们平时所说的“双端输入双端输出。在管脚的定义上 MICIP, MICIN就分别是 MICPHONE的正输入端和负输入端。EARP, EARN 就分别是SPEAKER的正输出端和负输出端。另一路语音通道是单端方式。具 体管脚定义为 AUXI和AUXOP。其中AUXI为MICPHONE的正输入端, MICPHONE的负输入端应该对地。AUXOP为SPERKER的正输出端,SPERKER的另一端应该对地。当然从外部线路的转换来说在这一路语音通道 的使用中,MICPHONE也可以接成差分的形式,但是需要一个转换电路。 SPERKER也可以接成差分输入的形式,也需要一个差分转单端的线路。以上说了关于单端语音通道的一些问题。下面我们表达一下差分语音通 道的一些问题。图3.11差分方式的 MICPHONE 电路原理图图3.12是SPEAKER的线路图图3.12差分方式的 SPEAKER电路原理图需要说明的是,由于单端输入单端输出的语音通道特别容易受到辐射干扰, 从而对语音的质量产生了很大的影响,所以在本系统中只采用了差分语音通道。3.2.4 BenQ M22通讯板的串口前面已经提到了由于RS-232电平的问题,M22不能直接和 PC机通讯,但是可以直接和 ARM或单片机通讯,不需要任何电平转换芯片。那为什么这里却又需要一个电平转换芯片SP3238呢?主要是由于 ST2410上的串口已经通过了 MAX232,转换成了 RS-232-C电 平。为了能够与其通讯,必须也要将由M22出来的串口信号转换成 RS-232-C电平。在此,我们采用的是另一种电平转换芯片SP3238因为此芯片可以一次转换9个信号线,与MAX232相比更方便。图3.20 M22与ARM进展串口通讯原理图O1 235OCl*V/2S匚 I-。527X-*wcXDCWV4KJ DM925Cl-TLCurhinTxxirt?inT30CTT3INRJINR10CTR2INR20UTTKXJTHINRJINRKICrTXXJT1派磔EJXER10CTq* -rrnnKctatt24KI网一网 Gg DIR :即 四*肝DnURTS1DM却CISrxo *1019TKDTxD-becitISRXDDCTTDECM)12FDCDY16CSV1415TXELDB9(飞3助五第)一D的图3.21 SP323* M22接口的电路原理图4 系统软件设计该 GPRS通讯程序是在 ARM ADS 1.2ARM Developer Suite 是 ARM 公司推出的新一代ARM 集成开发工具。 集成开发环境中编译通过后, 然后产生可以直接烧写在FLASH 中的 .bin 格式的二进制可执行文件,最后进展下载运行的。4.1 引导加载程序的设计引导加载程序Bootloader是嵌入式系统的重要组成局部。4.1.1 Bootloader的根本概念一个嵌入式 Linux 系统从软件的角度看,通常可以分为四个层次:1引导加载程序:包括固化在固件firmware)中白b boot代码(可选),和Boot Loader 两大局部。 2 Linux 核:特定于嵌入式板子的定制核以及核的启动参数。 3文件系统: 包括根文件系统和建立于Flash 存设备之上文件系统。 4用户应用程序。特定于用户的应用程序,有时在用户应用程序和核层之间可能还会包括一个嵌入式图形用户界面。常用的嵌入式GUI 有:MicroWindows 和 MiniGUI 等。引导加载程序是系统加电后运行的第一段代码。我们熟悉的 PC 中的引导程序一般由 BIOS和位于 MBR的 OS bootloader例如 LILO 或者 GRUB 一起组成。 然而在嵌入式系统常没有像BIOS 那样的固件程序 有的嵌入式 CPU 有 ,因此整个系统的加载启动任务就完全由 bootloader 来完 成。在嵌入式Linux 中,引导加载程序即等效为bootloader。简单地说, bootloader 就是在操作系统核运行前运行地一段小程序。通过这段小程序,我们可以初始化必要的硬件设备,创立核需要的一些信息并将这些信息通过相关机制传递给核,从而将系统的软硬件环境带到一个适宜的状态,最终调用操作系统核,真正起到引导和加载核的作用。bootloader 是依赖于硬件而实现的,特别是在嵌入式系统中。每种不同的 CPU 体系构造都有不同的 Boot Loader。 有些 Boot Loader 也支持多种体系构造的CPU,比方U-Boot就同时支持 ARM体系构造和 MIPS体系构造。 除了依赖于 CPU 的体系构造外, Boot Loader 实际上也依赖于具体的嵌入式板级设备的配置。也就是说,对于两块不同的嵌入式板而言,即使它们基于一样的CPU构建,运行在其中一块电路板上的bootloader,未必能够运行在另一块电路开发板上。 尽管如此, 我们仍然可以对Bootloader 归纳出一些通用的概念来,以指导用户特定的 Bootloader 设计与实现: 1 Boot Loader 的安装媒介系统加电或复位后,所有的 CPU 通常都从某个由 CPU 制造商预先安排的地址上取指令。比方,基于 ARM7TDMI core 的 CPU 在复位时通常都从地址0x00000000取它的第一条指令。而基于CPU构建的嵌入式系统通常都有某种类型的固态存储设备(比方:ROM 、 EEPROM 或 FLASH 等)被映射到这个预先安排的地址上。 因此在系统加电后, CPU 将首先执行Boot Loader程序。2用来控制Boot Loader 的设备或机制主机和目标机之间一般通过串口建立连接, Boot Loader 软件在执行时通常会通过串口来进展I/O ,比方:输出打印信息到串口,从串口读取用户控制字符等。 3 Bootloader 的启动方式Bootloader 的启动过程可以是单阶段的,也可以是多阶段的。通常多阶段的 bootloader 能提供更为复杂的功能,以及更好的可移植性。从固态存储设备上启动的 bootloader 大多数是二阶段的启动过程,也即启动过程可以分为stagel和stage2两局部。Boot Loader 的 stage1 通常包括以下步骤 :1硬件设备初始化。2为加载Boot Loader 的 stage2 准备 RAM 空间。3拷贝Boot Loader 的 stage2 到 RAM 空间中。4设置好堆栈。5跳转到stage2 的 C 入口点。Boot Loader的stage2通常包括以下步骤1初始化本阶段要使用到的硬件设备。2检测系统存映射(memory map。)3将kernel 映像和根文件系统映像从flash 上读到 RAM 空间中。4为核设置启动参数。5调用核。 4 Bootloader 的操作模式大多数 bootloader 都包含两种不同的操作模式: “启动加载模式和“下载模式,这种区别对于开发人员才有意义。但从最终用户的角度看,bootloader 的作用永远就是用来加载操作系统,而并不存在所谓的启动加载模式与下载工作模式的区别。启动加载模式:这种模式也称为“自主模式,即 bootloader 从目标机上的某个固体存储设备上将操作系统加载到 RAM 中运行,整个过程没有用户的介入。这种模式是bootloader 的正常工作模式,因此当以嵌入式产品发布的时候, bootloader 必须工作在这种模式下。下载模式:在这种模式下,目标机上的 bootloader 将通过串口或者网络连接或者其它通信手段从主机下载文件,比方:下载核镜像和根文件系统镜像等。从主机下载的文件通常首先被bootloader 保存到目标机的 RAM 中,然后被 bootloader 写到目标机上的 FLASH 类固态存储设备中。 Bootloader 的这种模式通常在第一次安装核与根文件系统时使用;此外,以后的系统更新也会使用 bootloader 的这种工作模式。 工作于这种模式下的 bootloader 通 常都会向它的中断用户提供一个简单的命令行接口。 5 Bootloader 的功能扩展Bootloader 最主要的功能是引导加载核镜像。但是随着嵌入式系统的开展, bootloader 已经逐渐在根本功能的根底上,进展了扩展, bootloader 可以更多地增加对具体系统的板级支持,即增加一些硬件模块功能上的使用支持, 以方便开发人员进展开发和调试。从这个层面上看,功能扩展后的bootloader 可以虚拟地看成是一个微小的系统级的代码包。4.1.2 ST2410的 Bootloader 功能说明以上介绍了一般嵌入式系统中的Bootloader的特点。如前所述,对于不同的目标板和外围硬件电路,Bootloader的设计是不一样的。本系统的Bootloader除了具有一般的功能外,还具有以下扩展功能:1USB 口文件下载2用口文件下载3 NOR 和 NAND FLASH 的烧写4运行存储在FLASH中的程序5针对Linux设置启动参数6设置 Wince或Linux的自启动7运行BenQ M22 GPRS通讯系统ST2410 的图4.1 Bootloader流程图构如前所述,此核心板一共由三大存储设备 Nor Flash(2M) Nand Flash(64M) SDRAM(64M)。前两个Flash设备就犹如PC机的两块硬盘,(由于Nand Flash无论在价格 与性能上都优于 Nor Flash,因此现在一般都采用 Nand Flash )而SDRAM就犹 如PC机的存设备。4.2 串口通讯程序的设计如前所述,本系统有三大模块:PC机:主要负责人机交互。在 PC机上运行 DNW一种用口调试软 件,从而可以显示和承受来自 ARM的数据。ARM微处理器:核心处理器。将已经编写成功的GPRS通讯程序烧写至U其 Nand Flash 中。M22通讯模块:GPRS通讯的具体实现。承受来自 ARM的AT指令, 从而进展GPRS通讯,并将有用的信息反响给 ARM。4.3 BenQ M22模块部的软件特性下面我们来描述一下BenQ M22模块部集成的软件系统。对于无线PSTN的用户,BenQ提供AT指令的支持。BenQ M22的部集成的软件包括以下 3个局部:Layer 1驱动协议栈/AT命令根本接口由于在无线PSTN和BenQ M22模块中都有微处理器,在这两者之间 的接口通常是 AT指令。当然由于协议栈TCP/IP的存在,我们也可以通 过发送AT指令到达联通 GSM/GPRS网的目的。5模块软件运行流程图图5.1软件主菜单流程图号*5.xp吧图5.5主动呼叫流程图6模块设计总结计算机开展的目标是专用电脑,实现“普遍化计算,因此可以称嵌 入式系统是构成未来世界的“数字基因。嵌入式系统与无线通讯网络的 有机结合,构成了最具吸引力的嵌入式通讯设备:设计应用到车载GPS系统,手持PDA,智能手机等各方面。本文针对 BenQ M22无线模块在 无线通讯方面的应用,对基于 ARM9与嵌入式Linux的GPRS无线通讯系统的软件和硬件方面的设计进展了研究,并对可以实现的语音通讯、短信控制、本记录、来电查询、来电显示等功能进展了验证。 1 硬件设备和开发平台的选择是嵌入式开发中的关键环节。 硬件发面,本文对三星公司的各种ARM 系列进展了分析分析比较,选取了性价比更高,应用更广泛,对Linux 操作系统支持性更好的ARM 构架的为处理系列的芯片S3C2410X。 同样, 在 GSM/GPRS 通讯模块的选择上,选取的是明基公司的 M22 无线通讯模块。 开发平台方面, Linux 的可靠 性、开源性、低本钱以及丰富的开发工具和开发资源,使得选择嵌入式 Linux 系统成为必然。2引导装载程序Bootloader的开发是嵌入式开发中非常重要的环节。本文充分利用嵌入式Linux 系统的开源特性,先对业界标准的引导装载程序 vivi 进展了分析, 然后再针对ST2410 开发板的外围电路设计了相应的Bootloader,并在此根底上增加了M22无线通讯功能。在通过 ADS1.2 调试通过后,便直接下载到 ARM 中运行。因此,简化了开发流程, 缩短了开发周期。 3 M22 模块通讯电路板的设计是本系统的关键局部。本文首先就M22 外围电路中的几个具体问题做了详细的说明与解释:如电源局部的设计、差分语音通讯的电路、 M22 与 SIM 卡的接口设计、天线的选择等等。又因为此PCB 是高频电路板,与其他的 PCB 设计有很多的不同之处。本文也同时详细的讨论了高频PCB 设计的方法与本卷须知,从而为后续工作搭建了一个很好的平台。 4本系统3 个模块之间都是采用串口进展通讯的。本文先分别对PC 机、 ARM 、 M22 模块的串口接口电路进展了深入比较与研究,然后针对 AT 指令, 对具体的串口通讯的接口编程的步骤和方法进展了详细的讨论。ARM 与嵌入式 Linux 搭配的开发是目前嵌入式开发领域最热门的话题,也是嵌入式开发未来的重要方向。在对基于 ARM 微处理器和嵌入式Linux 的 GPRS 通讯系统进展研究之后, 本文认为该系统能够很好的满足嵌入式设备在无线通讯和远程控制领域的要求。 由于 Linux 系统中软件驱 动局部的可扩展性,我们可以想象该系统还有很大改进与上升空间。如为了满足可视化的需要或加强人机交互,可以将Linux 系统中的 GUI 移植到本系统中。由此可见,这是一个值得深入研究的课题。参考文献:1俞昌忠.基于嵌入式Web效劳器的GPRS无线数据传输系统的设计D.工 程大学 ,2021.2钦伟 . 基于嵌入式 Linux 及 GPRS 的无线销售系统设计与实现D. 中南大学,2021.3王栋.基于GPRS的嵌入式系统无线通信技术的研究D.理工大学,2021.4朝.基于嵌入式及GPRS技术的无线监测终端研究D.西北工业大学,2007.
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 商业管理 > 营销创新


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!