本帖最后由 suncat0504 于 2022-2-18 08:45 编辑
#有奖活动# #申请原创# @21小跑堂
作为电子爱好初学者而言,现在可供学习的电子技术太多。没办法,电子技术的发展,和其它行业一样,专业方向越来越多,越来越精细。以往像51单片机这样的8位单片机打天下的时代,早过去了,今天你耳朵里充斥的单片机,已经是以32位的为主了。程序开发上,也从针对性的专用程序,扩展到基于操作系统上的二次开发。为了方便爱好者学习,处理器的型号和开发板也大量出现,还提供丰富的例程。对初学者而言,是不是有眼花缭乱的感觉? 那么,对于一个新手而言,是从单片机开始学习起,还是树莓派学习起呢?这个我不好说。因为这个“新手”没说指的是哪种新手。如果是没有一点程序开发基础的,那毫无疑问,还是从单片机学起吧。如果是有丰富的linux程序开发经验的,想学习硬件开发的,那可能直接学习树莓派更好一些。为啥这么说呢(我的一家之言哈)?让我们花点功夫掰扯掰扯哈。单片机,通常指的是诸如51单片机,PIC单片机之类的单片机,爱好者们可以直接从市场上买回来一片双列直插(DIP封装)的单片机,直接在面包板上就能搭建起来硬件的测试环境。即便是现成的开发板也不是很贵,也很容易买得到。一般裸片的单片机,只要有通用编程器,就可实现擦写、编程。有开发板的,开发板可以直接在线编程、测试。
图1:单片机
图2:单片机开发板
图3:编程器 那么树莓派是什么东西呢?它是一种卡片式电脑。看清楚没?是一种电脑,有操作系统的!是一种微型电脑主板,有的树莓派配有USB接口和以太网接口,可连接键盘、鼠标和网线、视频输出接口,具备计算机的基本功能。能执行如电子表格、文字处理、玩游戏、播放高清视频等诸多功能应用。
图4:树莓派开发板 看清楚了吧,区别是不是很大?单片机及面向单片机的开发板,通常是有针对性的用于控制类的开发,你只要会汇编或者C,照着例程学习就行。当然如果熟悉单片机的构成原理那是最好了,反正单片机内部也没有多少寄存器,也不是很复杂,稍微花点功夫就能搞懂。可树莓派就不一样了,这个通常是已经注入了操作系统的,一般是linux。要想在树莓派上进行开发,那可是二次开发哟(我感觉,大多数的树莓派爱好者,应该不是搞底层系统开发的吧)。没有linux开发基础,想当然地以为像开发单片机程序那样开发树莓派,肯定是不行地。我的感觉,学习树莓派,更像是学习linux程序开发。如果想以树莓派控制其他有接口协议的硬件设备(比如蓝牙模块),恐怕linux底层驱动发开也跑不了。谈及软件开发,对于搞了20几年软件开发的我,头疼的很,感觉就是一句话:永远学不完,一直都在学习中!单片机开发就简单了,学好汇编(这个已经不常用了)和C就能一直玩下去。可以说,学习单片机硬件开发就是一个小坑,而软件开发就是一个深渊。这么说,可别吓着您。树莓派虽然比较难,但架不住学啊,谁也不是天生就会,对吧?再者说了,人的一生中,有比活着这件事儿更难的么?这么难的事儿,我们都办到了,其它的还算事儿吗?! 归纳起来,单片机开发,底层控制多一些;树莓派开发,应用层面多一些。不管是单片机,还是树莓派,看您需要,用到哪个就学哪个!不会?没关系啊,撸胳膊、挽袖子、闷头,边学边干!
|