嵌入式开发工程师需要掌握哪些知识呢?

嵌入式软件开发涉及的知识点很多,我仅以自己多年的经验简单说一下:

1、具备简单的硬件电路设计能力,包括数字电路和模拟电路;做嵌入式软件对硬件一样要有一定的基础;

2、MCU设计与应用,从单片机到ARM到DSP等要具备根据客户要求设计产品的能力;外围端口和设备的设计使用以及驱动程序的编写能力,包括ADC、FLASH、EEPROM、RTC、Timer、GPIO、CAN、UART、I2C、SPI、以太网、液晶显示器等等;

3、操作系统方面至少要精通一种嵌入式操作系统,比如uCOSIII、freeRTOS 、Vxworks等,并且一定要学嵌入式Linux ,搞明白多任务调度、信号量、邮箱等的原理和使用;在实际的项目中使用这些操作系统并逐渐掌握它们;

4、能编写常见的linux平台下的外围设备驱动,包括但不限于ADC、GPIO、UART、I2C、摄像头、SD卡、网卡、SPI等等,搞明白字符设备、块设备以及网络设备的常用设备驱动程序架构;

你可能感兴趣的:(嵌入式硬件,c语言,c++,人工智能,物联网)