OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5176|回复: 0

嵌入式工程师经验常识分享

[复制链接]

13

主题

16

帖子

0

精华

初级会员

Rank: 2

积分
81
金钱
81
注册时间
2012-10-7
在线时间
1 小时
发表于 2016-1-22 15:41:28 | 显示全部楼层 |阅读模式
1金钱
本文将从技术和就业经验等角度为即将进入嵌入式开发的工程师们,详细讲述了嵌入式的概念,嵌入式开发之间的异同以及应该如何做出选择。以下都是前辈的一些经验之谈,希望对大家有所帮助。

第一.工程师眼中的嵌入式系统 10614480.gif

在工程师看来:着重理解嵌入的概念,主要从三个方面上来理解。

1.
从硬件上,将基于CPU的处围器件,整合到CPU芯片内部,比如早期基于X86体系结构下的计算机,CPU只是有运算器和累加器的功能,一切芯片 要靠外部桥路来扩展实现,象串口之类的都是靠外部的16C550/2的串口控制器芯片实现。目前的这种串口控制器芯片早已集成到CPU内部,还有PC机有 显卡,而多数嵌入式处理器都带有LCD控制器,但其种意义上就相当于显卡。比较高端的ARMIntel Xscale架构下的IXP网络处理器CPU内部集成PCI控制器(可配成支持4PCI从设备或配成自身为CPI从设备);还集成3NPE网络处理器 引擎,其中两个对应于两个MAC地址, 可用于网关交换用,而另外一个NPE网络处理器引擎支持DSL,只要外面再加个PHY芯片即可以实现DSL上网功能。IXP系列最高主频可以达到 1.8G,支持2G内存,1G×1010G×1的以太网口或Febre channel的光通道。IXP系列应该是目标基于ARM体系统结构下由 intel进行整合后成Xscale内核的最高的处理器了。

2
、从软件上前,就是在定制操作系统内核里将应用一并选入,编译后将内核下载到ROM中。而在定制操作系统内核时所选择的应用程序组 件就是完成了软件的嵌入,比如WinCE在内核定制时,会有相应选择,其中就是wordpadPDFMediaPlay等等选择,如果我们选择 了,在CE启动后,就可以在界面中找到这些东西,如果是以前PC上将的windows操作系统,多半的东西都需要我们得新再装。 10614493.gif

3
、把软件内核或应用文件系统等东西烧到嵌入式系统硬件平台中的ROM中就实现了一个真正的嵌入
以上的定义是我在67年前给嵌入式系统下自话侧重于理解型的定义,书上的定义也有很多,但在这个领域范围内,谁都不敢说自己的定义是十分确切的,包括那些专家学者们,因为毕竟嵌入式系统是计算机范畴下的一门综合性学科。

.嵌入式系统的分层及对口专业要求 10614498.gif

嵌入式系统分为4层,硬件层、驱动层、操作系统层和应用层。

1.
硬件层:是整个嵌入式系统的根本。如果现在单片机及接口这块很熟悉,并且能用C和汇编语言来编程的话,从嵌入式系统的硬件层走起来相对容易,硬件 层也是驱动层的基础,一个优秀的驱动工程师是要能够看懂硬件的电路图和自行完成CPLD的逻辑设计的,同时还要对操作系统内核及其调度性相当的熟悉的。但 硬件平台是基础,增值还要靠软件。

硬件层比较适合于电子、通信、自动化、机电一体、信息工程类专业的人来搞。需要掌握的专业基础知识,有:单片机原理及接口技术、微机原理及接口技术、C语言等。

2.
驱动层:这部分相对而言比较难。驱动工程师不仅要能看懂电路图,还要能对操作系统内核十分的精通,以便其所写的驱动程序在系统调用时,不会独占操 作系统时间片,而导至其它任务不能动行。若不懂操作系统内核架构和实时调度性、没有良好的驱动编写风格、按大多数书上所说添加的驱动的方式,这样可能连个 初级的驱动工程师的水平都达不到,这样所写的驱动在应用调用时就如同windows下我们打开一个程序运行后,再打开一个程序时,要不就是中断以前的程 序,要不就是等上一会才能运行后来打开的程序。想做个好的驱动人员没有三、四年功底,操作系统内核不研究上几遍,不是太容易成功的,但其工资在嵌入式系统 四层中可是最高的。

驱动层比较适合于电子、通信、自动化、机电一体、信息工程类专业尤其是计算机偏体系结构类专业的人来搞。当然除硬件层所具备的基础学科外,还要对数据结构与算法、操作系统原理、编译原理都要十分精通。

3.
操作系统层:对于操作系统层而言目前可能只能说是简单的移植,而很少有人来自已写操作系统,或者写出缺胳膊少腿的操作系统来,这部分工作大都由驱 动工程师来完成。操作系统是负责系统任务的调试、磁盘和文件的管理,而嵌入式系统的实时性十分重要。据说,XP操作系统是微软投入300人用两年时间才搞 定的,总时工时是600/;中科院软件所自己的女娲Hopen操作系统估计也得花遇几百人/年才能搞定。因此这部分工作相对来讲没有太大意义。

4.
应用层:相对来讲较为容易。如果会在windows下如何进行编程接口函数调用,到操作系统下只是编译和开发环境有相应的变化而已。如果涉及Jave 方面的编程也是如此的。嵌入式系统中涉及算法的由专业算法的人来处理的,不必归结到嵌入式系统范畴内。但如果涉及嵌入式系统下面嵌入式数据库、基于嵌入式 系统的网络编程和基于某此应用层面的协议应用开发(比如基于SIPH.323Astrisk)方面又较为复杂,并且有难度了。



嵌入式解决方案提供 嵌入式人才实训
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-6-12 09:12

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表