【分享】资深单片机技术牛人:谁才是真正的工程师?

2020-02-21 21:18发布

本帖最后由 FSL_TICS_ZJJ 于 2014-9-11 15:21 编辑

导读] 吴鉴鹰在论坛连载的吴鉴鹰单片机项目详细解析系列(连载)之基于单片机的实战项目 引起很大的反响,我相信很多人对这位达人十分感兴趣,本期社区达人,咱就来了解了解吴鉴鹰对学习、对工作的态度。
关键词:MCU单片机电子工程师

  吴鉴鹰在论坛连载的吴鉴鹰单片机项目《详细解析系列(连载)之基于单片机的实战项目》引起很大的反响,我相信很多人对这位达人十分感兴趣,本期社区达人,咱就来了解了解吴鉴鹰对学习、对工作的态度。

  下面开始电子发烧友论坛对吴鉴鹰的采访:

  1.电子发烧友:在论坛上你发表的单片机项目实战详解的连载贴引起很大的关注,大家都比较想了解您个人学习的历程与感想,与大家分享一下吧

  吴鉴鹰:在本科期间,就积极参与校园的各项活动,那时我对电子的感情用“痴迷”两个字来形容绝不为过,参加学校组织的各项比赛,在本科生期间,获得全省的电子设计大赛一等奖,飞思卡尔比赛二等奖。利于业余时间申请并获得专利10余项。

  那时候我们学校有一个电子协会,电子科技协会周末还常组织我们给学校里的同学做电器“义务维修”,当时我还以为义务维修是全免费的,后来才知道还是要赢利的……当时真的很不解,为什么学生还要赚学生的钱?虽然维修的费用比外面维修店要便宜很多,但心里还是着实不舒服了很长时间……那是这个社团第一次给我很不好的感觉……义务维修的过程中我学到了很多东西,维修一样以前没有接触过的东西,就迫使着自己要去最短时间内去学习相关的知识,而且还能从实际产品中学到很多成熟的产品设计技巧,更了解到导致一个产品结束使命的往往是设计上的很小的缺陷。另外,帮同学修东西的过程中能感受到很丰富的情感,也许一个很简单很破旧的随身听身后藏着一段什么样的美好回忆。也许将来我的设计也能带给使用他的人这样或那样的美好回忆……

