【软件工程师学硬件】之 单片机

很多软件工程师从来没听说过单片机,你要是问他风扇为什么自己摇头转、洗衣机为什么能够自动搓洗、冰箱为什么能够自己控制温度?他会说因为里面有芯片!
是的,他说的也对。因为里面有芯片。但是要纠正的是,单片机是芯片,芯片不一定是单片机。顾名思义,单片机就是一个小芯片,这个小芯片和电脑cpu一样,和外围一起,完成一系列的功能。
说起单片机,老硬件会如数家珍一样,娓娓道来,什么at89c51、atmega128、pic16f887、stm32f407等等等等。
现在市场上单片机也是多如牛毛,平时玩玩无所谓,真正做产品就需要斟酌斟酌,这就涉及到单片机的选型了,选择什么型号的单片机最合适。比如说,我就做个遥控器,你给我弄个arm芯片来做,这就有点牛刀杀鸡了;如果我要做个机器人,你给我弄个89c51的芯片来做,都是不太合适的。
但是,不管怎么样,我们都需要尽可能了解这些芯片,最后可以选择一、二款单片机深入一下,这就和学习软件开发语言一样,软件语言也很多啊,什么c++、c#、vb、java、php、python、r、go、scala、perl等等等等,你说这要是都学的话,不出人命才怪。好在我们并不需要学习那么多的语言,一般会一至三门语言足矣了。
学习单片机的语言也是如此,虽然单片机的种类很多,但是指令大同小异,一般学会一、二种之后就会触类旁通。这时老硬件又会说了,那可不一样,我们学习一款都花了5、6年,你说的倒轻松。实际上任何知识学到精都需要花时间,这个没有错,但是好在互联网时代获取知识很方便,这也大大缩短了我们的学习周期,只是很多地方需要我们多动手,因为你不动手,那个知识还是不能完全转化成你自己的知识。这一点很重要。
衷心祝愿大家都成为硬件高手。

猜你喜欢

转载自blog.csdn.net/wwwmagic/article/details/91413147