嵌入式系统广泛应用于生产过程控制、数据采集、传输通信等场合,主要用来对宿主对象进行控制,所以对嵌入式系统有或多或少的实时性要求。例如,对武器中的嵌入式系统,某些工业控制装置中的控制系统等的实时性要求就极高。有些系统对实时性要求也并不是很高,例如,近年来发展速度比较快的掌上电脑等。但总体来说,实时性是对嵌入式系统的普遍要求,是设计者和用户应重点考虑的一个重要指标。
嵌入式的种类
嵌入式微处理器
嵌入式微处理器(Embedded Microprocessor Unit,EMPU)是以通用计算机中的标准CPU为微处理器,并将其装配在专门设计的电路板上,且仅保留与嵌入式应用有关的母板功能,构成嵌入式系统。与通用计算机相比,其系统体积和功耗大幅度减小,而工作温度的范围、抗电磁干扰能力、系统的可靠性等方面均有提高。
嵌入式微控制器
(Microcontroller Unit,MCU)又称单片机。它以某一种微处理器为核心,芯片内部集成有一定容量的存储器(ROM/EPROM、RAM)、I/O接口(串行接口、并行接口)、定时器/计数器、看门狗、脉宽调制输出、A/D转换器、D/A转换器、总线、总线逻辑等。与嵌入式微处理器相比,微控制器的特点是单片化、体积小、功耗低、可靠性较高。微控制器是目前嵌入式系统工业的主流。
嵌入式数字信号处理器(Embedded Digital Signal Processor,EDSP)对系统结构和指令进行了特殊设计,使其适合执行DSP算法,编译效率高,指令执行速度也较快,在数字滤波、FFT、谱分析等方面,DSP算法已广泛应用于嵌入式领域,DSP应用正从在单片机中以普通指令实现DSP功能,过渡到采用EDSP。
嵌入式片上系统
嵌入式片上系统(System on Chip,SoC)是集系统性能于一块芯片上的系统组芯片。它通常含有一个或多个微处理器IP核(CPU),根据需求也可增加一个或多个DSP IP核,相应的外围特殊功能模块,以及一定容量的存储器(RAM、ROM)等,并针对应用所需的性能将其设计集成在芯片上,成为系统操作芯片。其主要特点是嵌入式系统能够运行于各种不同类型的微处理器上,兼容性好,操作系统的内核小,效果好。
嵌入式系统的特点
让你蜕变成才!从构成上看,嵌入式系统是集软硬件于一体的、可独立工作的计算机系统;
从外观上看,嵌入式系统像是一个“可编程”的电子“器件”;
从功能上看,它是对目标系统(宿主对象)进行控制,使其智能化的控制器。
嵌入式系统解决方案
基于嵌入式系统的RFID手持机系统方案
在基于嵌入式系统的RFID 手持机系统设计中,以微处理器LPC2142 为主控制器,根据系统的需求外扩了SRAM、Flash、SD 卡、键盘、LCD 显示、声响提示进行数据处理、数据存储、人机交互以及出错报警提示,通过USB 接口可以与主机进行数据通信,背光模块可以为LCD 和键盘提供背光,电压检测模块通过核心处理器的A/D 转换器进行电池电压的检测,从而间接检测出电池的剩余电量,RF 模块能够进行读写器与标签之间射频信号的收发,通过JTAG 接口可以进行程序的调试与下载。电源部分可以为系统中需要电源的各个模块提供电源,这是本文设计的重点内容。
嵌入式智能平台在医疗仪器行业应用方案
"EVOC"嵌入式智能平台在医疗仪器行业的应用。系统一般由多台监护仪和一台中央护士工作站组成,监护仪采用"EVOC"104-1541CLDN型全功能嵌入式工业主板为核心操作平台。该主板仅有手掌的一半大小,板上集成了超低功耗的NS GX 300MHz CPU处理芯片、 SDRAM、CRT/LCD控制、10/100Mbps网络接口、Compact Flash、IDE、FDD、两串一并、二个USB、一个115Kbps IrDA红外接口、1~255秒可编程看门狗定时器、PS2 键盘和鼠标,支持国内医疗行业通用的PC/104接口,系统通过该接口扩展的用户板完成包括血压、血氧、体温、呼吸等一系列传感探测器的信号采集,进行实时处理,结果可经由多种形式输出
嵌入式系统是软硬结合的东西,搞嵌入式开发的人有两类。发展前景
一类是学电子工程、通信工程等偏硬件专业出身的人,他们主要是搞硬件设计,有时要开发一些与硬件关系密切的层软件,如BootLoader、Board Support Package(像PC的BIOS一样,往下驱动硬件,往上支持操作系统),初级的硬件驱动程序等。他们的优势是对硬件原理非常清楚,不足是他们更擅长定义各种硬件接口,但对复杂软件系统往往力不从心(例如嵌入式操作系统原理和复杂应用软件等)。
另一类是学软件、计算机专业出身的人,主要从事嵌入式操作系统和应用软件的开发。如果这类人对硬件原理和接口有较好的掌握,也完全可以写BSP和硬件驱动程序。嵌入式硬件设计完后,各种功能就全靠软件来实现了,嵌入式设备的增值很大程度上取决于嵌入式软件,这占了嵌入式系统的主要工作(有很多公司将硬件设计包给了专门的硬件公司,稍复杂的硬件都交给台湾或国外公司设计,国内的硬件设计力量很弱
嵌入式领域较新,发展非常快,很多软硬件技术出现的时间都不太长(如ARM处理器、嵌入式操作系统、LINUX操作系统),大多数人没有条件接触或进入嵌入式行业,更谈不上能有机会接受专业人士的指导。因此,踏进这个行业的难度比较大,嵌入式人才稀缺,身价自然也水涨船高。
部门统计,我国嵌入式人才缺口每年50万人左右。根据前程无忧网发布的调查报告,嵌入式软件开发是未来几年热门和的职业之一,具有10年工作经验的高级嵌入式工程师年薪在30万元左右。即使是初级的嵌入式软件开发人员,平均月薪也达到了3000-5000元,中高级的嵌入式工程师月薪平均超过10000元。 做软件实际上有高下之分,开发语言从机器语言、汇编到C、C++,再到红透半边天的Java、C#等
还是门槛,比如月薪15k的Linux嵌入式开发职位,门槛就有 Linux系统、Shell编程、Linux开发环境、C语言、ARM硬件平台、数据结构、Linux内核、驱动程序等,粗略数数就有8道关口,他需要非常熟悉整个的计算机体系,能做出实际的产品,而Java的开发者却仅仅是会使用名叫Java的语言工具,始终高高飘在众多层次之上,开发项目非常快,甚至可以不知道OSI模型,很可能自始至终都是软件蓝领。
嵌入式开发本身也有高下之分,至少包含嵌入式应用程序工程师和底层的驱动内核工程师两种。前者同样是使用现成工具进行简单劳动,比如使用J2ME开发小游戏或者进行一些界面开发,而后者是根据芯片具体情况把操作系统(如Linux)移植到上面,同时编写必要的驱动程序,改写相应的内核代码。很显然后者是一个公司真正的技术核心。而技术核心的工资很可能是其他开发者的数倍。