嵌入式系统的应用和开发

嵌入式系统的应用和开发,第1张

嵌入式系统的应用和开发

基于嵌入式系统的具体产品应用是计算机工程史上的里程碑。深入到了各行各业,其已成为高科技领域中必不可少的工具。 我下面为你整理了关于嵌入式系统的应用和开发的文章,希望对你有所帮助。

1嵌入式系统简介

嵌入式系统可以抽象出一个典型的组成模型,其可划分为硬件层、软件层及功能层。

1.1嵌入式系统定义

嵌入式系统最通用的定义是以应用为中心,以计算机技术为基础,软硬件可裁剪、功能、可靠性、成本、体积、功耗严格要求的专用计算机[1]。

根据IEEE9(国际电气和电子工程师协会)的定义,嵌入式系统也可定义为控制监视或辅助设备机器和车间运行装置。

嵌入式系统的定义很多,统一起来很难。对于其定义有疑问的部分研究人员将嵌入式系统定义为:“嵌入式系统是以嵌入式微处理器为内核,以微电子技术,计算机技术,电子技术、对象技术为基础,软硬件可根据对象需要所设置,并且嵌入到对象器件内,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用智能化的控制系统。”[2]

1.2嵌入式系统的特点

嵌入式系统是面向专业应用领域的,从其应用角度分析,具有以下特点:

(1)硬件层,是所有软件的运行基础,嵌入式系统至少拥有一个高性能处理器为硬件平台。如ARM处理器。

(2)软件层,其能扩充和充分发挥硬件层功能。嵌入式系统需有一个多任务 *** 作系统的软件平台,来控制管理计算机硬件和软件资源以及合理的组织计算机工作流程。如Liunx,UC/OSⅡ等 *** 作系统。

(3)嵌入式系统是先进的技术及资金密集、知识产业化不断创新的集成系统。其将先进的电子科学技术与各行各业的具体应用相结合。

(4)是面向用户、产品及特定应用的。

(5)具有较长的生命周期。与实际产品相结合,并与产品升级同步进行。

(6)对程序质量要求较高。一般都将系统中的软件固化在存储器中,大部分都具有较高的实时性。

(7)嵌入式系统不具备在其上进行进一步开发的能力。需要借助专门的开发工具和环境来满足产品设计完成后的程序功能修改工作。

2基于ARM的嵌入式系统技术应用及开发方法

2.1ARM的技术应用特点

ARM(Advanced RISC Machines)是一种嵌入式微处理器,它具有低功耗、低成本、高性能的特点,采用RISC体系结构,大量使用寄存器,具有高效的指令系统,在实际嵌入式应用中,只保留和嵌入式应用紧密相关的功能硬件,去除其他的冗余功能部分,来实现嵌入式应用的特殊要求[3]。基于ARM微处理器的嵌入式系统不同于单片机、DSP系统,其高性能的特点,在硬件部分的电路板设计方面是比较困难的,绝大多数的ARM板都要在4层以上。其实ARM最关键的是软件部分的 *** 作系统,系统开发应更侧重于软件方面,包括系统裁减,底层驱动和应用程序等。

2.2ARM嵌入式系统的开发流程

基于ARM的嵌入式系统设计的开发流程如图1所示。

2.3ARM嵌入式系统的开发方法

(1)建立系统的开发环境

嵌入式系统资源受限制,如果在其硬件平台上直接编写软件,比较困难。因此根据其特点须在特定的开发环境下进行。搭建相应的软硬件平台:在宿主机(HOST)也就是PC机上安装开发工具,并将编写好的软件程序进行交叉编译生成二进制代码,最后将其移植到目标板的特定位置运行。这种在宿主机(HOST)环境下开发,在目标板(TARGET)上运行的开发模式叫交叉开发模式,交叉开发模型如图2所示。

(2)Boot Loader引导程序开发

Boot loader是在嵌入式 *** 作系统内核运行前运行的一段程序,与我们经常提到的BIOS功能相近,每种体系结构都有与其相匹配的Boot Loader。通过Boot loader程序的运行,可以初始化硬件设备,建立系统的内存空间映射图,这样就可以将系统的软、硬件环境设定在一个合适的状态,方便于最终调用 *** 作系统内核,并且为运行用户应用程序准备好正确的环境。