资深单片机技术牛人:谁才是真正的工程师?

  这些东西在后来的研究生学习和今后的工作中还是有一定的帮助的。

  2.电子发烧友:您对那些想学好单片机技术童鞋,有什么建议?

  吴鉴鹰:我凭借自己多年的项目经验,给几点自己的建议:

  首先,单片机应的学习该有一定的基础:电子技术方面要有数字电路和模拟电路等方面的理论基础,特别是模拟电路;编程语言要求汇编语言或C语言,有很多工程师不建议学习汇编语言,我个人觉得学习汇编语言是很有必要的,学习汇编能让你更好的理解单片机内部的硬件。

  当汇编语言学的差不多的时候,然后再转入C语言学习。尽管汇编语言属于低级语言,编程效率低,但是较C语言具有目标代码简短,占用内存少,执行速度快等优点,更重要的是能使初学者尽快熟悉单片机的内部结构,并能对其进行精确的控制。汇编语言在单片机教材里面都会涉及,不需要单独购买教材和学习。

  C语言是一门学问,有很多专业书籍来讲解,并且对我们今后的编程生涯有绝对的好处,因此要深入学习,千万不要自以为看了某某的视频教程就以为掌握了C语言,那只是C语言的一部分。在这里给大家推荐一本单片机 C语言程序设计参考书,马忠梅等著,北京航空航天大学出版社出版的《单片机的C语言应用程序设计》,要求C语言基础。如果没学过C语言,建议学习清华大学谭浩强编写的C语言程序设计,这本书写的不错,通俗易懂。

  其次,是单片机教材选择。单片机是一门非常重视实践的技术,不能总是看书,但要学习它首先应看书,对单片机引脚、内部结构、寄存器和原理有一定地了解和感官认识,它的是怎样工作的,能干些什么?刚开始时,也许你看不明白,但这并不要紧,因为你还缺乏实践经验。现在单片机应用广泛,因此各个厂家分别推出了自己的单片机,按内部结构体系派系分:51系列、PIC系列、AVR系列、摩托罗拉等等……我们没必要每样都学!因为他们的编程方法和调试过程以及内部指令结构有一定的相似,只要学精通一款就OK了!尤其是用C语言编程,就几乎不用分什么派系,但是我们要选择一款有代表性的知识范围广,并且入门容易,书籍多。一般来说,MCS-51系列单片机已经得到广泛的普及和应用,市场上它的资料也比较多,用的人也很多。

  3.电子发烧友:目前谈论比较多的是16位、32位MCU取代8位单片机,你觉得8位单片机是否会被取代吗?谈谈你的看法

  吴鉴鹰:根据摩尔定律:在的微处理器存储不穷,好像每年都会有很多新的产品推出,每18个月,处理器的速度提升一倍,价格减半。就像奔腾淘汰586一样。单片机的存在有他的原因,这需要从芯片的成本说起。像原来STM32很贵,现在成本也很低,就几块钱一片。

  决定芯片成本的因素一般有如下几个方面:

  1.芯片的流片量,流片量越大成本越低,所以有些高性能、高容量的16位单片机比8位的单片机还便宜。

  2.芯片的面积,芯片的面积越小,那么在一块晶圆上切下来的块数越多,成本越低。向ARM这样的芯片性能很好,但芯片面积相对也大,所以成本不容易降低。如果哪一天工艺提高了,那么ARM的成本很可能会大幅下降近而取代类似51的单片机。但目前来说大幅提升工艺的技术还没有。而且目前单片机在很多应用中是够用的,而且也有很多16位、32位的高性能单片机。究竟使用单片机还是ARM取决于产品的需求和成本的考虑。

  所以我的结论是短期内8位单片机是不会被淘汰的,因为毕竟工艺的提升不是一朝一夕能做到的,我的看法是8位单片机最终会被高端的处理器所替代。

  4.电子发烧友:有网友提出学习单片机C语言很难,这个要怎么去学习,应该养成哪些良好的编程作习惯?

  吴鉴鹰:C语言其实是学好单片机的一个重要的大梁,谈到编程习惯,我觉得这是一个很复杂的问题,需要注意的东西很多,由于篇幅所限,我就简单说几点吧!在以后的帖子中我会专门写一讲来讲述这个问题,欢迎大家到时关注!

  ①全局变量用具有描述意义的名字,局部变量用短名字。函数采用动作性的名字。保持一致性。

  ②缩进形式显示程序结构,使用一致的缩行和加括号风格。使用空行显示模块

  ③充分而合理地使用程序注释 给函数和全局数据加注释。不要注释不好的代码,应该重写。不要与代码矛盾。

  ④友好的程序界面,程序界面的方便性及有效性

  ⑤不要滥用语言技巧 使用表达式的自然形式。利用括号排除歧义。分解复杂的表达式。当心副作用,像++ 这一类运算符具有副作用。

  ⑥程序的健壮性:容错

  ⑦模块化编程


