新闻  |   论坛  |   博客  |   在线研讨会
[经验] 其他专业想转嵌入式,这些建议要看一看
tainqing | 2017-10-08 14:36:42    阅读:4255   发布文章

前几天,有朋友在后台问,他是一个机械专业的学生,想转到嵌入式方向,该怎么学?今天我们特意做了这样这个话题,希望能帮到那些想转嵌入式领域的朋友们!

当局者迷,旁观者清,关于转行这件事,先听听其他人的看法:

机械到嵌入式,我不觉得是转行,算是自己专业领域的拓展,毕竟嵌入式软件不是纯理论的东西,绝大部分是通过机械来实现其功能的。举一个极端的例子,你觉得设计一个机器人都需要哪些知识?仅仅的机械设计和嵌入式软件就够了吗?远远不止。学习嵌入式软件设计并不意味着放弃机械设计。

能有这个想法很好,纯粹地做机械,不是太好,以后的趋势肯定是要复合型的。

首先从个人发展来说,软件行业(嵌入式/通信/互联网)整体薪资待遇都比传统的机械行业要好,如果有毅力和决心,并且能主动学习,为了提高自己的生活水平,换行业未尝不可。从行业发展来说,据我所了解的,国内的高精度数控机床的研发一直是很薄弱,这方面的研究需要跨行业的人才,如果能有这样的机遇是相当不错的;另外机器人领域的研究(自动化生产)也在兴起,有跨行业的技术背景也是相当不错的。

嵌入式软件开发以后会比较火,而且应用范围比较广。但不太建议完全放弃原来的工作领域,转入嵌入式。****好是能找到一些交叉点,这样你的职业生涯起伏会比较小。

我是学机械的,但同时对于电子与软件非常喜欢。我学习单片机和画电路图,所以,在这方面是有一些心得的。如果纯机械的人,想转到电子或软件,要进行的转变比较大,****好要有人带。软件要学得比较深,所以,要向这个方面发展的话,需要学习的很多很多。我想,如果自己喜欢,而且各方面的条件比较合适的话,可以向这方面发展呀。

如果觉得你在机械设计这个行业的专长还没有发挥到极致,建议不要转行。如果你有能力只是感觉工作困难就不要转了。这年头做哪个行业都会遇到困难,看你在困难面前能坚持多久。综合分析下,如果你觉得自己的能力没办法再坚持下去,建议马上转,不要犹豫。当然跨行还会遇到困难。
当然,上面的建议只是参考,如果你真的想好了,要转做嵌入式工程师,下面的建议可以看看:

1. 嵌入式涉及到很多的基础知识

C语言,关于C语言要知道基本的语法,什么是结构体,什么是共用体,有什么区别,不用强记一些二级考的东西,因在实际中用的很少。
C++要知道什么是类,怎么定义,继承,接口,要深刻理解,当然基本语法也是必不可少的。

操作系统原理也应该知道基本的原理的,什么时间片啊,任务调度啊,都是需要知道的。

Linux基本命令的使用(vi编辑器必须会用,因为在终端改文件的时候只能用这个),我们现在很多的人都习惯用鼠标了,很少用到命令,我们学习嵌入Linux可要改改这个习惯了,Linux用命令操作一是效率高,二是功能非常强大,远非图形界面能比的了的,其实我们用图形界面的操作都要转化为命令传给硬件的。

Linux文件系统的管理要清楚,哪个目录存放是什么东西,有什么用,文件权限管理等。  

Shell编程也要了解一些,在这给大家推荐一个教程,周朝剑的shell编程,也就七八讲吧,讲的很全面。初学者看前4讲就可以了。

2. 看书不要希望一次就会,一次就明白是什么意思,也不要死记硬背
看不明白也没关系,以后遇到了知道去哪里去找就可以了,以后遇到的多了,也就记住了,遇到的少的,忘记也就忘记了。还有,不要直接阅读Linux内核源代码,看一些自己把头撞破也想不明白的事,会打击初学者的积极性,要循序渐进,今天学个做个LED,明天做个串口,后天说不定就做硬件编解码了。

3.你可以不接受培训,但是不能不买开发板

有基础的朋友可以买个板子自己先玩玩,没有基础的朋友建议还是系统的学习一下,把基础打扎实先。自学成功的周期有的是几个月,有的是几年,甚至有的人都自学不下去,在自学的过程中,能持续坚持几个月,并有一定进展的情况下,可以继续下去,假如一直没什么进步,一直在平衡线上来回,又想往这个发展,建议还是系统学习,不要一直自学的浪费时间。培训****大的好处就是3点:

1)系统:培训一般都是折重点和中心来讲,省去了不必要的时间,同时把这些知识形成系统教学想学嵌入式的话请假加企鹅一一起呜呜吧久零就要。

2.)学经验学方法:培训一般都是要老师上课,在培训机构学的不仅仅是书上的知识,而是结合老师所教的经验和方法来动手实操,掌握方法技巧。

3).周期短:一般嵌入式4个月左右的时间,当然这几个月自己也得努力辛苦一下。不过无论是自学还是培训重点还是自己,多实操,多动手,不懂就问。现在的开发板很便宜了,给初学者减轻了很多经济负担。看再多的视频,看再多的书,也不如自己动手试一下,看着很简单的东西,做起来就可能遇到很多的问题,遇到问题找到原因,解决问题,只有这样才能学到东西,记得我第一次写LED的驱动,想自己试一下,网上也有人写过相关的代码,可是自己一试,就出了好多的问题,弄了一天才把LED灯点亮。所以不要眼高手低。

4.不要好高骛远,要脚踏实地

对于初学者,还有一点小建议,我们拿到一个开发板,很兴奋也很激动,想法自然也很多,想用开发板实现自己的这个想法,实现那个想法,然后又不知道从何下手,然后就去论坛中发一个贴, “那个什么什么怎么实现啊,哪位大侠能详细说一下啊,跪求!!”然后等着别人去回复。见没人回复就抱怨。有想法是好的,我们要实现自己的想法也是有前提的,首先,我们对这部分知识了解吗?如果不了解就去google一下(****好别用百度,不太好用),了解了一些,也就大概知道要怎么做了。如果再遇到问题,再去发贴问,这样也显得咱们有水平。比如自己连串口是什么都不太清楚呢,就问串口通信怎么做啊,就是人家把代码给咱,咱也不明白是怎么回事啊。

5.多看代码,多写代码

见多识广,熟能生巧。多看代码,要从代码中读出代码的意思来。自己平时也要多写代码,多练习。

 

 


参与讨论
登录后参与讨论
推荐文章
最近访客