嵌入式毕业论文.docx

上传人:b****7 文档编号:9099473 上传时间:2023-02-03 格式:DOCX 页数:23 大小:587.49KB
下载 相关 举报
嵌入式毕业论文.docx_第1页
第1页 / 共23页
嵌入式毕业论文.docx_第2页
第2页 / 共23页
嵌入式毕业论文.docx_第3页
第3页 / 共23页
嵌入式毕业论文.docx_第4页
第4页 / 共23页
嵌入式毕业论文.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

嵌入式毕业论文.docx

《嵌入式毕业论文.docx》由会员分享,可在线阅读,更多相关《嵌入式毕业论文.docx(23页珍藏版)》请在冰豆网上搜索。

嵌入式毕业论文.docx

嵌入式毕业论文

嵌入式毕业论文

 

第一章绪论

1.1嵌入式系统

1、什么是嵌入式系统

嵌入式系统一般指非PC系统,有计算机功能但又不能称之为计算机的设备或器材。

它是以应用为中心,软硬件可裁减的,适应应用系统对功能、可靠性、成本、体积、功耗等综合性严格要求的专用计算机系统。

简单地说,嵌入式系统集系统的应用软件与硬件于一体,类似于PC中BIOS的工作方式,具有软件代码小、高度自动化、响应速度快等特点,特别适合于要求实时和多任务的体系。

嵌入式系统主要由嵌入式处理器、相关支撑硬件、嵌入式操作系统及应用软件系统等组成,

嵌入式系统几乎包括了生活中的所有电器设备,如掌上PDA、移动计算设备、电视机顶盒、手机上网、数字电视、多媒体、汽车、微波炉、数字相机、家庭自动化系统、电梯、空调、安全系统、自动售货机、蜂窝式电话、消费电子设备、工业自动化仪表与医疗仪器等。

嵌入式系统的硬件部分,包括处理器/微处理器、存储器及外设器件和I/O端口、图形控制器等。

嵌入式系统有别于一般的计算机处理系统,它不具备像硬盘那样大容量的存储介质,而大多使用EPROM、EEPROM或闪存(FlashMemory)作为存储介质。

软件部分包括操作系统软件(要求实时和多任务操作)和应用程序编程。

应用程序控制着系统的运作和行为;而操作系统控制着应用程序编程与硬件的交互作用。

2、什么是嵌入式处理器

嵌入式系统的核心是嵌入式微处理器。

嵌入式处理器一般就具备以下4个特点:

(1)对实时多任务有很强的支持能力,能完成多任务并且有较短的中断响应时间,从而使内部的代码和实时操作系统的执行时间减少到最低限度。

(2)具有功能很强的存储区保护功能。

这是由于嵌入式系统的软件结构已模块化,而为了避免在软件模块之间出现错误的交叉作用,需要设计强大的存储区保护功能,同时也有利于软件诊断。

(3)可扩展的处理器结构,以能最迅速地开展出满足应用的最高性能的嵌入式微处理器。

1.2ARM微处理器简介

ARM(AdvancedRISCMachines),既可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字。

1991年ARM公司成立于英国剑桥,主要出售芯片设计技术的授权。

目前,采用ARM技术知识产权(IP)核的微处理器,即我们通常所说的ARM微处理器,已遍及工业控制、消费类电子产品、通信系统、网络系统、无线系统等各类产品市

场,基于ARM技术的微处理器应用约占据了32位RISC微处理器75%以上的市场份额,

ARM公司是专门从事基于RISC技术芯片设计开发的公司,作为知识产权供应商,本身不直接从事芯片生产,靠转让设计许可由合作公司生产各具特色的芯片,世界各大半导体生产商从ARM公司购买其设计的ARM微处理器核,根据各自不同的应用领域,加入适当的外围电路,从而形成自己的ARM微处理器芯片进入市场。

全世界有几十家大的半导体公司都使用ARM公司的授权,因此既使得ARM技术获得更多的第三方工具、制造、软件的支持,又使整个系统成本降低,使产品更容易进入市场被消费者所接受,更具有竞争力。

1.3电子黑板的概念及功能

概念:

