总结如何成为一名优秀的嵌入式硬件工程师
扫描二维码
随时随地手机看文章
要成为一名高级嵌入式硬件工程师,需要具备扎实的理论基础和丰富的实践经验。以下是几个建议,帮助你成为一名优秀的嵌入式硬件工程师。
1. 学习硬件电路设计和嵌入式系统开发的基础知识。这包括数字电路、模拟电路、微处理器和微控制器的基本原理、嵌入式系统的设计和开发流程等。建议初学者可以从学习基础的电子电路开始,逐步深入学习嵌入式系统的相关知识。
2. 熟悉硬件设计和嵌入式系统开发的工具和软件。这包括各种电路仿真软件、PCB设计软件、嵌入式系统开发工具等。熟练掌握这些工具和软件可以提高工作效率和准确性。
3. 参与实际项目的开发。通过参与实际项目的开发,可以积累丰富的实践经验,了解实际项目的需求和技术难点。在项目中,需要注重团队协作和沟通,积极解决问题,不断提高工作效率和质量。
4. 持续学习和更新知识。硬件技术和嵌入式系统的发展非常迅速,需要不断学习和更新知识。可以通过阅读相关书籍、参加培训和研讨会、关注行业动态等方式,不断提高自己的专业水平。
5. 建立自己的项目和作品集。通过建立自己的项目和作品集,可以展示自己的能力和技术水平。可以在Github等平台上分享自己的代码和项目经验,与其他开发者交流和学习。
6. 培养自己的软技能。作为一名嵌入式硬件工程师,不仅需要具备扎实的技术能力,还需要具备良好的沟通、协作和领导能力。需要注重学习和培养自己的软技能,提高自己在团队中的影响力和领导力。
高级硬件工程师需要如下能力:
1.负责硬件产品的战略规划
2.完成产品的开发、测试、版本管理、评审发布、产品上线等相关工作
3.负责与外观,模具,元器件,制版,焊接,外包装,组装,配件等第三方合作厂商深度沟通
4.为产品研发团队拟定明确有竞争力的产品方向,并能够统筹和推动研发执行
5.持续关注并研究行业前沿技术,挖掘新技术在产品上实施的可能性,以保证产品在技术上的持续创新
6.负责软硬资源整合,把控产品相关的品质管理、生产成本等环节
对于硬件来讲有几个方向,就单纯信号来分为数字和模拟,模拟比较难搞,一般需要很长的经验积累,单单一个阻值或容值的精度不够就可能使信号偏差很大。因此年轻人搞的较少,随着技术的发展,出现了模拟电路数字化,比如手机的Modem射频模块,都采用成熟的套片,而当年国际上只有两家公司有此技术,自我感觉模拟功能不太强的人,不太适合搞这个,如果真能搞定到手机的射频模块,只要达到一般程度可能月薪都在15K以上。
另一类就是数字部分了,在大方向上又可分为51/ARM的单片机类,DSP类,FPGA类,国内FPGA的工程师大多是在IC设计公司从事IP核的前端验证,这部分不搞到门级,前途不太明朗,即使做个IC前端验证工程师,也要搞上几年才能胜任。DSP硬件接口比较定型,如果不向驱动或是算法上靠拢,前途也不会太大。
而ARM单片机类的内容就较多,业界产品占用量大,应用人群广,因此就业空间极大,而硬件设计最体现水平和水准的就是接口设计这块,这是各个高级硬件工程师相互PK,判定水平高低的依据。
而接口设计这块最关键的是看时序,而不是简单 的连接,比如PXA255处理器I2C要求速度在100Kbps,如果把一个I2C外围器件,最高还达不到100kbps的与它相接,必然要导致设计的失 败。这样的情况有很多,比如51单片机可以在总线接 LCD,但为什么这种LCD就不能挂在ARM的总线上,还有ARM7总线上可以外接个Winband的SD卡控制器,但为什么这种控制器接不到ARM9或 是Xscale处理器上,这些都是问题。因此接口并不是一种简单的连接,要看时序,要看参数。
一个优秀的硬件工程师应该能够在没有参考方案的前提下设计出一个在成本和性能上更加优秀的产品,靠现有的方案,也要进行适当的可行性裁剪,但不是胡乱的来,我遇到一个工程师把方案中的5V变1.8V的DC芯片, 直接更换成LDO,有时就会把CPU烧上几个。
前几天还有人希望我帮忙把他们以前基于PXA255平台的手持GPS设备做下程序优化,我问了一下情况,地 图是存在SD卡中的,而SD卡与PXA255的MMC控制器间采用的SPI接口,因此导致地图读取速度十分的慢,这种情况是设计中严重的缺陷,而不是程序 的问题,因此我提了几条建议,让他们更新试下再说。
因此想成为一个优秀的工程师,需要对系统整体性的把握和对已有电路的理解,换句话说,给你一套电路图你 终究能看明白多少,看不明白80%以上的话,说明你离优秀的工程师还差得远哪。其次是电路的调试能力和审图能力,但最最基本的能力还是原理图设计PCB绘 制,逻辑设计这块。这是指的硬件设计工程师,从上面的硬件设计工程师中还可以分出ECAD工程师,就是专业的画PCB板的工程师,和EMC设计工程师,帮 人家解决EMC的问题。
硬件工程师再往上就是板级测试工程师,就是C语功底很好的硬件工程师,在电路板调试过程中能通过自已编写的测试程序对硬件功能进行验证。然后再交给基于操作系统级的驱动开发人员。
总之,成为一名高级嵌入式硬件工程师需要不断学习和实践,不断提高自己的专业能力和软技能。通过不懈的努力和坚持,相信你一定可以成为一名优秀的嵌入式硬件工程师。