嵌入式软件工程师掌握技能(成为一个合格的嵌入式软件工程师)
嵌入式软件工程师掌握技能(成为一个合格的嵌入式软件工程师)
2024-11-21 11:52:50  作者:绚丽流年  网址:https://m.xinb2b.cn/sport/cnu336618.html

成为一个合格的嵌入式软件工程师,怎么分配技能点

一、嵌入式系统

要明白什么是嵌入式软件工程师,我们先从嵌入式系统(嵌入式设备)说起。维基百科上对嵌入式系统的定义如下:

嵌入式系统(Embedded System),是一种嵌入机械或电气系统内部、具有专一功能和实时计算性能的计算机系统。


///插播一条:我自己在今年年初录制了一套还比较系统的入门单片机教程,想要的同学找我拿就行了免費的,私信我就可以哦~点我头像黑色字体加我地球呺也能领取哦。最近比较闲,带做毕设,带学生参加省级或以上比赛///

正文开始:

通俗的讲,嵌入式系统就是一种具有专一功能的计算机系统。我们身边就有好多嵌入式设备,常见的比如智能手机,数码相机等消费类的电子设备,再比如最近几年兴起的诸如智能音箱、智能电视、扫地机器人智能家居设备。当然还包括汽车防抱死系统、各种医疗成像系统等设备。总之各行各业我们都有可能接触到它,尤其随着智能化时代的到来,很多非智能的设备也将逐步由嵌入式设备所替代,典型的如智能门锁。


二、嵌入式工程师

随着嵌入式设备应用越来越广泛,相关人才的需求也越来越大。那么相关的人才都有哪些呢?其中最主要的就是嵌入式工程师。嵌入式工程师分为两种:嵌入式硬件工程师和嵌入式软件工程师。

·嵌入式硬件工程师主要职责是负责设计嵌入式系统的硬件原理图,使用相应的工具画出PCB图,后期配合嵌入式软件工程师调试系统。

·嵌入式软件工程师从系统软件上又可以分为两种:BSP工程师和嵌入式应用软件工程师。嵌入式应用软件工程师主要是负责编写基于嵌入式系统的应用软件。类似于基于windows上的QQ, word。由于我本人是做BSP的,因此这里我们着重讨论BSP工程师。


三、BSP工程师

BSP,全称Board Support Package,汉语意思即板级支持包。BSP工程师,顾名思义就是负责板级支持包的开发、调试和维护工作。那么什么是板级支持包呢?前面我们讲过,嵌入式硬件工程师负责设计硬件,画出PCB图,工厂会根据PCB图生产出对应的电路板。一个嵌入式系统光有电路板是不够的,还要有对应的软件支持,软件开发的前提是首先使板子正常稳定的工作,然后再在其上编写对应的应用软件以实现其特有的功能。其中使板子正常稳定的工作的代码就属于板级支持包。那么BSP工程师的具体工作有哪些呢?

我们首先从嵌入式设备谈起,前面我们谈到了很多的嵌入式设备,从系统角度来讲这些设备有些是跑操作系统的,有些没有跑。对于不跑操作系统的设备来讲,其功能相对简单一点,使用的主控芯片一般也比较简单,比如风靡一时的51系列单片机、stm系列的单片机。对于这些简单系统来讲,它对软件开发人员要求相对比较低,当然也就没有我前面所说的分工那么详细,有时候甚至从画板、点亮、开发都是由一个人来完成的。对于跑操作系统来讲的设备,就不一样了。一般来讲,跑操作系统的设备其软件开发分


三个阶段:

1.点亮板子

第一批板子出厂时是不包含任何软件的。BSP工程师需要结合硬件原理图修改从芯片厂商拿到的参考代码,调试板子,使板子上的操作系统能够正常稳定工作,从而提供一个稳定的开发调试环境,这个过程叫做点亮板子,行话叫做Bringup。这属于BSP工程师最具有价值含量的工作之一,因为它对BSP工程师所掌握的知识的广度和深度都有一定要求。其中会涉及到计算机原理、操作系统,处理器架构等,还包括硬件方面的一些知识。综合起来其最核心的工作就是对内核的移植、裁剪。

2.使能板子上所有设备

上个阶段中,板子的CPU和基本的器件已经能正常工作,这个阶段中将使能所有的外设,并为后面要开发的应用程序提供对应的软件控制接口。这个过程的实质是对应的操作系统下驱动开发的过程,需要掌握硬件工作的原理,操作系统的相关知识。

3.为板子开发应用程序

如前文所述,嵌入式系统是一个具有专一功能的系统,其上所有的硬件,软件都应该为这一功能服务。第二个阶段结束的时候,板子上所有的设备都已经可以正常使用了。这个阶段的任务就是开发应用程序来实现某种特定的功能,应用程序中会使用第二阶段提供的软件接口控制板子上的设备来完成这一功能。

四、BSP工程师应具备的能力

上述前两个阶段属于BSP开发的内容,第三个阶段属于嵌入式应用软件开发的过程。综上所述,BSP工程师主要应该具备的能力主要有:

·掌握计算机原理方面的知识;

·掌握操作系统的相关知识,深入研究某种操作系统,目前来讲,研究linux操作系统应该是大部分人的选择;

·基本的linux(开发环境)操作

·精湛的C语言功底和一定的C /汇编的知识。

·掌握一定的硬件和电路原理方面的知识;

·熟悉常见的接口协议,如I2C, SPI, UART, USB等。