电子黑板是教师进行课堂辅助教学的场所,是对传统黑板的一个延伸和补充。

传统的黑板是以黑板为场所,通过使用板书、挂图、标记等教学元素引导学生的学习。

电子黑板提可以对标准的针对课程而设计的教学素材进行快速地组织,摆放到电子黑板上,达到课件知识的呈现,并可以对这些素材根据教学的需要进行进一步的调整、标记等,增强与学生交互学习的效果,借助背景、音乐、时钟营造良好的教学场景和氛围。

功能:

1、电子笔代替普通笔,直接在电子黑板上进行电子板书;

2、不需要粉笔,直接在屏幕上写字、涂抹,

3、文件所占空间很小,便于下载、保存、使用、交流;

4、使用简单、反应快速、维护方便,性能可靠;

5、针对教师的课堂教学提供电子黑板功能,展示教学内容;

6、教师可以利用软件所提供的丰富素材,制作个人的电子讲义,并可保存、交流课件。

第二章系统开发环境

2.1ADS1.2软件

ARMADS全称为ARMDeveloperSuite,是ARM公司推出的新一代ARM集成开发工具。

现在ADS的最新版本是1.2,它取代了早期的ADS1.1和ADS1.0。

它除了可以安装在WindowsNT4,Windows98和Windows95操作系统下,还支持WindowsXP和WindowsMe操作系统。

ADS由命令行开发工具,ARM时实库,GUI开发环境(CodeWarrior和AXD),实用程序和支持软件组成。

现在重点介绍GUI开发环境(CodeWarrior和AXD)。

CodeWarriorforARM是一套完整的集成开发工具,充分发挥了ARMRISC的优势,使产品开发人员能够很好的应用尖端的片上系统技术。

该工具是专为基于ARMRISC的处理器而设计的,这可加速并简化嵌入式开发过程中的每一个环节,便得开发人员只需要通过一个集成软件开发环境就能研制出ARM产品,在整个开发周期中,开发人员无霜离开CodeWarrior开发环境,因此节省了在操做工具上花的时间,使得开发人员有更多的精力投入到代码编写上来。

1、CodeWarrior集成开发环境

CodeWarrior集成开发环境(IDE)为管理和开发项目提供了简单多样化的图形用户界面。

用户可以使用ADS的CodeWarriorIDE为ARM和Thumb处理器开发用C,C++,或ARM汇编语言的程序代码。

通过提供下面的功能

CodeWarriorIDE缩短了用户开发项目代码的周期。

CodeWarrior主要负责程序的编写和编译。

软件的主界面如图2-1所示,

图2-1CodeWarrior主界面

在CodeWarrior中,程序是通过工程管理的,每一个单独的工程中可以包含若干个程序文件首先得建一个工程文件,用来管理我们所要编写的程序文件,在主界面中,点击File->Open,弹出如图2-2所示界面。

图2-2新建工程界面

有时根据需要,我们还要对工程进行一定的设置,这时就需要点Edit->DebugSettings,将会弹出如图2-3的界面,我们通过此进行必要的设置。

图2-3Debug设置界面

2、AXDDebugger

AXD(ARMeXtendedDebugger)是ADS软件中独立于CodeWarrior的IDE的图形软件,用来仿真调试ARM组件,即作为一种常用的调试工具。

可以直接点击AXDDebugger图标,打开AXD软件,默认是打开的目标是ARMulatoar;也可以选择CodeWarrior中的Project->Debug,并可以直接调用AXDDebugger并将当前编译的镜像文件加载到AXDDebugger中。

通常先要对AXD进行一定的设置,Options-〉ConfigureInterface,会弹出图2-4所示的对话框。

然后选择SessionFile选项,进行ARM2410文件配置,如图2-4所示,

图2-4ConfigureInterface界面

然后再对目标调试器进行配置,即点击Options-〉ConfigureTarget,会弹出如图2-6所示的对话框,选择H-JTAG,点击OK即可。

图2-5ConfigureTarget配置界面

3、JIAG仿真调试器

