对于电子爱好初学者来说,现在可供学习的电子技术太多了。没办法,电子技术的发展和其它行业一样,专业方向越来越多,也越来越精细。
以往像51这样的8位单片机打天下的时代早过去了,今天你耳朵里充斥的单片机已经是以32位的为主了。
而程序开发上,也从针对性的专用程序扩展到了基于操作系统上的二次开发。为了方便爱好者学习,处理器的型号和开发板也大量出现,还提供丰富的例程……对于初学者而言,是不是有点眼花缭乱的感觉
那么,对于新手来说,到底是从单片机开始学起,还是应该从树莓派开始学起呢?
这个不太好说,因为这个“新手”没说指的是哪种新手。如果是没有一点程序开发基础的,那毫无疑问,还是从单片机学起吧。但如果是有丰富的Linux程序开发经验的,想学习硬件开发的话,那可能直接学习树莓派更好一些。
为什么这样说(我的一家之言哈)?下面,让我们花点功夫掰扯掰扯。
01 

单片机 vs 树莓派
单片机,
通常指的是诸如51单片机、PIC单片机之类的单片机,爱好者们可以直接从市场上买回来一片双列直插(DIP封装)的单片机,直接在面包板上就能搭建起来硬件的测试环境。


即便是现成的开发板也不是很贵,也很容易买得到。一般裸片的单片机,只要有通用编程器,就可以实现擦写、编程。有开发板的,开发板可以直接在线编程、测试。
▲单片机
▲单片机开发板
▲编程器
那么,树莓派又是什么东西呢?
简单来说,树莓派是一种卡片式电脑。如下图所示,看清楚没?是一种电脑,有操作系统的!
树莓派是一种微型电脑主板,有的配有USB接口和以太网接口,可连接键盘、鼠标和网线、视频输出接口,具备计算机的基本功能。当然,还能执行如电子表格、文字处理、玩游戏、播放高清视频等诸多功能应用。
▲树莓派开发板
看清楚了吧,二者区别是不是很大?
02 

到底哪个更难学?
单片机及面向单片机的开发板,通常是有针对性的用于控制类的开发,你只要会汇编或者C,照着例程学习就行。当然,如果熟悉单片机的构成原理那是最好了,反正单片机内部也没有多少寄存器,也不是很复杂,稍微花点功夫就能搞懂。
可树莓派就不一样了,这个通常是已经注入了操作系统的,一般是Linux。要想在树莓派上进行开发,那可是二次开发哟(我感觉大多数的树莓派爱好者应该都不是搞底层系统开发的吧)。没有Linux开发基础,想当然地以为像开发单片机程序那样开发树莓派,这肯定是不行的。
我认为,学习树莓派更像是学习Linux程序开发。如果想以树莓派控制其它有接口协议的硬件设备(比如蓝牙模块),恐怕Linux底层驱动发开也跑不了。
▲资料图
谈及软件开发,对于搞了20多年软件开发的我,头疼得很,感觉就是一句话:永远学不完,一直都在学习中!而单片机开发就简单了,学好汇编(这个已经不常用了)和C就能一直玩下去。
可以说,学习单片机,硬件开发就是一个小坑,而软件开发就是一个深渊(我这么说可别吓着你)。树莓派虽然比较难,但架不住学啊,谁也不是天生就会的,对吧?
所以归纳起来,单片机开发,底层控制多一些;树莓派开发,应用层面多一些。然而,不管是单片机,还是树莓派,要看自己的需要,用到哪个就学哪个!
不会?没关系啊,撸胳膊、挽袖子、闷头,边学边干
最后,对于“新手玩硬件,到底买单片机,还是树莓派”这个话题,大家还有什么不同看法吗?欢迎留言探讨!
作者:suncat0504
来源:21ic论坛
-END-

往期推荐:点击图片即可跳转阅读
继续阅读
阅读原文