博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
嵌入式开发者技能
阅读量:5099 次
发布时间:2019-06-13

本文共 2501 字,大约阅读时间需要 8 分钟。

  合格的嵌入式开发者应是多面手,应具备各方面的技能,包括从硬件到软件到应用(电力系统保护,自动化,控制,人工智能,机器学习等),从单板到系统整机,从技术到管理,甚至吹拉弹唱也需要了解一点,做项目管理时可以提升团队气氛和丰富业余生活。

  嵌入式知识和技能体系庞大,样样精通者凤毛鳞角,一般都是一专多能,各类技能多少都能说上一点。按照嵌入式开发层次关系,整理嵌入式开发者技能大全如下。

 

1、处理器

  MCU架构及开发。MCU(Microcontroller Unit),俗称单片机(Single Chip Microcomputer),把中央处理器(CentralProcess Unit,CPU)的频率和规格作适当删减,并将内存(Memory)、计数器(Timer)、USB、A/D转换、UART、PLC、DMA等周边接口,甚至LCD等驱动电路都整合在单一芯片上,形成芯片级的计算机,为不同的应用场合做不同的组合控制。常见的MCU包括Intel的C51/C8051F系列,Motorola的68K系列,MicroChip的PIC系列等。

  MPU架构及开发。MPC指微处理单元,一般不带外围器件(如存储器阵列等),是高度集成的通用结构的处理器。典型如Intel的X86系列、飞思卡尔的PowerPC系列、P1系列,ARM架构处理器等。

  DSP架构及开发。DSP采用哈佛结构,同一个时钟周期内可以多次访问存储器,多级指令执行流水结构提高了系统的执行效率,DSP芯片常用于复杂的运算,典型如TI的TMS CXX系列,ADI的SHARC系列、Blackfin系列等。

 

2、CPLD&FPGA架构及开发

  CPLD&FPGA作为专用集成电路(ASIC)领域中的一种半定制电路而出现,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。通过可编程逻辑单元实现各种算法和组合逻辑。 

  基于CPLD&FPGA实现程序开发。包括RTL门级逻辑图设计,VerilogHDL程序设计,VHDL程序设计,XILINX编译软件使用,ALTERA编译软件使用,低速串、并行通信控制器设计,高速串行通信控制器设计。

 

3、电路设计和分析

  包括模拟电路和数字电路设计,包括器件DataSheet阅读,原理图及PCB阅读等。

 

4、原理图/PCB设计工具

  Cadence,Altium,PADS,DXP等。

 

5、电路仿真工具使用

  Multisim,Pspice,ADS,MATLAB等。

 

6、分立类电子元器件工作原理和选型

  电路防护类器件,阻容器件,电感磁珠,DC/DC,晶振,二极管,三极管,稳压管,光耦,MOS管,IGBT,继电器,开关和按键,LED指示灯,PCB板用接线端子,交流互感器等。

 

7、集成类电子元器件工作原理和选型

  AD,逻辑器件,DA,运放,计数器,触发器,锁存器,译码器,SRAM,SDRAM,DDR,FLASH,EEPROM,接口芯片等。

 

8、失效分析与可靠性

  物料的构造与工作原理,金相切片,显微观察,PCB形变测量,HALT实验技术,可靠性计算等。

 

9、硬件测试(器件、模件、整机)

  元器件测试方法,模件、整机测试方法,元器件、模件、整机测试问题分析,国标、行标理解,EMC问题分析和解决等。

 

10、操作系统架构及开发环境

  了解操作系统原理及基本编译原理。操作系统提供CPU资源管理、外设驱动、内存管理、线程/进程管理、文件系统、网络通讯、安全机制、界面管理等。嵌入式实时操作系统的基本特征是事件响应的快速性和确定性,在嵌入式系统中广泛应用。

  通用操作系统包括windows、Unix、LInux等。目前在嵌入式领域广泛使用的操作系统包括:嵌入式实时操作系统µC/OS-II、嵌入式Linux、WindowsEmbedded、VxWorks、FreeRTOS、QNX等,以及应用在智能手机和平板电脑的Android、iOS等。

 

11、底层驱动开发

  VxWorks操作系统驱动开发,Linux移植,Linux开发,单板DTS配置以及根文件系统生成(Buildroot),U-BOOT移植和开发,C语言开发,Python语言开发,Makefile编写,GNU编译器及工具链的使用,Linux操作系统使用。

  具体包括以太网驱动,SPI驱动,I2C驱动,文件系统驱动,CAN驱动等。

 

12、系统软件设计

  面向对象,设计模式,UML,嵌入式多任务开发,重构,多核开发等。了解常用的开发过程,如敏捷编程,测试驱动开发等。

 

13、系统软件开发

  熟悉开发语言,包括:C,C++,C#,QT,Python,JAVA,等。熟悉WEB 开发,开发规范等。

 

14、数据结构与算法

  常用数据结构和算法,图论算法,数字信号处理算法,小波算法等。

 

15、网络与通信

  计算机网络原理,TCP/IP协议原理及分析,IEC61850规约(建模,MMS,SV,GOOSE等),103规约,104规约,DNP规约,Modbus协议,物联网Zigbee协议,bluetooth,wireshark等报文分析工具,环网HSR协议,网络安全等。

 

16、数据库

  数据库原理与设计,SQLite/Access/MySQL/SQLServer/Oracle/大数据hadoop等。

 

17、界面和图形库。

  Zinc,UGL,QT,SVG,MiniGUI等。

 

18、应用知识(以电力系统自动化为例)

  电力系统常识,继电保护知识,测控知识;智能变电站网络架构,网分,故障录波器,保信,远动等。

 

19、调试和测试

  软件测试基础,61850规约测试,网络测试,时间管理测试,应用功能测试(继电保护功能等),ATS测试开发与使用,Labview测试程序开发等。

 

20、项目管理

  配置管理如版本管理工具Git使用等,项目计划与任务划分,项目进度跟踪,项目协调等。

 

转载于:https://www.cnblogs.com/enki-fang/p/9317873.html

你可能感兴趣的文章
App右上角数字
查看>>
小算法
查看>>
新作《ASP.NET MVC 5框架揭秘》正式出版
查看>>
WPF中实现多选ComboBox控件
查看>>
读构建之法第四章第十七章有感
查看>>
Windows Phone开发(4):框架和页 转:http://blog.csdn.net/tcjiaan/article/details/7263146
查看>>
python asyncio 异步实现mongodb数据转xls文件
查看>>
TestNG入门
查看>>
【ul开发攻略】HTML5/CSS3菜单代码 阴影+发光+圆角
查看>>
IOS-图片操作集合
查看>>
IO—》Properties类&序列化流与反序列化流
查看>>
jquery实现限制textarea输入字数
查看>>
Codeforces 719B Anatoly and Cockroaches
查看>>
ActiveMQ与spring整合
查看>>
EOS生产区块:解析插件producer_plugin
查看>>
格式化输出数字和时间
查看>>
关于TFS2010使用常见问题
查看>>
URL编码与解码
查看>>
Eclipse 安装SVN插件
查看>>
阿里云服务器CentOS6.9安装Mysql
查看>>