嵌入式开发可以从事哪些岗位?嵌入式开发涵盖硬件软件,开发链条很长,要根据自己的实际情况选择适应的职位。
嵌入式的职位大概有:
1、硬件工程师: 负责底层的硬件设计,主要要用到: 1.处理器:ARM9,DSP;Niosoll;FPGA(用于高速特殊场合) 2.PCB:EMC设计与仿真; 3.通讯:IIC,IIS,SPI,UART,CAN总线;RS232、PSTN Modem、网络、GPRS通信;
2、驱动开发工程师: 负责底层和上层的通讯,主要要用: 1.系统:Linux非实时系统/VXworks实时系统+架构/文件系统; 2.内核与BOOT:内核裁剪与移植、boot loader和驱动编写,驱动程序开发 3.上层接口:USB,网口, 4.底层接口:SPI、UART、IIC、I2S,CAN、IDE
3、软件工程师: 负责上层应用软件,主要要用: 1.CPU:51/MSP430/ARM7/ARM9; 2.外设:AD/DA、UART、USB、LCD; 3.总线和通讯接口:I2C,SPI,RS232,RS484,CAN,USB,以太网||||||BACnet、 MODBUS(或有实时性要求) 4.环境:Linux/QNX+ARM汇编; 5.GUI:VC++/VC#/LABVIEW;
4、系统开发工程师: 负责系统架构设计
5、DSP软件工程师: 负责数字信号处理部分,主要要用: 1.CPU:固定为一个小系列(如TI DM642/648/6467、TI C6000、TMS320C5000、Freescale StarCore); 2.算法:熟悉图像、音频、视频相关处理算法很重要,要会修改和优化; 3.接口与驱动:网络协议(MAC、IP、UDP、TCP)等; 4.操作系统:架构设计和操作系统配置;
6、FPGA设计工程师: 负责高速信号处理和部分数字信号处理,主要要用: 1.语言:VHDL/Verilog ; 2.环境:modlesim、Synplify、Quartus、ISE、ispleverEDA; 3.调试:设计、仿真、调试能力; 4.算法:数字信号处理、滤波设计等算法; 5.接口:E1 Framer/Deframer、HDLC控制器、以太网MAC控制器、SDH Framer/Deframer、SDH Mapper/Demapper、SPI4.2、HiGig、DDR、PCI、PCI-E、DDR-II、HD-SDI
在一个完整的项目中,每个工程师分工合作,完成架构师分配的模块。每个职位深入研究下去的水都很深,一旦决定很难再顺利转行了,所以毕业选择职位时一定要慎重。总的来说软件方面的需求在国内更大,当然竞争也更加激烈。硬件很多是直接买国外解决方案的,所以硬件职位需求较少,但高级人才非常吃香。
|