Boot loader程序由汇编和C程序两部分组成,程序执行过程也分为汇编和C程序代码部分两个阶段。汇编程序与硬件设备相关,不便移植,第一阶段需要完成初始化看门狗、设置中断异常向量表、堆栈、配置存储器等,之后再跳转到第二阶段的C语言程序入口处。C程序代码部分主要完成初始化本阶段所需要的外部设备,调用NANDFLASH的API函数,配置SDRAM空间,并将用户的`程序代码从NANDFLASH存储器中复制到SDRAM中,最后再跳转到用户程序的入口[4]。

3嵌入式技术的应用领域

嵌入式技术无处不在,已经深入到了生活的各个领域,为我们的生活带来了很大的方便。

(1)无线通讯领域。特别是智能手机,全球95%的手机采用了ARM芯片,随着手机功能愈像电脑,手机更需要功能强大的嵌入式芯片。现在,全球售出的每一部手机中平均就有2.4块ARM芯片。

(2)工业控制领域。基于ARM核的32位微控制器芯片逐渐向低端微控制器应用领域扩展,在工业控制领域发挥了很大的作用。

(3)网络应用。网络宽带技术不断发展,基于ARM技术的ADSL芯片也逐步进入竞争范围,并取得一定优势。而且,语音及视频处理也应用了ARM技术,同时对DSP的应用领域提出了新的挑战。

(4)仪器仪表方面。有智能仪器、智能仪表、医疗器械、色谱仪、示波器等。

(5)民用方面。如电子玩具、电子字典、游戏机、录像机、复读机、投影仪、照相机、空调、冰箱、洗衣机、调制解调器、防盗控制器、激光驱动器、变速控制器、汽车点火控制器、避雷控制、农业节水控制系统、保安控制系统等方面。

(6)导航控制方面。如导d控制、航天导航系统、电子干扰系统等。

(7)数据处理方面。如图文图表终端、复印机、硬盘驱动器等。

(8)农业交通方面。智能公路(汽车导航、流量控制、信息监测与汽车服务)、植物工厂(特种植物工厂、无土栽培技术、智能种子工程)、虚拟显示VR机器人、信息家电(家用电器的网络化)等等。

除此以外,众多领域都用到了基于ARM微处理器的嵌入式技术,在生活的各个领域得到了广泛的应用。

嵌入式系统开发就是对于除了电脑之外的所有电子设备上 *** 作系统的开发,开发对象有手机,掌上电脑,机电系统等。

嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。它一般由嵌入式微处理器、外围硬件设备、嵌入式 *** 作系统以及用 户的应用程序等四个部分组成,用于实现对其他设备的控制、监视或管理等功能

嵌入式系统一般指非PC系统,它包括硬件和软件两部分。硬件包括处理器/微处理器、存储器及外设器件和I/O端口、图形控制器等。软件部分包括 *** 作系统软件(OS)(要求实时和多任务 *** 作)和应用程序编程。有时设计人员把这两种软件组合在一起。应用程序控制着系统的运作和行为;而 *** 作系统控制着应用程序编程与硬件的交互作用。

………………………………………………………………………………

嵌入式系统非常难,但是嵌入式开发前景也是非常好的,一般从事嵌入式开发的待遇都在6000-15000之间。怎样

学习嵌入式,我刚才看到一篇很不错的文章,是一个专科生介绍自己如何自学嵌入式,并找到嵌入式的工作,里面介绍了他的学习方法和学习过程,希望对你有帮助。

先做个自我介绍,我07年考上一所很烂专科民办的学校,学的是生物专业,具体的学校名称我就不说出来献丑了。09年我就辍学了,我在那样的学校,一年学费要1万多,但是根本没有人学习,我实在看不到希望,我就退学了。

退学后我也迷茫,大专都没有毕业,我真的不知道我能干什么,我在纠结着我能做什么。所以辍学后我一段时间,我想去找工作,因为我比较沉默寡言,不是很会说话,我不适合去应聘做业务。我想应聘做技术的,可是处处碰壁。

一次偶然的机会,我才听到嵌入式这个行业。那天我去新华书店,在计算机分类那边想找本书学习。后来有个女孩子走过来,问我是不是读计算机的,有没有兴趣学习嵌入式,然后给我介绍了一下嵌入式现在的火热情况,告诉我学嵌入式多么的有前景,给我了一份传单,嵌入式培训的广告。听了她的介绍,我心里痒痒的,确实我很想去学会一门自己的技术,靠自己的双手吃饭。

回家后,我就上网查了下嵌入式,确实是当今比较热门的行业,也是比较好找工作的,工资也是相对比较高。我就下决心想学嵌入式了。于是我去找嵌入式培训的相关信息,说真的,我也很迷茫,我不知道培训是否真的能像他们宣传的那样好,所以我就想了解一段时间再做打算。

后来,我在百度知道看到一篇让我很鼓舞的文章,是一个嵌入式高手介绍没有基础的朋友怎么自学入门学嵌入式,文章写的很好,包含了如何学习,该怎么学习。他提到一个方法就是看视频,因为看书实在太枯燥和费解的,很多我们也看不懂。这点我真的很认同,我自己看书往往看不了几页。

我在想,为什么别人都能自学成才,我也可以的!我要相信自己,所以我就想自学,如果实在学不会我再去培训。

主意一定,我就去搜索嵌入式的视频,虽然零星找到一些嵌入式的视频,但是都不系统,我是想找一个能够告诉我该怎么学的视频,一套从入门到精通的视频,一个比较完整的资料,最好能有老师教,不懂可以请教的。

后来我又找到一份很好的视频,是在IT学习联盟网站推出的一份视频《零基础嵌入式就业班》(喜欢《零基础嵌入式就业班》的可以复制 sina.lt/qKh 粘贴浏览器地址栏按回车键即打开)。里面的教程还不错,很完整,可以让我从基础的开始学起。视频比较便宜。

下面介绍下我的学习流程,希望对和我一样完全没有基础的朋友有所帮助。

收到他们寄过来的光盘后,我就开始学习了,由于我没有什么基础,我就从最简单的C语言视频教程学起,话说简单,其实我还是很多不懂的,我只好请教他们,他们还是很热心的,都帮我解决了。C语言我差不多学了一个礼拜,接下来我就学了linux的基本命令,我在他们提供linux虚拟机上都有做练习,敲linux的基本命令,写简单的C语言代码,差不多也就三个礼拜。我每天都在不停的写一些简单的代码,这样一月后我基本掌握了C和linux的基本 *** 作。

接下来我就去学习了人家的视频的培训教程,是整套的,和去参加培训没有多大的区别,这一看就是两个月,学习了ARM的基本原理,学习嵌入式系统的概念,也掌握了嵌入式的环境的一些搭建,对linux也有更深层次的理解了,明白了嵌入式应用到底是怎么做的,但是驱动我只是有一点点的了解,这个相对难一点,我想以后再慢慢啃。

这两个月,除了吃饭睡觉,我几乎都在学习。因为我知道几乎没有基础,比别人差劲,我只能坚持努力着,我不能放弃,我必要要靠自己来养活自己,必须学好这门技术,然后我就把不懂的问题总结记下来,这样慢慢积累了一段时间,我发现自己真的有点入门了。

最后的一个月,我就去看关于实践部分的内容,了解嵌入式项目具体的开发流程,需要什么样的知识,我就开始准备这方面的知识,也就是学习这方面的视频,同时他们建议我去找了找一些嵌入式面试的题目,为自己以后找工作做准备。我就到网上找了很多嵌入式的题目,把他们理解的记下来,这样差不多准备了20天左右

我觉得自己差不多入门了,会做一些简单的东西了。我就想去找工作看看,于是我就到51job疯狂的投简历,因为我学历的问题,专科没有毕业,说真的,大公司没有人会要我,所以我投的都是民营的小公司,我希望自己的努力有所回报。没有想过几天过后,就有面试了,但是第一次面试我失败了,虽然我自认为笔试很好,因为我之前做了准备,但是他们的要求比较严格,需要有一年的项目经验,所以我没有被选中。

后来陆续面试了几家公司,终于功夫不负有心人。我终于面试上的,是在闵行的一家民营的企业,公司规模比较小,我的职务是嵌入式linux应用开发,做安防产品的应用的。我想我也比较幸运,经理很看重我的努力,就决定录用我,开的工资是3500一个月,虽然我知道在上海3500只能过温饱的生活,但是我想我足够了。我至少不用每天都要靠父母养,我自己也能养活自己的。我想只要我继续努力,我工资一定会翻倍的。

把本文写出来,希望能让和我一样的没有基础的朋友有信心,其实我们没有必要自卑,我们不比别人笨,只要我们肯努力,我们一样会成功。

你喜欢嵌入式的话就要努力去学。

大体上分为一下六个步骤。

第一步:系统需求分析

第二步:体系结构设计

第三步:软,硬件协同设计

第四步:系统集成

第五步:系统测试

第六步:形成产品

最后补充:在设计的六个步骤的整个过程都要编写技术文档。这个很重要哟。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/tougao/6072605.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-13
下一篇 2023-03-13

发表评论

登录后才能评论

评论列表(0条)

保存