Closed neilChenXie closed 6 years ago
作者:陈俊直 链接:https://www.zhihu.com/question/23239634/answer/24019622 来源:知乎 著作权归作者所有,转载请联系作者获得授权。
我只能说我的专业成长之路:我高考报的志愿全是计算机、电子信息、自动化等工科专业,而且非北方的院校不读(我是南方人)。然后考上了天津的一学校学计算机专业。大二学完电路、C、java、微机原理等之后发现我还是喜欢做硬件,然后大三就转到了测控专业。学MCU原理的时候,那时候穷,买不起开发板。就买了几颗51的MCU,用学校实验室的万用板等元器件焊了一个最小系统+ISP电路(废了几颗MCU,弄爆电容、整坏了老师的仿真器)……后来跟着老师陆续做了些项目(全是他自己的找的生意,我们给他免费打工),参加电子设计比赛,除了51还用过TI的DSP。当时还想着学FPGA,但发现开销太大,毕业迫在眉睫,然后就先毕业出去混了。
第一份工作是一家做煤矿矿用设备的企业,所有的主控MCU都是使用PIC的MCU,花了一个月时间自己焊开发板、自己看着Microchip的数据手册和使用指南啃下了Microchip的PIC12/16/18、dsPIC系列MCU。然后老板没让我先参与研发,而是把老产品的坏件都修好。至此,我开始发现,做EE,不能迷信用什么主控芯片,做硬件设计重点是在于系统接口电路调试和实现。 干了快两年,那套井下通信控制设备也差不多了,一个老工程师告诫我。做硬件重要不是在于设计,而是在于调试设备的过程,在调试过程中出现的各种千奇百怪的bug,能解决掉了就是你学到了。
后来东西做完后,我嫌涨薪太慢。萌生去意,正好此时大学同学在北京的一家做铁路列车装备的企业要招人。然后我就过去了。在这个企业里开始学着用ARM芯片,学着用嵌入式实时操作系统。也接触到了EMC的概念。为了一个带有触摸屏的模块设备能通过严酷等级三级(根据GB/T17626)的EMC型式试验,基本上天天加班研究TVS管、压敏电阻、PCB布线等,每天拿着静电抢在那里扫。终于在大年二九那天晚上搞定了它……(说多都是泪)
后来因为某次高铁事故,很多相关不相关的设计铁路行业的民企的资金链都被拖垮了,我所在的企业也不能幸免,之后又跳槽了,还是在铁路行业。做铁路信号系统,在这里开始涉及到做FPGA/CPLD芯片,开始涉及到做开关电源。当时为了调试一个反击式开关电源,天天加班、烧了不少的MOS管,慢慢的巩固了我那可怜的模电知识。当然最重要的是学到了完整的一套项目管理流程,明白了做项目开发,最重要的在于需求分析。 …… 至此说了我大学到之前工作的三个企业,现在在广州混,做电机控制,因为是正在进行的东西,我就不多说了。 做电工最总要的就是动手和经验,现在大学基本都会让学生焊一个收音机来练手,目的就是让你加深巩固模电的知识。
菜鸟到大神——硬件工程师进阶之路
记得刚上班的前半年,我的主要工作就是画转接板。各式各样的转接板,把公司里面大牛做的各种板子连接起来。我的转接板上除了连线就是插座,没有IC,甚至没有电阻电容。就是这么简单的工作我做了半年。相信很多菜鸟工程师或者刚刚步入工作的毕业生刚开始工作的时候都会遇到这样的没有技术含量的枯燥的工作。这样的工作很容易让人气馁,时间长了就会抱怨,感觉看不到希望,感觉不被重视。其实如果能换种心态对待这些工作,你会有不一样的收获。
1、通过半年的工作,从元件库,封装库,原理图到最后的layout,整个流程已经非常熟练。熟练掌握一种EDA设计工具,是硬件工程师的基本功。
2、虽然是转接板,但是上面的走线仍然有电源线,射频信号,数字信号,模拟信号等等。这样我依然要做到数字信号和模拟信号的隔离,射频信号的特殊处理,系统供电的考虑等等。
3、通过各个接口的信号定义,可以判断每块板子的功能和互联关系。进而了解到了很多接口协议,IIC,SPI,UART等等。
4、通过每次系统联调的机会,学习了常用仪器的使用。比如示波器,频谱仪,逻辑分析仪等等。
应该说,通过半年的工作,让我从一个刚毕业的菜鸟,变成了一个入门的硬件工程师。这些是菜鸟工程师成长的必经之路。在这条道路上,我们能做的就是抓住一切可能的机会提高自己,让这个入门的时间尽量短。我们能在枯燥的工作中学到什么,举一个IIC的例子来说明吧。
开始看到信号定义里面经常会见到IIC_SCL,IIC_SDA这样的命名,自然的就去问大牛,这是什么信号。一般大牛的回答都会是这样的“这就是个IIC接口,很简单,速度很慢,就两根线,一根SCL是时钟,一根SDA是数据,你直接连上就行了。”如果你就此认为IIC很简单,就两根线,直接连接就能工作了,不再去做更多的了解,那么你不适合做工程师。好奇心是推动工程师前进的原动力,呵呵。通过大牛知道这个接口是IIC就够了,后面我们可以在网络上找到更多。我们可以找到IIC最新的接口协议文档,找到各种参考设计,找到各种应用文档。通过对协议文档的学习,我们能对IIC接口有更深刻的了解。IIC是一个总线接口,分为主机和从机,并且不局限于一对一的主从连接模式,也可以一对多或者多对多的连接。一对总线上可以连接多个从机,或者多个主机。每个从机都有自己唯一的从机地址。地址的最后一位表示对从机进行读操作或者写操作。IIC总线有起始条件和结束条件。每发送8bit数据后都会有应答信号,所以data线是双向的。IIC的两根信号线是开漏输出的,也就是说外部需要上拉电阻。上拉电阻的选择需要满足IIC信号对上升沿的要求。如果主机从机的电平不一致,需要做电平转换,电平转换有几种实现方式……可以看到,一个看似简单的接口其实也有很多值得学习的地方。这些就是经验,经验多了,自然也能变成大牛。 菜鸟工程师应具备的素质:
1、好奇心,好奇心,好奇心 2、资料检索能力 3、学习能力
硬件工程师在工作一年半载以后,总会画过几块自己的板子,调试过几次电路。这个时候,工程师会发现,自己需要学的东西好多呀。一个系统里面可能会有ARM,FPGA,MCU,DSP,DDR,PCIE,USB,SATA,Ethernet,UART,IIC,SPI,射频,天线,电源,视频,音频……等等等等。硬件工程师要把这些知识都掌握和精通么?那可能要学到地老天荒了。这时候定位就显得很关键。
你的兴趣是什么,你的专业是什么,你公司的主业是什么,你的职业规划是什么,这些都会影响你的定位。首先最重要的肯定是你个人的兴趣和专业。工作是个长期的过程,没有兴趣只能让你越来越痛苦。而专业有影响着你前期入门时间。公司的主业就是公司未来的主要发展方向,无疑让自己的定位与公司的主业一致能让你在公司里有更好的发展空间。职业规划则决定了你需要充实和努力的方向。
举几个例子。如果你在一个芯片公司做硬件工程师,日常工作大概会是做自家芯片的验证平台,参考设计。那么FPGA设计是你必须掌握的。根据各家芯片的不同,可能还会有其他要求。但是公司的主业是IC设计,怎么尽量去靠近公司主业?硬件工程师最好的切入点也许就是封装了。封装技术是最接近硬件工程师的工作,同时和PCB设计也有很多共通之处。从了解封装技术入手,更多的去了解芯片设计技术,有了这些经验又为后续的参考设计提供了良好的知识储备。
如果在消费电子企业,由于消费电子的特性,可靠性和可制造性是设计最重要的要求。那么系统的可靠性设计,EMC,可制造性等等就是硬件工程师必须去学习的东西。去了解真正的生产流程,了解生产线上的实际生产过程,反过来又会很好的影响到设计。
如果在仪器仪表企业,那么测试测量技术,防水防尘防雷设计,低功耗设计等等可能就变成硬件工程师日常需要关注的点。
硬件是项目的基础,硬件平台上面会有各种各样的元器件,电路,设计。一个好的硬件工程师一定是个杂家,对各方面的知识都要有涉猎。但同时又要有侧重,在和自身工作相关的领域,走的尽量深。只有这样,硬件工程师才会有好的发展。
做自己感兴趣的事,把自己的职业规划和公司主业联系起来,并朝着一个既定的目标努力。相信经过三五年的时间,都会收到不错的结果。永远不要让自己脱离公司的主业太远。在公司的上升期可能差距并不明显,但是一旦公司过了快速扩张期,进入平稳发展阶段,或者突然遇到大的挫折,需要在业务上做取舍的时候,被保留的只能是公司的主业。
1)要有明确的职业规划 2)个人发展与公司主业挂钩 3)兼容并蓄,同时侧重专业领域 4)做自己感兴趣的事,并坚持下去