5.电子发烧友:当您对自己的设计方案很满意但客户跟你挑刺的时候,您是怎样去解决的? 吴鉴鹰: 其实我们作为一个工程师,这样的问题肯定是经常碰

  5.电子发烧友:当您对自己的设计方案很满意但客户跟你挑刺的时候,您是怎样去解决的?

  吴鉴鹰:其实我们作为一个工程师,这样的问题肯定是经常碰到,这也是每个工程师比较头疼的问题!我也经常碰到这样的问题,所以我就跟大家简单地分享一下我的经历吧!作为一个项目开发工程师,我们应该站在跟客户平等的地位上去交流,不能自我以低人一等的心态去和客户沟通,有时候过分的降低自己的身段,未必会赢得别人的尊重。

  比如:前不久,我出去跟一个客户谈论怎么做他们的需求的产品。我们这边有一个项目是矿山电机控制系统的设计,当时是我去跟矿上的分管科技的副矿长谈的,人家是国企的高管,说话态度还是很强硬的,很多东西似乎根本就没有商量的余地,我首先肯定他的方案,然后在慢慢的跟他将我的方案,刚开始他是很排斥我的方案的,但是后来被我的技术方案的优势和诚恳当动了!

  6.电子发烧友:工作和生活是不可分割的两部分,您是如何去平衡的呢?

  吴鉴鹰:作为一个电子工程师,工作是很忙的,加班加点是很正常的事情,有的时候周末还在加班干项目。所以处理好工作和生活对一个工程师来讲是一个很重要的事情,但是工程师每天都是很忙碌,而且随着职位的提高,能力越大,越往上走,就会越忙碌。因此,就要把工作和生活融为一体,并学会从中寻找快乐。这是我对工作和生活的平衡法则,另外要利用有限的假期去做陪陪家人,去处理生活中的一些问题,比如跟一些很久没见面的朋友聊聊天,聚聚餐之类的。

  7.电子发烧友:对很多人有一个问题是:工作久了,感觉没激情了,你是否也遇到过这种情况,你是怎么处理的呢?

  吴鉴鹰:我的个人看法就是应该有“一切尽在掌握之中”的这种自信,这种感觉本身就能很好地缓解压力。有选择地而不是被动地接受所面临的各种事情,或许使人感到轻松很多。最好的办法就是根据事情的轻重缓急列出清单,既能有一个整体规划,又能帮助将看似无绪的一堆问题分解成若干具体的小事,一件件应付起来就容易多了。完成一件,就在清单上划去一件,这样做带来的成就感足以鼓舞你将这一做法继续下去。这样也可以保持自己做事情的热情。

  然后有了困惑时应该及早倾诉,因为困惑越多可能你对工作也就越排斥,所以当我在在感到困惑、棘手或难过的时候,总会毫不掩饰地寻求朋友的帮助。当事情变得非常困难或身陷焦虑的时候,向朋友吐露诉说,仅仅是倾诉本身,也能使人获得释放,或许还会得到好的建议。

  还有应该尽量保持乐观,我深信,事情总能朝着所期望的方向发展。所以,总是以最乐观的心情想象最好的结果。需要做的所有事都已经在进展当中,即使遇到麻烦,也一定会以最快的速度重新调整状态。

  还有做事情应该雷厉风行,这样就能将懒惰情绪排除掉,能在今天办完的事不会拖到明天,能在当时办完的事不要拖到数个小时之后。因为很多事情搁着未做,本身就能造成巨大的心理压力。

  这是我保持工作热情的一点小小的心得,所以分享给大家。

  8.电子发烧友:您认为在从业的路上最重要的是什么?您对职场菜鸟有什么话说?

  吴鉴鹰:实际上,我觉得技术这种东西的规律是大同小异的,虽然是电子工程师的成长的道路,但是,但是其它领域的技术人员,我想也是一样的。

  因为我也是比较痛苦地用了较长的时间才完成了从初学者到一个项目工程师的转变,现在到一个公司的项目研发主管,所以啊,我觉得一个工程师从一个菜鸟变成一个高手是需要坚持的。作为一个初出校门的大学生,如果有高手带的话,实际上只需要大概6个月到1年的时间就能实现这个转变。所以我觉得一个初学者最好是能找到一个有一定经验的人带着你走,这样上手会更快!

  只要你够勤奋、善于沟通、人品好。前面两项大家都可以理解;人品好就是大家看着这个人顺眼,愿意帮他,觉得他是可以交朋友的,所以什么都愿意跟他讲,相处是不厌倦的。这样的人能合群,大家也愿意跟他分享自己的经验。

  要是一个人是狗脾气、自私,谁爱理你?要知道,自私的人,也愿意跟人品好的人在一起。所以作为一个工程师脾气一定要好,要善于与人沟通,与人交流的。

  一个电子工程师,或者说,一个电子系统设计工程师,需要有机会,这种机会是靠自己去争取, “哭着喊着要进步”,有这种精神,还需要明师带着,就可以。

  这是我自己的一些建议,当然也有很多是借鉴别人的东西。

  希望以上我的一点小小的建议能给大家带来一点点帮助!

  采访完吴鉴鹰,小编获益良多。如果你想与吴鉴鹰进行更多交流,欢迎回帖或者到吴鉴鹰的连载帖回帖,吴鉴鹰会及时和大家保持互动。

——电子发烧友论坛原创,转载请注明出处!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
58条回答
浪里白条
1楼-- · 2020-02-27 13:19
 精彩回答 2  元偷偷看……
浪里白条
2楼-- · 2020-02-27 16:41
Flyback 发表于 2014-8-30 09:15
来泼个冷水,嵌入式是系统工程,不仅仅只关乎软硬件

推荐入门书籍 《嵌入式系统开发之道》,个人认为很适 ...

看了下目录,貌似这本书更偏向于项目管理呢。
fengyunyu
3楼-- · 2020-02-27 21:20
“资深单片机技术牛人”,这个说法就不靠谱。资深嵌入软件工程师还靠谱些。
yzb1019
4楼-- · 2020-02-28 02:43
浪里白条 发表于 2014-8-30 09:20
如果全部都很精的话,那还是蛮厉害的哦。

现在还是巨牛逼的了,毕竟年轻
浪里白条
5楼-- · 2020-02-28 04:20
bruce_helen 发表于 2014-8-29 11:20
不是太赞同,学习汇编,因人而异,有人思维能力强,学习汇编花不了多少时间。能力差点的直接学习C语言,这 ...

汇编难度是要大一点,不过算是基础课程,学好了对计算机系统的理解会不一样的。
浪里白条
6楼-- · 2020-02-28 08:29
 精彩回答 2  元偷偷看……

一周热门 更多>