单片机道路之感悟
时间:10-02
整理:3721RD
点击:
今天又是周末,天气晴朗,挺风和日丽的,刚睡醒起来,也不知道干嘛,决定写一写这几年的单片机工作生涯,跟各位分享。
上大学期间,由于是在内地,所以信息比较闭塞,对于一些科技性的东西,也仅仅只是停留在书本上,包括现在看来很简单的单片机技术。我记得是上大三的时候,第一次接触单片机教材,那时候只知道跟着老师在课堂上看着那一页页的课本,听老师认真的念着教材里面关于单片机内部构造,关于汇编语言,然后下课了,课堂作业就是类似与如何写一段程序,把A地址的数据拷贝到B地址去。学校也没有关于单片机的实验室,自己也从来没有见过单片机长得什么样,更谈不上开发板之类的东西了,但在这个过程中,我发现我莫名其妙的爱上了单片机,喜欢动写程序(尽管只是纸上谈兵),每写完一段程序(那时只会汇编),就幻想着这段程序能实现很奇妙的功能,并且每次考试我的单片机都是很高分,就更加喜爱它了......时间就这样流逝,我就在这样的意淫中体验单片机的快乐。
转眼到了毕业,跟大部分人一样,对于找工作我也很迷茫,但是内心的声音告诉我,我要搞单片机程序,我要体验那一行行代码给我带来的乐趣。所以我就朝着方面去找,看到这里,你大概觉得我肯定找不到工作,因为我从来就没有动手做过实际东西,但是奇怪的是我找工作很顺利,因为我在第一关笔试成绩好。
就这样靠纸上谈兵,我进了一家企业做单片机,开始了第一份工作,刚进公司的一个礼拜,没人理我,经理只是给我安排了一个座位,然后把公司的产品原理图给我看,我的个天啦,原理图打印出来那么大,我也没看出什么,反正也没人理我(后来,我发现我错了,离职时经理告诉我那是在考验我,希望我能对原理图提出改进意见),就这样“平安无事”的渡过了一个星期,第二个星期,经理说要我开发一个小产品,我记得是利用单片机产生不同频率,不同占空比的方波,用按键来控制,同时在1602上将频率显示出来。接到这个项目后,我也比较紧张,因为毕竟是第一次真正做东西,但我心里还是有点底,知道该怎么做。就这样我先画了原理图(protel99),然后边看书边画PCB(人生第一次使用软件画PCB,也是最后一次),给经理看,经理说,不需要PCB,你就用万能板就行了。郁闷,两天工作白费了。
好吧,就开始在公司研发部那些废料堆里寻找万能板,寻找废弃的电阻啊,电容啊,然后动手焊接,小心翼翼的按照自己画的原理图终于焊接完了。然后程序也不是很会写,但凭记忆我知道单片机教材里面定时器那一章有关于这部分的例程,赶紧在晚上读教材,花了两个小时,搞明白了自己项目的程序该怎么写。 很兴奋啊,第二天把程序往单片机里面一烧,怎么也运行不起来,自己坚持电路板有没有虚焊,仔细查看程序,都找不出毛病,就问了经理,经理大概看了我的原理图,说你在电源那里加个滤波电容,我照做,还是没效果。不得已请教了其他同事,那家伙一看说你没有复位电路,天啦崩溃,复位电路一加,果然跑起来了,然后就是调试1602,前后花了十来天,终于是做出了效果。 结果大家可想而知,经理不满意,说太慢了。(后来,我才知道,我在做项目期间原来是有耳目监视的,我所问的问题,我的做事风格都被人监视,然后上报给经理)。就这样,半年后,我走了,公司也没留。
失意的离开了第一家公司,我又顺利的进入了第二家公司做单片机,那家公司很小,刚成立,还比较看重我,我一上来就做了一个项目,开发上位机软件(VB语言)与下位机单片机通讯,比较成功,但我觉得这里不是我喜欢的地方,因为我想向高手学习,而这里又没人,所以 半年后,我又离开了第二家公司。
很顺利的,我又通过笔试进入了现在这家公司,跟第一家公司一样,进来经理给我公司产品的程序给我看,任何交代都没有(做可视对讲的),程序总共有数千行。吸取了第一家公司的经验,我大概理解程序后,就花了两天时间,整理出了这个程序的流程图,足足整理了6页A4纸,交给经理后,他很满意。事后,他将这件事上报给了我们研发总监,并且有一次下班后,总监跑到我的座位上,说“听说你很聪明,很能干啊,不错”,这句话给了我鼓励,我从此干劲十足,并且从那以后,我一跃成为了研发总监的红人,每次研发中心讨论新产品时,都有我的参与。但是,当时我的兴趣还是在写代码上,陆陆续续的为公司设计产品程序,接触了很多单片机程序,也正是在这里,我真正的学到了单片机知识,红外,485,AD等等。 那时候我沉溺于单片机程序,仔细分析每一个功能模块的代码,一句一句的理解,但这也正是我的缺陷,使我没有从程序中拔出来向前看,就辜负了总监对我的期望(他期望我能带领团队研发产品),一次总监跟我的谈话中,说了句话点醒了我“你是想做程序员,还是想做工程师?”,回去后,我仔细分析了这句话,再结合这几年的工作感悟,跟各位单片机初学者或刚入行者分享我对这句话的感悟:
1、在学校的时候,最好把基础知识打扎实,因为学校是个比较纯净的环境,你可以专心学习,可以一句一句代码的研究,去细细品味,并且你品位的越细,也许越能获得老师或同学的好感。
2、上班以后,环境就不一样了,在企业,经济效益是排在第一位的,老板不管你用什么办法,只要能设计出符合要求的产品就行了,这个时候,如果还按照学校的思维,估计效率就很低了。
3、关于是做程序员还是工程师,我想大家都说想做工程师,那么工程师和程序员的最大不同就是工程师一定要在产品框架上做文章,比如同样是一个ADC模块,程序员关心的就是这个模块的实现方法,而工程师关心的就是这个模块的接口,并且怎样将这个模块嵌入到整个系统中。
4、做技术的人一定要有系统思维和领导能力,这样才能有好的发展。会沟通很重要,当你在工作中碰到难题了,如果这时候还想学习那样自己埋头钻研是很愚蠢的,应该与同事或外界沟通,寻求资源来帮助你。
现在我还在这家公司,目前正在带领团队在研发嵌入式产品,基于android平台,也已经出了成果,并得到了领导的认可。
自己目前也开了个单片机初学者的淘宝,希望对大家有帮助:
http://shop71676727.taobao.com/shop/view_shop.htm?tracelog=twddp
上大学期间,由于是在内地,所以信息比较闭塞,对于一些科技性的东西,也仅仅只是停留在书本上,包括现在看来很简单的单片机技术。我记得是上大三的时候,第一次接触单片机教材,那时候只知道跟着老师在课堂上看着那一页页的课本,听老师认真的念着教材里面关于单片机内部构造,关于汇编语言,然后下课了,课堂作业就是类似与如何写一段程序,把A地址的数据拷贝到B地址去。学校也没有关于单片机的实验室,自己也从来没有见过单片机长得什么样,更谈不上开发板之类的东西了,但在这个过程中,我发现我莫名其妙的爱上了单片机,喜欢动写程序(尽管只是纸上谈兵),每写完一段程序(那时只会汇编),就幻想着这段程序能实现很奇妙的功能,并且每次考试我的单片机都是很高分,就更加喜爱它了......时间就这样流逝,我就在这样的意淫中体验单片机的快乐。
转眼到了毕业,跟大部分人一样,对于找工作我也很迷茫,但是内心的声音告诉我,我要搞单片机程序,我要体验那一行行代码给我带来的乐趣。所以我就朝着方面去找,看到这里,你大概觉得我肯定找不到工作,因为我从来就没有动手做过实际东西,但是奇怪的是我找工作很顺利,因为我在第一关笔试成绩好。
就这样靠纸上谈兵,我进了一家企业做单片机,开始了第一份工作,刚进公司的一个礼拜,没人理我,经理只是给我安排了一个座位,然后把公司的产品原理图给我看,我的个天啦,原理图打印出来那么大,我也没看出什么,反正也没人理我(后来,我发现我错了,离职时经理告诉我那是在考验我,希望我能对原理图提出改进意见),就这样“平安无事”的渡过了一个星期,第二个星期,经理说要我开发一个小产品,我记得是利用单片机产生不同频率,不同占空比的方波,用按键来控制,同时在1602上将频率显示出来。接到这个项目后,我也比较紧张,因为毕竟是第一次真正做东西,但我心里还是有点底,知道该怎么做。就这样我先画了原理图(protel99),然后边看书边画PCB(人生第一次使用软件画PCB,也是最后一次),给经理看,经理说,不需要PCB,你就用万能板就行了。郁闷,两天工作白费了。
好吧,就开始在公司研发部那些废料堆里寻找万能板,寻找废弃的电阻啊,电容啊,然后动手焊接,小心翼翼的按照自己画的原理图终于焊接完了。然后程序也不是很会写,但凭记忆我知道单片机教材里面定时器那一章有关于这部分的例程,赶紧在晚上读教材,花了两个小时,搞明白了自己项目的程序该怎么写。 很兴奋啊,第二天把程序往单片机里面一烧,怎么也运行不起来,自己坚持电路板有没有虚焊,仔细查看程序,都找不出毛病,就问了经理,经理大概看了我的原理图,说你在电源那里加个滤波电容,我照做,还是没效果。不得已请教了其他同事,那家伙一看说你没有复位电路,天啦崩溃,复位电路一加,果然跑起来了,然后就是调试1602,前后花了十来天,终于是做出了效果。 结果大家可想而知,经理不满意,说太慢了。(后来,我才知道,我在做项目期间原来是有耳目监视的,我所问的问题,我的做事风格都被人监视,然后上报给经理)。就这样,半年后,我走了,公司也没留。
失意的离开了第一家公司,我又顺利的进入了第二家公司做单片机,那家公司很小,刚成立,还比较看重我,我一上来就做了一个项目,开发上位机软件(VB语言)与下位机单片机通讯,比较成功,但我觉得这里不是我喜欢的地方,因为我想向高手学习,而这里又没人,所以 半年后,我又离开了第二家公司。
很顺利的,我又通过笔试进入了现在这家公司,跟第一家公司一样,进来经理给我公司产品的程序给我看,任何交代都没有(做可视对讲的),程序总共有数千行。吸取了第一家公司的经验,我大概理解程序后,就花了两天时间,整理出了这个程序的流程图,足足整理了6页A4纸,交给经理后,他很满意。事后,他将这件事上报给了我们研发总监,并且有一次下班后,总监跑到我的座位上,说“听说你很聪明,很能干啊,不错”,这句话给了我鼓励,我从此干劲十足,并且从那以后,我一跃成为了研发总监的红人,每次研发中心讨论新产品时,都有我的参与。但是,当时我的兴趣还是在写代码上,陆陆续续的为公司设计产品程序,接触了很多单片机程序,也正是在这里,我真正的学到了单片机知识,红外,485,AD等等。 那时候我沉溺于单片机程序,仔细分析每一个功能模块的代码,一句一句的理解,但这也正是我的缺陷,使我没有从程序中拔出来向前看,就辜负了总监对我的期望(他期望我能带领团队研发产品),一次总监跟我的谈话中,说了句话点醒了我“你是想做程序员,还是想做工程师?”,回去后,我仔细分析了这句话,再结合这几年的工作感悟,跟各位单片机初学者或刚入行者分享我对这句话的感悟:
1、在学校的时候,最好把基础知识打扎实,因为学校是个比较纯净的环境,你可以专心学习,可以一句一句代码的研究,去细细品味,并且你品位的越细,也许越能获得老师或同学的好感。
2、上班以后,环境就不一样了,在企业,经济效益是排在第一位的,老板不管你用什么办法,只要能设计出符合要求的产品就行了,这个时候,如果还按照学校的思维,估计效率就很低了。
3、关于是做程序员还是工程师,我想大家都说想做工程师,那么工程师和程序员的最大不同就是工程师一定要在产品框架上做文章,比如同样是一个ADC模块,程序员关心的就是这个模块的实现方法,而工程师关心的就是这个模块的接口,并且怎样将这个模块嵌入到整个系统中。
4、做技术的人一定要有系统思维和领导能力,这样才能有好的发展。会沟通很重要,当你在工作中碰到难题了,如果这时候还想学习那样自己埋头钻研是很愚蠢的,应该与同事或外界沟通,寻求资源来帮助你。
现在我还在这家公司,目前正在带领团队在研发嵌入式产品,基于android平台,也已经出了成果,并得到了领导的认可。
自己目前也开了个单片机初学者的淘宝,希望对大家有帮助:
http://shop71676727.taobao.com/shop/view_shop.htm?tracelog=twddp
有空去看看
从作者这学到了一些东西
经验总结的不错,有点帮助
工作当中是应该不断的对自己进行总结