单片机牛人的成长回忆录:记下这些知识 总有一天你会用到
首先,自我介绍一下:电子工程师一枚,1988年生,11年毕业,在京工作五年,月薪20K。主要是因为自己比较懒,不愿意做比较累的工作,不然待遇还会更高,不过那样的话生活就没意思了,我喜欢慢慢的享受生活。我16年入驻快包平台,成为快包的优质服务商。到目前为止接过3个包,金额不大不小,个人独立完成,在赚点外快的同时找点自我满足感!
之所以把自己的经历写出来,一是无聊,最近在快包的项目刚刚做完;二是经常逛贴吧,在年轻人身上经常看到自己当年的影子,所以不希望他们走弯路。那么现在,就让时间回到2011年的夏天。
当时刚从大学毕业,专业是微电子学。严格地说,我的专业是制作芯片,而我现在的工作是应用芯片,已经走偏了。不过没办法,这个专业是学校新开的,各个老师都是学校东拼西凑过来的,那种感觉就像用韭菜和茄子做出来的大拌菜一样,吃起来怪怪的。我到快毕业都没想好该怎么找工作,刚好这个时候宿舍的一个哥们刚刚 参加了一个培训班回来。他觉得很好,于是跟我说:去MCU起航吧,那里还不错!
我就想无头苍蝇忽然遇到一扇窗户一样,毕业了家也没回,直接背上行李去培训部了。地点在燕郊的创业大厦,食宿条件很艰苦。住宿的地方是租的一个两居室,里面放满了上下铺,还有其他来参加培训的同学,他们来自各个地方。在之后的几个月里,我和他们结下了深厚的友情。
20个人,分成了四组,每组负责不同的项目。我在第一组,要做一个波形发生器出来;刚刚分到任务我有点晕,因为单片机我都还没摸过,就要做东西,这是不是有点不合适?虽然在大学里学过课程,但完全是理论课,东西都没见过,更别说做东西了。于是开始疯狂的找各种学习资料,刚开始各种看不懂,但是还是咬咬牙,开始搞了。
第一步,项目需求分析,为期一周。 带我的老工程师要求我们第一步先去做需求分析,知道自己负责的项目在市场上有没有空间,该如何定位,技术指标如何确定,原理框图如何绘制。
于是,我们开始了疯狂的.......上网,是的上网查资料。凡是和波形发生器相关的内容,都下载下来,然后共享。相关的厂家、型号、技术指标、设计方 案、参照代码、市场分析等等等等,就记得那段时间是很疯狂的一段日子。我们像公司员工一样签到、签退,却要比他们更辛苦,因为我们晚上11点才离开实验 室,是每天!大脑像运行到极致的CPU一样,用力的查看着每一条可能有用的信息,每一次呼吸都感觉自己很累,不确定今天能得到什么结果,也不知道明天会怎 么样。于是,我不停的喝水,让自己有更多的上厕所的时间,这样可以多休息一会儿。
每周休息一天,日子很累,但却充实。我已经明显感觉到和波形发生器相关的各种关键词都充斥在我脑子里了,DDS、频率范围、单极性波形、双极性波形、调节 精度、输出波形峰值等等。但这些还不够,因为我们得到的这些信息都是搜集来的,并不确定可行性。一切的一切,需要下周一老张审核我们的方案。而我们的心 态,也从最开始的畏惧,逐渐被越来越多的疑问代替,然后抑制不住的想知道答案。
第二步,开始动手?NO!带我的老工程师说去逛市场吧! What?我们愣了.....好吧,最后才知道,原来是去中发电子市场采购。可以这么说,在北京搞电子 的,没有人不知道中发电子市场,你能想到的一切器件,在这都能找到。于是,一群菜鸟,选了一个阳光明媚的日子,兴冲冲的来到了中发电子市场,任人宰割.......
第三步,用汇编语言熟悉单片机的基本功能。 是的,你没看错,是汇编语言!就是说,之后的项目也要用汇编去完成。当时没有想明白,但是当我一个月后熟练的掌握51的底层结构的时候,我已经有点懂了。先从ORG开始,然后是MAIN...再然后MOVE来MOVE去,别人怎么写,我就抄过来,背下来,然后反复写几遍,竟然就懂了。
从对单片机的一无所知,到跌跌撞撞不小心滚进单片机的大门,就这么发生了。那几天是异常兴奋的,我感觉我就是万能的神,我可以控制一切芯片。每段代码,我写了好多遍,然后又下载了好多遍,每一次成功、失败的过程都激励着我前进。
记得有一天在调试数码管,代码改了一下,重新烧录,结果整个电路忽然就不工作了。我愣了,不至于啊,改动不是很大,就算有问题,也不至于整个电路没反应。 于是我花了一个下午查看代码、检查电路都没找到问题。到了晚上,我想再下载一次试试吧,代码没动,烧录进去,结果忽然就好了。
我瞬间愣了一下,放佛想到了什么,马上打开AT89S52的器件手册(之前有粗略看过),第一页的一个参数解决了我的所有疑惑:该芯片的flash区擦写次数为10000次。换句话说,因为多次擦写程序,导致这块单片机的程序存储区寿终正寝,已经快被我玩死了!
这是我第一次感觉,虽然你找过很多资料,学习过很多知识,刚开始或许不觉得有什么用,但他一定会在你未来发展的路上起到一定的价值!!!
当时的我们,没有开发板,只有一块面包板。所有要用的东西,都是自己焊接的。可能耽误了很多时间,但是对后来工作中电路的检查能力,起到了很好的锻炼。这里还是要说一句:初学者少碰protues仿真,什么时候用?当你已经 完全学会单片机,在项目中要验证代码和原理可行性的时候再去仿真。想通过protues仿真来学习单片机,这真的是笑话了!
第四步,真的要动手开始做了。玩真的! 具体指标记不清了,大概是:4×4矩阵键盘控制,数码管显示,频率10HZ~1000HZ按键可控,三角波、正弦 波、方波可选。难点主要在频率可通过按键控制上,就是说从10到1000,我随便输入一个数字,输出端都要给出相应的频率。频率是通过定时器定时中断控制 的,这就要求有一个算法,能根据输入值,计算出每次频率更新时,需要赋给的定时器初值。这涉及到16位的除法运算,汇编里面的除法器貌似只有8位,不够 用。没办法,我们到处找16位除法的算法,最后用减法循环模拟了一个,效果还不错。
后面的事情,很顺利了。大家的项目陆陆续续都出来,然后坐在一起进行经验交流。还有件事比较重要,就是学习C语言。虽然汇编效率高,但毕竟移植性太差,已经慢慢没落了,而C语言的生命力还很强,很多地方都能用到。
学完C语言,开始接触AVR和430单片机。在51里面摸爬滚打了一个月,可以说,我们是把51揉碎了,一点一点学完的,跟那种自学,仿真,或者看视频的效果完全不一样。当我拿到430的开发板的时候,我只用了3天时间去熟悉它。前面一天熟悉开发环境和开发软件,后面两天看相关例程。因为我们学习过、动手过、实战过、焊接过、调试过,当我们再去看这些高级单片机的时候,真的是一种轻而易举、水到渠成的感觉。
总结:单片机入门可能比成长还要困难,刚开始的时候你可能摸不着头脑,就算看了很多学习资料也不会立即出结果,但是前期这些学习资料、基础经验的积累会在你成长的过程中逐渐显现出来,在日后的开发设计中发挥重要作用。所以,无论何时,都不要放弃学习的机会!
单片机学习资料强烈推荐,笔者精选了“单片机原理及应用”、“单片机c语言编程实例大全”、“十天学会单片机实例100”、“周立功写给学单片机年轻人的话”等学习资料,希望帮助更多的工程师学习成长!!
由于篇幅限制,资料内容就不在此一一列举啦!感兴趣的人可以在评论区直接回复“单片机学习资料+你的邮箱”获取资料~
国产单片机的奇葩-STC
单片机是单片微型计算机的简称,在嵌入式系统应用、智能产品中大量应用。上大学期乃至工作后的很长时间,笔者几乎从来没有听说过STC单片机。从前上学时用的单片机用的几乎都是ATMEL、INTEL、飞利浦、飞思卡尔系列的单片机,当时学习单片机感觉最大的问题时芯片好贵,下载程序很复杂,需要专门的下载器、编程器、紫外线擦除装置。但这一切在STC单片机横空出世之后,一切都悄然发生了改变,单片机的价位也一夜之间变成了寻常白菜价,这无疑是学生党和初学者的福音!
某宝给出的STC单片机价位
这究竟是一个什么样的企业呢?如果第一次登陆STC的官网,你肯定觉得这像一个山寨网站。
STC官网
笔者第一次登陆这个网站,真是震惊了,这TM是个科技公司吗?上面是疑似弹窗的小广告,下边还有一个太上老君的炼丹炉,界面花花绿绿,五彩斑斓。这真的是个高科技公司吗?怕不是有病毒的小网站吧?很有当年某宝刚出道的样子!但我可以负责任的告诉你,这绝对是如假包换的官网!
其实用久了,还觉得这个网站挺方便,我们编程要找的资料计划在这个网站一下子就能找到。
在STC单片机的官方资料DATASHEET上,有一个姚永平的联系人,开始的时候还以为是业务员,后来才知道是他一手打造了STC公司。网上关于STC和这位神秘老板的资料少之又少,按说这么个牛人,百度百科里居然没有任何资料。我能查到资料说姚永平是STC南通国芯微电子/宏晶科技创始人,他创造了中国IC设计公司的奇迹,他的8051单片机已经占领了全球市场的80%以上。
应该说这一是个了不起的奇迹,以STC的价位,在中低端市场计划打败所有国内外对手。
有人质疑STC单片机的质量,不过我从两年前的一则新闻中打消了顾虑,一架俄罗斯的军用无人机居然也用的是咱们STC的产品,这可以是军品应用啊,足以说明水平了吧。
俄罗斯无人机
被击落的海鹰10无人机部件
海鹰10无人机部件
用在海鹰10的STC单片机
海鹰10上的STC单片机特写
参考:http://www.sohu.com/picture/234344783
希望STC越做越好,也希望国产单片机的道路越走越宽!
相关问答
学习嵌入式开发的过程难吗?2.勤于实践有了上面的基础之后,我们可以开始边实践边学习了:2.1初级篇首先从单片机开始比如51单片机或AVR单片机、或STM32单片机开始,我个人对STM32单片...
学自动化的学长学姐能给点考研选方向的经验建议吗? 申请方读研选择学校时还是要把学校的名气放第一位,但是这个学校的该专业也不要太差,起码要有博士点。例如,北大的自动化就不要报,实在太差了。机器人方面,...
计算机专业学生本科期间参加哪些比赛竞赛对以后的保研、就业...不知道题主的意思是否是想从事计算机相关的工作,而且本科期间的话,其实保研和就业是两个方向,而且就就业来说其实也有很多方向,我就简单地介绍一下...
为什么做电子工程师助理那么难做?1.懂一种语言,会使用一种芯片,能写程序,借助工具能分析问题解决问题,算做电子工程师入门了吧。2.不论是什么芯片,什么语言,是51单片机的顺序结构,还是带...1...
零基础,大专学历学习it还靠谱不?公司会要大专学历的人员吗?(3)网...IT行业培训班目前太多,如何分辨靠谱的培训班呢?(1)通过在线咨询窗口,索要课程介绍(2)课程介绍中看每个课程模块是否逻辑性强(简单点说就是,是否是由浅...
学IT,有哪些专业推荐?IT行业仍然是目前为止比较火,就业比较稳定的专业,就业率相当高,最好的是工资水平也是行业内比较靠前的,所以说,选择IT仍然是一个不错的选择!目前最好的应...简...
怎样做一个合格的嵌入式工程师?接着就分嵌入式硬件和嵌入式软件工程师。嵌入式软件工程师,必须得需要一定的C语言基础。但通用的C语言和单片机c的运用有一定的差异,还需要学习单片机,以及开...
如果看待越来越多的大学在高考录取中实施大类招生?※高校专业那些事※为您分析、分享、解惑2019年高考已经进入了最关键时候,那就是报考志愿,是学计算机,还是学材料,还是学师范,医学,你选择了什么专业,大...未来...
电信网络工程师都做什么?..._网络编辑_帮考网对于通信工程行业的就来我们从以下几个方向来讲吧:一、通信工程?1.什么是通信工程?就从通信来说,简单理解,就是信息的传递。本质就是人们采用政...
十二年的寒窗苦就是为了考上大学吗?是为了考上大学,也是为了去认识更多的人,见识更多有趣的事物,实现自己的价值。1高中有个校友考上了北大医学院硕博连读,这是我们小县城第一个北大学生,全...