前言
单片机是相当“底层”和“硬件”的东西,没有太多高深的数据结构,也没有太多需要技巧的编程算法,只要我们从单片机执行的角度,去理解和编程就行了。
对于我们普通人没必要去深入研究,因为我们大部分人都只是单片机的应用者而已,别把自己提到“研究”的高度,我们只在“应用”的高度。正因为我们是在“应用”的高度,所以在熟悉和能精确把握“单片机的使用”的时候,我们应该把更多的精力放在“单片机的应用”的“使用环境”上。 多熟悉单片机的上下游环境和条件,那不是很困难的事,实际上是很有用的事情,让你更深刻的认识所处的行业。 希望本文能给新手带来点值得思考的东西。
新手入行
对于新手,我的建议是:别上来就是一个什么五年、十年规划之类的,我们都是普通人,那种规划不适合普通人。如果我们能将今后一年和二年的规划做好了,那你就已经很了不起了。每天都是一个想法,每月都是一个变化,更别说每年了。只要你在努力,脚踏实地的做事:嵌入式开发经验分享,把学习当作一种兴趣。不要把自己搞的太忙碌了,给自己每天留半个小时想想“心事”了。
走技术路线
做一个老板眼里专业的工程师,对于手头的开发任务,不管软件还是硬件,只要分配下来就能担起来。 不用学太多,就学一些就行了,也不要去跟风,那个没有必要。有时,你就是去学了,如果没有相应对应的开发任务,学的也是皮毛,不过只要皮毛也可以了,当你真正需要的时候,再拿起来就会快很多,也算是一种储备吧。 但你至少要会一种,一种相对来说狭隘的系统吧。 我一朋友就只会51单片机,从事工业自动化方面的机床设备,如下是他的技术栈:精通51 ,了解其他的单片机,精通51汇编,精通CPLD,半精通C51(只用来做点人机界面工作),粗通FPGA (想精通自己做51IP核)。
粗通STM32、DSP,粗通STM32和DSP的汇编,了解C编程。
精通三维造型软件SOLID WORKS(可以为自己的线路板造型和机械设备造型)
粗通机加工大部分的工艺。
精通钣金和焊接。
熟悉数控设备、机床的实现解决方案。
对于每个人来说,学以致用。以前的我什么都想学,什么都用不好。 当学的时候,却没有用的发挥平台,都是为学而学。但至少当你要用的时候,重新捡起来的时 候,就会很快。 就拿ARM内核的STM32来说吧,学的时候学得很努力,从其机理到实现,也做过好多的实验,可能最后就是用的少就剩下了点概念的东西了。 所以只要一样精通,比如51单片机,从设计、投板、采购、焊接、一直到调试成品等,一个系统下来,如果你思考了,如果你精通了,你还怕什么,不给高工资也要给你高年薪了。应该都能了解“老板一将难求”的道理了。当半个老板
当有一定的年龄和人力资源后,就可以自己出来做了,当个“有时连狗都不如”的所谓半个老板了。但自己当老板说容易也容易,说不容易也不容易。 当初我就是在这样的忐忑中,冲了进去。项目接的很多,周期对自己规定的也很短,往往都是白天在处理前一个或前面项目的维护工作,晚上回来工作到一、二 点开发项目。累就不用说了,有时想想那是在拿自己的命来搏钱啊!!!老婆不太同意我出来自己干,做的好好的也不错。于是,我就对老婆说,可能我不能每个月准时的拿钱养家糊口,但我保证一年下来的平均每个月养家糊口的钱一定不会低于现在。 就这样,我开始了走自己的路了。吃苦受累我不怕,付出了没有收获我不怕。怕的就是过不了自己的心理关,也许一直以来都比较好运气和顺利的缘故吧。作为和我同行的兄弟姐妹们,一定要过了自己的心理关,别太在意今时今日的得失,还有所谓的某些情况下的“面子”。至少我们应该用“最小的代价”来给自己当 “学费”。也不怕你们笑话,我的“学费”交的也不少。这种半个老板的做法可能跟“九天说的SOHO”的样子比较类似吧?!
一个成功的项目,不是你的功能有多好,有多强,而是你的开发为你的项目方带来了多少的利润收入,那才是真正的成功了,尽管你只赚了点开发费。做项目,别为自己考虑太多,多换位思考一下。人家能信任你,把项目扔给你做,你就多该从项目方的角度考虑考虑。也许有时他们的要求有点过分,但所谓不知者不去怪罪了。