JTAG,英文名为JointTestActionGroup,即为联合测试行动组,它是一种边界扫描标准,由于集成电路的集成度不断提高,芯片的引脚不断增加,常规的在线仿真方式已经不能满足需要,而JTAG只需要5根引脚就可以实现在线仿真的功能,该标准被批准为IEEE-1149.1标准,它不但能测试各种集成电路芯片,也能测试芯片内各类宏单元,还能测试相应的印刷电路板。

而且JTAG仿真器比较便宜,连接比较方便,通过现有的JTAG边界扫描口与ARMCPU核通信,属于完全非插入式(即不使用片上资源)调试,它无需目标存储器,不占用目标系统的任何端口,而这些是驻留监控软件所必需的。

我们采用的JTAG电路如图2-7所示。

在图中,JTAG接口U8上的信号nTRST连接到S3C2410A芯片的TRST引脚,达到控制S3C2410A内部JTAG接口电路复位的目的。

根据S3C2410A数据手册中说明,Ntrst、TDI、TMS和TCK引脚上需要连接一个10K

的上拉电阻如图2-6所示。

图2-7JTAG电路图

第三章系统设计选型

3.1ARM处理器选型

1、处理器的分类

如前文所述ARM微处理器目前包括下面ARM7,ARM9,ARM9E,ARM10E,SecurCore,Xscale,StrongARM等几个系列.鉴于当前电子市场上的情况,在此我主要讨论一下ARM7与ARM9这两种主流处理器的特点及应用领域。

ARM7系列微处理器为低功耗的32位RISC处理器,最适合用于对价位和功耗要求较高的消费类应用。

ARM7微处理器系列具有如下特点:

(1)具有嵌入式ICE-RT逻辑,调试开发方便。

(2)极低的功耗,适合对功耗要求较高的应用,如便携式产品。

(3)能够提供0.9MIPS/MHz的三级流水线结构。

(4)代码密度高并兼容16位的Thumb指令集。

对操作系统的支持广泛,包括WindowsCE、Linux、PalmOS等。

(5)指令系统与ARM9系列、ARM9E系列和ARM10E系列兼容,便于用户的产品升级换代。

(6)主频最高可达130MIPS,高速的运算处理能力能胜任绝大多数的复杂应用。

2、ARM9微处理器系列

ARM9系列微处理器在高性能和低功耗特性方面提供最佳的性能。

具有以下特点:

(1)级整数流水线,指令执行效率更高。

(2)提供1.1MIPS/MHz的哈佛结构。

(3)支持32位ARM指令集和16位Thumb指令集。

(4)支持32位的高速AMBA总线接口。

(5)全性能的MMU,支持WindowsCE、Linux、PalmOS等多种主流嵌入式操作系统。

(6)MPU支持实时操作系统。

支持数据Cache和指令Cache,具有更高的指令和数据处理能力。

3、S3C2410的概述

S3C2410是SAMSUNG公司推出的16/32位RISC处理器(ARM920内核),适用于手持设备、POS机、数字多媒体播放设备等等,具有低价格、低功耗、高性能小等特点。

为了降低整个系统的成本,S3C2410提供了一下丰富的内部设备:

分开的16KB的指令Cache和16KB数据Cache,MMU虚拟存储器管理,LCD控制器,支持NANDFlash系统引导,系统管理(片选逻辑和SDRAM控制器),3通道UART,4通道DMA,4通道PWM定时器,I/O端口,RTC,8通道10位ADC和触摸屏接口,IIC-BUS接口,USB主机,USB设备,SD主卡和MMC卡接口,

S3C2410采用了ARM920T内核,0.18um工艺的CMOS标准宏单元和存储单元。

它的低功耗、精简和出色的全静态设计特别适用于对成本和功耗敏感的应用。

同样它还采用了一种叫做AdvancedMicrocontrollerBusArchitecture(AMBA)新型总线结构。

S3C2410的显著特性是它的CPU核心,是一个由AdvancedRISCMachines(ARM)有限公司设计的16/32位ARM920TRISC处理器。

ARM920T核由ARM9TDMI、存储管理单元(MMU)和高速缓存三部分组成。

其中,MMU可以管理虚拟内存。

