想做嵌入式工程师,需要怎么样做( 四 )


【超全整理】《Linux云计算从入门到精通》系列实战笔记全放送

■网友
谢邀。前面的几个问题看以看看雪松的博客:关于嵌入式的学习和职业发展嵌入式学习推荐大家读得书嵌入式工程师有哪些权威的认证,这个问题在zhihu已经存在了。
■网友
从在校生的角度去回答一下你在学校中可以做的一些事情。1.做一个嵌入式工程师需要学习些什么东西? 很多人都说嵌入式性价比不高,学的东西又多又杂,既需要懂硬件也需要懂软件。硬件无非就是模电数电的学习,以及画PCB板,画PCB板在条件允许下可以自己从简单的最小系统板和一些简单的硬件电路开始画开始。我们学校的团队PCB画板入门就是画一块51的最小系统板。然后硬件学习除了理论知识学的好之外,还要多看多抄别人设计的优秀的电路,我们实验室做硬件的小伙伴就经常拆解某些仪器和电路板,然后去抄他的设计。举简单的例子,有些板子可以用一个IO口实现多个按键,只是通过连接多几个电阻或者电容就可以实现这样一个有趣的电路。再比方说,红外发射管接的电阻阻止大小和红外管有很大关系的,因为现在淘宝买的红外管一般它的导通电压也就是1点多,想要让他电流达到要求你是可以算出你此时应该接多大的电阻。这些东西都是我们成为嵌入式工程师应该懂的东西。不一定需要硬件非常精通,但不能一窍不通。 软件方面的学习,主要我们用的是C语言做开发,C语言一定要学精。虽然很多问题你可以用if、for、while解决,还有很多常说的状态机switch-case,但是当你学到一定程度后就应该思考怎么把程序优化得更好,实现功能和做得好是有很长的距离的。数据结构和操作系统的知识,不管学校有没有教一定要花多点心思去学习,要熟练使用指针、链表、结构体、树这一些常用的知识。然后在学有余力之余,我建议要学一门面向对象的语言,C++、Java等等,会大大提高编程的能力和开拓思路。还有其他余力,可以学一门GUI编程的语言设置是安卓,可以学QT、C#,会这些的最大好处不是说让你以后转软件而是偶尔你做项目的时候有所需要,可以自己轻轻松松设计一个专用的软件作为工具,帮自己高效地解决问题,这方面我在一些项目中获益匪浅。汇编的话也要去学习,至少要能够看懂基本的通用的指令,因为平台不一样指令很多不一样,不需要专门去学。然后操作系统,大三可以考虑给自己地电脑装个Ubuntu,挺好玩地,还可以学学Linux,玩玩一些新潮又高科技的东西。顺便给你安利一个ubuntu下很棒的一个机器人操作系统ROS,一个可以说是目前最流行的机器人方面的一个"系统",功能超级强大,里面很多工具会大大增加你做项目的成就感。 至于单片机,其实就是个工具,你把51或者stm32这种学会了,其他自然就会了。2.做些什么?向哪方面努力? 做什么东西地话,我觉得你如果你下定决心要做这个方面,找老师进个实验室或者团队,第一有很多的学习资源,第二可以帮你节省开销。我私认为单干自学很少成为大神的。然后准备一下去参加一些锻炼价值大一点的比赛,推荐robomasters、电赛、飞思卡尔等国内比较认可、比较公平的比赛。3.嵌入式工程师有哪些权威的认证? 我啥证都没有,感觉不是很必要。4.毕业后的待遇如何?有没有什么其它的建议? 待遇有高有低,看能力看公司,一般来说你如果能力不差,一般国内好的公司很容易进的,薪资大部分虽然没有CS那么高,其实我觉得也没他们那么辛苦,毕竟做的东西相对而言更容易入门也简单点,工资我觉得是合理的。建议的话,好好准备,大三找个好实习,找工作也方便很多。。。。。。无聊瞎扯了很多,大大们勿喷~~
■网友
曾经我也和你一样想这些,后来工作了发现根本不用想这么多just do ittrust me
■网友
这里转载一个QUORA上的回答~ 如何两年内成为优秀的嵌入式工程师:https://www.quora.com/How-can-I-become-a-good-embedded-system-engineer-in-two-years 你可以翻译查看上面大神的回答。


推荐阅读