预览加载中,请您耐心等待几秒...
1/5
2/5
3/5
4/5
5/5

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

嵌入式系统开发技术及应用论文嵌入式系统开发技术及应用论文摘要:嵌入式系统开发技术伴随着信息产业和集成电路的高速发展而快速的进步,于此同时电子产品的大量走进人们的生活,使得嵌入式系统的应用也变的越发的广泛。本文将会对嵌入式系统开发技术进行简要的分析并说明嵌入式系统和一般的操作系统在处理方法和处理过程方面的不同;还将对嵌入式系统开发的相应技术进行相关的介绍,对嵌入式系统开发技术中的一些简单技巧进行相应的阐述;最后说明嵌入式系统开发技术的综合应用。关键词:嵌入式系统;开发技术;应用在当今时代因为信息产业和集成电路高速发展已经进入信息化时代,在信息化时代中嵌入式系统已经越发的重要,同时嵌入式系统也已经在科学研究、工程设计、商业文化、人们的日常生活方面都有着广泛的应用。随着现在手机产品和数码产品的进一步的普及和推广嵌入式系统开发技术将会更加快速的发展,也会更加广泛的被应用。1嵌入式系统概述嵌入式系统主要是分为操作系统和相应的硬件两部分,嵌入式系统和其他操作系统的一些区别主要是体现在嵌入式系统的运行环境和相应的运用上。本文将主要对嵌入式系统的处理器、微内核结构、任务调度、硬实时和软实时、内核加载方式、内存管理进行简要分析。嵌入式系统的处理器主要有三种:嵌入式微处理器、嵌入式DSP、嵌入式微控制器。其中微处理器就相当于计算机中的CPU,微处理器主要是配置在主板上以便于达到体积小、低能耗的优越性能;嵌入式DPS主要是对离散的时间信号进行处理计算,从而可以提高编译效率;嵌入式微控制器俗称单片机,是一种集CPU、存储器、外设与一体的集成电路。嵌入式系统一般都是采用微内核结构,让内核只是提供基本的功能,这样就可以使系统可以更为方便的进行裁减,方便用户更加合理的选配相应的组件。嵌入式系统一般是可以支持多任务的,任务之间通过CPU进行切换和调度,任务根据需要有着各自的优先级,现阶段嵌入式系统对不同的优先级任务进行基于优先级的抢占调度法、对相同优先级的任务进行时间片轮换调度法。嵌入式系统有专门的实时系统,主要分为硬实时和软实时:硬实时要求系统必须在相应的时间中完成相应的任务,系统必须满足相应的系统响应时间;软实时则只要系统能够尽快的将所有的任务完成,只要所用的时间足够短就好。嵌入式系统的内核可以直接在Flash上进行运行,也可以直接在内存中进行运行,现在很多嵌入式系统采用的是Flash运行,虽然内存运行的速度更快,但是Flash运行更加的便捷。嵌入式系统的内存管理多数是没有针对MUU的'处理器设计的,所以嵌入式系统采用的多是实存储器管理策略,对内存的访问不经过MUU直接进行地执行上输出,这些访问地址都是物理地址,同时很多嵌入式系统缺乏对内存空间的保护。因此作为嵌入式系统的开发人员在进行嵌入式系统的开发时必须要参与到内存的管理中去,要在编译内核时清楚的知道系统的开发板有多少内存,并且由此进行相应的应用程序的编写。2嵌入式系统开发技术针对嵌入式系统开发技术的研究,本文将主要从嵌入式系统的开发过程、嵌入式系统平台移植软件这两个主要的方面进行介绍,其中嵌入式系统平台移植软件是关键的环节又涉及到字节顺序、字节对齐、位段、代码优化等问题。首先介绍嵌入式系统的开发过程,在嵌入式系统的开发过程中分为宿主机和目标机,宿主机进行编译、链接、定址过程,目标机作为嵌入式系统的硬件平台。在进行开发时,要将程序转化为可以在目标机上进行运行的二进制代码,整个过程分为编译、链接、定址这三个部分:所谓的编译就是用一个平台为另一个平台产生代码,这一过程一般通过交叉编译器完成;链接就是将编译过程中产生的所有的目标文件链接成一个目标文件,定址过程就是将物理存储器地址指定给目标文件的每一个相对偏移处。完成以上部分后还需要对目标机上的应用程序进行调试,只有通过相应的调试才能保证系统能够完整的发挥其想要达到的效果。嵌入式系统平台移植软件主要是因为多数的嵌入式系统的开发人员都是先在PC机上进行软件的编写,之后将软件进行相应的移植,在进行PC机上软件编程过程中一定要注意软件的可移植性,防止编程完成后无法移植。想要保证软件的可移植性就必须要提到字节顺序、字节对齐、位段、代码优化的问题。其中字节顺序是数据在内存中的排放顺序,一般分为大端字节顺序、小端字节顺序两种,大端字节顺序是高字节排到低地址处、低字节排到高位置处,小端字节顺序与大端字节顺序相反,是将高字节排到高地址处、低字节排到低地址处。嵌入式系统多数都是大端字节顺序的。字节对齐主要是因为嵌入式处理器的寻址方式中占据某字节的数据只能放在该字节整数倍的内存地址中去,这种处理方式使得有时进行编程时结构成员之间产生空洞,导致数据读取错误或无法读取,一般情况下我们运用在GCC的项目管理文件,MakeFile中增加编译选项pack-struck的方式来解决字节对齐