ARM920T实现了MMU,AMBABUS和Harvard高速缓冲体系结构。

这一结构具有独立的16KB指令Cache和16KB数据Cache,每个都是由8字长的行构成。

ARM920T有两个内部协处理器:

CP14和CP15。

CP14用于调试控制,CP15用于存储系统控制以及测试控制。

在时钟方面S3C2410也有突出的特点,该芯片集成了一个具有日历功能的RTC和具有PLL(MPLL和UPLL)的芯片时钟发生器。

MPLL产生主时钟,能够使处理器工作频率高达203MHz。

这个频率能够使处理器轻松运行WindowsCE、Linux等操作系统以及进行较为复杂的处理信息。

UPLL产生实现主从USB功能时钟。

S3C2410的内部结构图如图3-1所示,

图3-1S3C2410内部结构图

第四章系统硬件电路设计

S3C2410最小系统电路设计S3C2410最小系统是主要由电源电路、复位电路、系统时钟电路组成。

由于ARM芯片的高速、低功耗、低工作电压导致其噪声容限低,对电源的纹波、瞬态响应性能、时钟源是稳定性、电源监控可靠性等诸多方面也提出了更高要求,DeviceARM2410核心板有复位电路使用了

存储器的电源监控复位芯片CAT1025H-30,提高了系统的可靠性,具体电路原理图如图4-1所示:

图4-1复位电路图

在图中,S2为复位按键,用于手动复位,但需要在

上接一电阻,使其为高电平,nRESET信号为CAT1025JI-30输出的复位信号,此信号连接到S3C2410芯片的复位输入引脚,实现系统的复位控制。

可以选择NANDFlash启动方式或者NORFlash启动方式,这是通过配置OM0引脚来实现的,电路如图4-2所示,当JP20跳线短接时,OM0为0电平,选择NANDFlash启动方式;当JP20跳线断开时,OM0由R26上拉为1电平,选择NORFlash启动方式。

图4-2复位启动选择电路图

4.1电源电路设计

系统电源电路如图4-3所示,电源供电由JP11连接输入实验箱主板,5V电源经过C39,C49,C50滤波后,由两片LDO芯片U9、U11稳压输出两组3.3V电源,其中一组用来经主板供电,另一组用来给核心板供电。

图4-3电源电路图

而S3C2410A所需要的内核电源是1.8V电源,所以得通过LDO芯片进行再次转换。

具体电路如图4-4所示

图4-4S3C2410A电源电路图

LDO是一种低电压差电源芯片,而SPX1117系列LD0芯片输出电流可达800mA,输出电压的精度为,还具有电流限制和热保护功能,其输出端的10

的钽电容用来改善瞬态响应和稳定性。

4.3字模函数

LCD液晶显示的方法有很多种,通常可分为段式、字符式、点阵式,在本系统的设计过程中,为了对使用者作出必要的提示,需要在LCD上显示汉字,所以有必要对其作一研究。

汉字的显示一般采用图形的方式,事先从微机中提取要显示的汉字的点阵码,一般用字模提取软件来获得。

我们将显示汉字函数定义为voidGUI_Disp(uint16x,uint16y,uint16w,uint16h,uint16*buffer),其中x,y是汉字显字的起始点,w,h分别是汉字显示的长度和宽度,buffer是要显示的汉字的点阵码。

在该函数当中,首先对显示区域参数过滤,如果在该区域,则对要显示的汉字的点阵码送到LCD缓冲区,进行显示。

其关键点在于点阵码的提取和分块显示。

4.4触摸屏驱动程序

触摸屏驱动程序是通过设置ADC寄存器来实现的,一般在S3C2410中,将其设置成中断模式,具体程序框图如图5-1所示:

图4-5程序框图

在该框图中,我们可以得到,当触笔接触到触摸屏时,S3C2410将响应中断,即进入中断函数,然后首先将关闭中断,然后通过ADCDATA0寄存器的最高位来判断触笔是提起状态还是按下状态,如果是按下状态,那么将首先对X轴进行采样、转换,最后将X轴对应的坐标值寄存在ADCDAT0寄存器的低8位,同理,接着对Y轴对应的坐标值进行采样、转换,最后将Y轴对应的坐标值寄存在ADCDATA1寄存器的低8位。

