流利的用于编写操作系统的编程语言,例如C:对组件级别的硬件的理解;以及轻松跨越软件和硬件的能力,这些都是当今嵌入式工程师的全部核心技能。
嵌入式开发所包含的技术的多样性和不断扩展的功能,那么什么样的技能对于工程师来说具有重要的竞争力,使其在就业市场中具有竞争力并发展其职业。
无需成为电气工程师或芯片设计师,但是需要了解一些硬件。了解地址和数据总线,I2C和SPI等接口总线以及GPIO的工作原理。还应该具有有关GPIO及其相关电压之类的基本电子学背景。这可以帮助您了解将嵌入式硬件与现实世界连接的基础知识。
除此之外,还需要确定您对设备驱动程序,移植操作系统还是让操作系统从头开始运行感兴趣。这些都需要具有读取制造商数据表的能力,知道什么是寄存器以及如何操作寄存器中的位的能力。另一方面,如果只想专注于软件,那么应用程序是仅嵌入(即,资源受限)还是具有实时和/或实时功能?对安全至关重要的影响?嵌入式,实时性和安全性至关重要,它们在许多方面都具有相关性,但是它们不是一回事,它们都需要稍微不同的技能。所有这些技能都可以学习。但是,大多数人都无法尝试解决所有这些领域,特别是在他们的职业生涯初期。但是,可以制定一个计划,该计划从嵌入资源限制的“公正”开始。然后,转到实时(软实时和硬实时)。最后是对安全至关重要的(由于设计不良而导致的最苛刻的实时域)。
当今的嵌入式工程师有望熟悉开源技术,例如Linux,Zephyr,Tensorflow或RISC-V。实际上,开源技术和许可在嵌入式软件中正变得无处不在。此外,SoC级的软件优化技能对于性能,内存和功耗优化都越来越重要。随着要求嵌入式工程师使用专用的硬件加速器(例如GPU,DSP,视频,视觉,安全性和神经网络加速器)做更多的事情,系统级的思考将变得更加重要。
领取专属 10元无门槛券
私享最新 技术干货