当然作为一个软件开发人员也必须掌握一些通用的软件,比如:

·代码管理软件,常见的如git等;

·代码阅读软件,这个就因个人喜好而不同了,比如:opengrok,source insight,vim下ctags/cscope插件组合等。

  • 现代菲斯塔属于什么档次的车(北京现代新款菲斯塔实车现身)
  • 2024-11-22北京现代新款菲斯塔实车现身6月份,菲斯塔的销量仅为20辆,不可否认,这款上市初期也曾月销破万要竞争思域的运动车型,最终还是不可避免地被边缘化了但北京现代不肯放弃,新款菲斯塔即将登场日前,已有网友拍到了新款菲斯塔的实车图,预计最。
  • 笔记本电池感觉充不进电(笔记本电池充不进电怎么办)
  • 2024-11-22笔记本电池充不进电怎么办1 查看电池,看线路是否松动,连接是否安全2 假如线路正常,看电池充电器的电路板坏了,试试另一个3 假如线路正常并且充电器正常,则可能是计算机内部的电路板发作故障4 一般电池已运用约3年,基本上是老化。
  • 自己养君子兰土如何配置(养君子兰用3种材料配土)
  • 2024-11-22养君子兰用3种材料配土君子兰是肉质根系,在平时养护时总是容易出现烂根的现象,这其中也跟所用的培养土不够疏松、透气,排水效果不好造成的所以要想养好君子兰配土是非常关键的,不仅要有一定的肥力,更要保证土壤有疏松透气的效果一、不。
  • 大王椰免漆板是实木板(选择大王椰生态免漆板的十大理由)
  • 2024-11-22选择大王椰生态免漆板的十大理由家装过程中,选择板材也是重头戏或许考虑功能性,或是环保,又或是美观作为一款长期畅销的家居优选板材,大王椰生态免漆板被选择的理由有哪些呢?理由一5A级选材标准芯材更环保大王椰免漆板芯材采制国内外大径成年。
  • 成都人眼中的昆明蓝(城味你眼中的昆明)
  • 2024-11-22城味你眼中的昆明多彩昆明昆明是一个丰富多彩的城市,有人说昆明是粉色的,有人说昆明是绿色的,有人说昆明是黄色的,还有人说昆明是蓝色的,……你的眼里昆明是什么颜色的呢?昆明是粉色的粉色,浪漫、温馨,自带可爱和柔软,让人充。
  • 怎么做河南卤面好吃(这是河南卤面面菜一起熟)
  • 2024-11-22这是河南卤面面菜一起熟它是很家常的面条吃法,对于每一个河南人来说,这就是家乡的味道,这种味道根植于灵魂,存在于记忆中无法忘却哪怕是常年在外乡打工,这道面依旧属于灵魂美食卤面也有着悠久的历史,可谓是色香味俱全,吃起来口感有嚼。
  • 春节买什么年宵花(开年看消费四川泸州)
  • 2024-11-22开年看消费四川泸州来源:央视网央视网消息:在年货采购商品清单中,年宵花也是必不可少的品种眼下,各地的年宵花市场都迎来了消费旺季春节临近,在四川泸州的花卉市场里,各个摊位早早地备足年宵花,并摆放到了显眼处供市民挑选采购各。
  • 乾隆现存最大的玉器(乾隆为何独爱南玉匠)
  • 2024-11-22乾隆为何独爱南玉匠“良玉长集京师,工巧则推苏郡”,指的就是苏州的玉器雕琢工艺从明代中期开始,以皇家宫廷式样为代表的“官式”和以苏州地方式样为代表的“苏式”就分野明显,“南匠”一词频频出现乾隆朝的档案关于南玉匠的记录较为。
  • 为什么会有犹太人这个民族(一个令人喜欢不起来的民族)
  • 2024-11-22一个令人喜欢不起来的民族提起犹太人,我相信大多数人对犹太人的印象都是聪明、精明、虔诚、有钱、勤奋,总体上对这个民族的印象基本上是不错的确实,被公认为是继伽利略、牛顿之后最伟大的物理学家,爱因斯坦是犹太人、被世人誉为“精神分析。
  • qq网名男生伤感(qq网名男生伤感大全)
  • 2024-11-22qq网名男生伤感大全一川水冬榠眼睛爱哭,但不会输深情不及久伴月棠记落琼伤痛,你忘了吗与我共赴黑暗牵手看日落节操少年涟漪爱意不足止不住心动淹没浪漫我真的很难瘦就此长大了你的心疼由我来承受時光迫使我們成長奶一口清甜七凉誰让莪。
  • 关于曹操和刘备的五个故事(卑鄙的圣人仁德的圣君)
  • 2024-11-22卑鄙的圣人仁德的圣君煮酒论英雄曹操一句论断“天下英雄,唯使君与操耳”确实是吓着刘备了,是害怕曹操会以此杀他,还是被曹操说出了心里话而感到震撼,也许都有曹操刘备煮酒论英雄石像世人只知道刘备乃常败将军,屡战屡败然他与曹操一战。
  • 文竹怎么繁殖(文竹的繁殖方法)
  • 2024-11-22文竹的繁殖方法分株繁殖这种方法适用于那些已经长了2到3年的植株具体的操作是:首先把它从盆中脱离出来,注意不要伤到它,将根处的土去掉;然后用手把植株分开,分成一小株一小株的,注意每一株都要带着一些根;最后把分好的植株。