这样就得到一个采样点的坐标值,最后将这一个坐标点送给LCD画点驱动程序,将其在LCD显示屏上显示出来。

当然了,这只是问题研究的第一步,因为我们的最终目的是要通过获取对应坐标点,在触摸屏上画出各种不同的图形符号和进行必要的坐标范围判定。

这样我们又提出一个问题,即是否每次都能准确获得相应触点的坐标。

4.5坐标点校准

当用触笔在触摸屏发生点击动作时,将能返回触摸屏的坐标数据.问题是如何将触摸屏的坐标数据转换成液晶屏的坐标数据呢?

 这里有多种解决方案:

1、触摸屏芯片的资料中应该有解决方案,或者找其相近的触摸屏,查看他人是怎么处理类似情况的;

2、如果液晶的显示没有问题,就是得到触摸屏的坐标后如何处理,现在我假定已经了解触摸屏的物理原理了,点击触摸屏上下顶点,获得两个坐标,(x1,y1)和(x2,y2),x1=x2,记录下来,然后随便点击一个位置,获得的y值肯定在y1和y2之间,根据比例算出位置,然后映射到液晶上,根据比例显示出来就可以,大致的过程就是这样,x的值也可以这样计算出来,期间需要注意的是消除抖动;

3、用公式进行计算,在触摸屏数据与其位置偏移关系且屏幕像素与其位置偏移关系同为线性关系假设情况下,触摸屏返回的位置信息与像素位置信息之间成2D坐标变换关系。

则对于触摸屏按下点的触摸屏坐标(Tx,Ty)与其在显示设备位置关系上匹配的点的屏幕坐标(Sx,Sy)之间的转换关系,可以通过下述坐标变换表示:

Sx、Sy是预先知道的,Tx、Ty是通过测量得到的,即通过三个点就可以确定A1,B1,C1和A2,B2,C2。

本人用的是第二种方法,由实验得到的数据可知,LCD上的原点坐标是(0,0),最大坐标是(640,480);而触摸屏上的原点坐标是(0,0),最大坐标是(1000,1000)。

所以由测量得到的值(adcx,adcy),需要进行如下转换:

(1-3)

(1-4)

但在转换过程中,并没有出现对应的转换关系,而是横轴转换成(0-640)+(0-320),纵轴转换成(0-480)+(0-480),什么原因,有两种可能,一种是数据类型设置的小,在乘法计算过程中数据溢出而丢失;另一种就是在除法运算过程中,数据省略而丢失。

但这两种可能都不是。

4.6画线函数算法

在上一节中,我们对LCD画点的问题以及触摸屏获取点的问题进行了一定的研究,但问题的关键是我们要画出不同的图形,需要对一系列的点进行操作,这样就涉及到了对大量点的收集问题,也就是点收集的实时性。

一般有两种情况,一种是逐点收集,即触摸屏响应一次中断,收集一次点,然后延时一定的时间,如果在延时时间内,没有中断,则将收集到的所有点一并显示出来,另一种情况就是在中断程序里面做文章,因为如果把触摸屏设置成中断模式,我们可以通过DATAn的最高位来判断触笔是否提起,如果触笔一直处于按下状态,那么我们就在一直进行采样,并将采样到的各个点显示出来,这样就可以达到实时性的要求。

所以我采用第二方法,即边采样边显示的方法。

4.7系统软件设计

本设计是基于S3C24210A处理器,该芯片具有丰富的软硬件资源,我们通过在软件中定义其各自的寄存器,来完成设计要求,在设计过程中,我们主要用到了LCD模块和触摸屏模块,所以在软件的主函数当中,首先要对其进行初始化,然后进入一开始界面,并且将LCD停留在该界面,等待触摸屏的中断。

当触笔被按下时,就会转入中断子程序,开始触点坐标值的采样,直到触笔抬起为止。

 

第五章系统测试结果与分析

5.1系统概述

该软件系统是在基于ARM920内核的三星公司S3C2410为处理器,通过外置触摸屏和LCD显示屏,可以把在触摸屏上画出的点线即各种图形符号,显示在LCD显示屏上,其主要可以实现以下几个功能:

1、画图即可以在屏幕上画出各种图形的功能;

2、清屏即当在屏幕上画的各种符号较多或需要重新画图时,将屏幕清除的功能;

3、取色即可以根据个人的需要,预先设定图形符号的颜色的功能。

5.2软件运行截图

系统软件运行具体流程图如图6-1所示,刚开始时,系统处在主菜单中,然后往复循环,判断是否启动画图面板,如果启动,则进入画图面板,在这个界面,我们有两种选择:

画图选择和取色选择。

如果选择取色功能,则将进入取色界面,在这里,我们提供了多种颜色,而且在这个界面,只能选择颜色,不可以进行画图,用户可以多次选择颜色,但以最后一次为准,当取完合适的颜色后,点击返回选项,系统将会自动返回画图界面,进行再次操作;否则一直将会停留在取色界面。

如果选择画图功能,则打开画图面板,可以进行画图。

在进行画图的过程中,用户可以使用清屏选项,再次更换相应的颜色如图5-1所示。

图5-1系统软件流程图

电子黑板成功图如图5-2和5-3

图5-2软件清屏效果界面图

图5-3调试成功图

 

第七章设计总结与展望

通过本学期对《嵌入式系统》这门课程的学习,对基于ARM929T内核的三星S3C2410芯片的电子黑板的软件和硬件方面的设计进行了研究,并对可以实现的各种功能进行了验证。

课堂学习主要注重于理论知识,而我们要将所学每一次课程设计都会学到不少东西,这次当然也不例外。

不但对自动控制原理的知识巩固了,这次课程设计终于顺利完成了,在设计中遇到了很多编程问题,最后在自己和同学相互协助下,终于迎刃而解了。

课程设计是我们专业课程知识综合应用的实践训练,着是我们迈向社会,从事职业工作前一个必不少的过程.”千里之行始于足下”,通过这次课程设计,我深深体会到这句千古名言的真正含义.我今天认真的进行课程设计,学会脚踏实地迈开这一步,就是为明天能稳健地在社会大潮中奔跑打下坚实的基础.

同样十分感谢老师在此次实验中给我提出的建议与不足,老师严谨细致、一丝不苟的作风一直是我工作、学习中的榜样;老师循循善诱的教导和不拘一格的思路给予我无尽的启迪;这次模具设计的每个实验细节和每个数据,都离不开老师您的细心指导。

而您开朗的个性和宽容的态度,帮助我能够很顺利的完成了这次课程设计。

 

参考文献

[1]北京博创兴业科技有限公司.NET-ARMt3000说明书.北京博创兴业科技有限公司.2004

[2]邓超.带有CAN总线的嵌入式工控触摸屏系统[D].吉林大学信号与信息处理专业硕士论文

[3]李健无线点菜系统的研究[D]天津大学硕士学位申请论文

[4]罗雪莲,宋树祥.基于ARM的嵌入式系统触摸屏设计[J].电器时代.2004.12:

72-73

[5]倪天龙,邓洪波,金连文.通过ADS7846在PDA上实现个性化书法输入[J].电子技术应用.2004年9月21日

[6]钱丽.基于ARM的嵌入式无线点菜[D].武汉科技大学计算机应用技术硕士论文

[7]沈连丰,宋铁成,叶芝慧等.嵌入式系统及其开发应用[M].北京:

电子工业出版社2005.7.154-162

[8]谭爱国,据长江.基于ARM单片机的触摸屏嵌入式系统设计[J].电脑开发与应用.2005年第10期

[9]唐继英.基于ARM的网络显示器硬件系统的设计[D].河北工业大学控制理论与控制工程专业硕士论文

[10]王敏,金新民,童亦斌.基于ARM微处理器LPC2292的触摸屏显示系统设计[D].电子元器件应用.2005.10

附录一

#include"config.h"

#defineUSE_IRQ_TOUCH1

#defineADC_FREQ(2*1000000)

chardisp_buf[50];

voidD

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

当前位置:首页 > 高等教育 > 文学

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

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