快过年了,忙里偷闲,写一篇博客记录一下前面这么多天玩树莓派的心得。
树莓派是什么?
英文名字叫Raspberry Pi,就是一台很小的微型计算机,运行着ARM的处理器,能够进行一些物联网的开发,当然也可以充当一台计算机,可以连接显示器,安装桌面系统,看看视频,上网都是没有问题的,如果你是拿来做开发,我们当然要做 一些很酷的事情啊!知乎上有个问题大家可以去看看「树莓派」是什么以及普通人怎么玩?
看到图你可能会想到单片机,其实他就是一台功能比较强大的单片机,毕竟他上面可以跑一个Linux/Windows的操作系统。其实除了树莓派之外,还有很多派,比如Orange Pi,他们取名字真的很有趣啊。当然还有不是水果的,比如Arduino,都能够实现类似的功能。既然这块板子上能跑Linux,那就能干一个Linux系统能做的大部分事情,还能实现作为一块开发特有的功能,拭目以待。
如果你学过一些数字电路的姿势,上手会比较快。通过树莓派的GPIO(General-purpose input/output)引脚可以连接各种设备和传感器。你可以通过编程实现对这些引脚高低电平的读写控制完成数据和指令的传输,控制电气元件或者从传感器读取写入数据。复杂的操作当然会对应着一个炫酷的功能。这里只是简单的提一下。
选购指南
树莓派是老牌资本主义国家做的,那么我们在社会主义国家如何购买呢?首先你肯定能够想到一个神奇的网站,上面有大量的树莓派供你选购。
现在流行的是树莓派3,配置和性能都能有不错的体验。
主要配置清单
- 1.2GHz的ARM处理器
- WLAN
- 蓝牙4.1
- 1G 内存
- 4个USB口
- 40 个GPIO引脚
- HDMI接口,可以连接显示器并有音频输出
- 以太网口
- 3.5mm音频输出
- CSI 相机接口
- MicroSD卡槽
一般价格在200-300元之间,祝你好运了。选购的时候最好把基本配件都买上,以免以后开发麻烦。因为一个树莓派的板子就只有一个板子和简单的说明书。如果要体验开发的乐趣,你需要:
- 一张至少8G(多多益善)的MicroSD卡,就是能插手机上的那种,不要贪图便宜,买很慢的卡,至少也得是Class 10读写速率的卡,越快越好,三星和闪迪都是不错的选择。你可能还需要一个读卡器,用于写入系统。
- 一个5V的电源输入。一般手机充电器的输出电压就是5V。为什么是5V呢?如果你学过数字电路的话你就会发现数字电路里最高的电压也就是5V了,包括你的USB的电压也是5V,这里也就是一个数字电路,全世界都是5V。如果太高的电压应该是会把树莓派烧了的。。。
- 面包板。就是一个让你插元件,插线的地方,详细介绍看一下果壳的介绍如何使用面包板,一定要注意哪些孔是相连的。
-
杜邦线。就是一个让元件互相连接的线,必不可少。大概就长这个样子。接头部分分为公头和母头,你懂的。有三种线,建议都买一下,公对公,公对母,母对母。
- 按需购买传感器和电子元件。常用的有这些:LED灯泡、蜂鸣器、电机、温度湿度传感器、人体红外传感器、光线强度、声音传感器、气压传感器,超声波传感器、火焰传感器等等。我觉得LED也就是发光二极管还是必买的,当然可以多买一点,二极管有不同的颜色。
- CSI接口的摄像头。看你做不做图像的编程了,可以拍照录像,这里求资助一个摄像头啊O(∩_∩)O。
- 按需购买电阻。因为不同元件的额定电压不同,比如有的二极管能直接接在3.3V的电压上,有的接上去就烧了。我开始就烧过几个/(ㄒoㄒ)/~~。有的传感器也比较娇贵,接个电阻还是必要的。
-
树莓派外壳、风扇、散热片。就相当于一个主机机箱一样,如果你不想让一块主板露在外面的话,买个壳子是个不错的选择。风扇当然是散热的,装了壳子以后散热会差一点,还是加个风扇和散热片吧。像这样:
- 其他:因为树莓派没有音频输入口,你最好买一个USB的麦克风,最好不用驱动的那种。HDMI的线,显示器,没有HDMI显示器就要HDMI转VGA的转接线。如果不想接显示器,可以买一个7寸的小显示屏,方便的不行,这里再求资助一个显示屏啊,(●'◡'●)。另外就是USB鼠标和键盘了,基本输入设备。另外还有GPIO的扩展板可以考虑购买。还有网线,虽然树莓派可以连Wifi,第一次进去的时候插上网线会比较好一点找ip地址。
基本硬件姿势
树莓派的开发,一定要知道那些GPIO引脚,这里有一张引脚图,保存一下吧。
你需要用一个带母头的杜邦线接上去,另一头接面包板或者元件引脚都是可以的。对于元件的接线,一定要注意哪一个脚是VCC,哪一个是GND或者数据脚,接错的话,嘿嘿嘿,元件就烧了,你会问道一股烧焦的清香 _。
对这些引脚的操作就是两种,读取和写入。顾名思义,读取就是获得某个引脚上的电平的高低,一般来说大于3.3V就是高电平,低于就是低电平。外面还可以对某个引脚的高低状态进行编程的写入。
可以把写入当成是供电,虽然不大确切。比如一个二极管,一端接地(
GND
),一端接GPIO4
,对GPIO4
写入一个高电平就亮了,低电平就暗了。一些例子上是让二极管接VCC
也就是3.3V的电源,一端接GPIO,那么我们对GPIO写入一个低电平,二极管才会亮。可以想想电路的知识就明白了。读取就是对一些传感器数据的获取。比如声音传感器在有声音的时候会在输出口输出一个低电平,你去读取这个输出口的GPIO就能知道这个引脚的高低电平状态,编程进行判断。一些复杂的传感器,比如DHT11温度湿度传感器,它的数据输出是依靠时序来获得数据的,就要每隔一段时间对引脚进行读取或写入,从而在一个周期内获得传感器传回的数据。这个过程就很复杂了,如果自己去写的话,需要参照元件的手册和强大的C/CPP编程技能。当然也不是每个都那么麻烦,如果有现成的代码或库,直接拿来用就是了。
操作系统的安装
如果你要给他装Linux的话,选择就很多了,有很多发行版的Linux都可以在树莓派上跑。可以在树莓派网站上找到推荐的操作系统下载。你可以选择raspbian
这个系统。
至于系统的写入呢,这里说一下raspbian的写入,其他Linux的写入也类似。
- 下载 raspbian jessie ,将其解压缩至非中文名称的文件夹
-
Bing一下这个软件Win32 Disk Imager
选择镜像——选择SD卡——写入
写入完成后,在SD根目录找到config.txt
这个文件,用notepad++/sublime text/Visual Studio Code 打开。
这个文件是个配置文件,每次启动都要去读这个配置,下面给一个我的配置
dtparam=spi=on
dtparam=audio=on
hdmi_group=2
hdmi_mode=1
hdmi_mode=87
hdmi_cvt 1920 1080 60 6 0 0 0
start_x=1
gpu_mem=128
hdmi_drive=2
enable_uart=1
dtoverlay=w1-gpio
关于配置文件的详细说明请看树莓派配置文档config.txt说明
对了默认用户名是pi,密码是raspberry
配置完成后保存,弹出SD卡,插到树莓派的卡槽里面。连好各种线,接通电源就能进到系统里了,该干嘛干嘛。
进去以后可以配一下Apache+PHP+Mysql/nginx+PHP+sqlite什么的,我就不说了。
好了Linux装完了,我可是软狗,软狗怎么可以苟且偷生用Linux啊!
下面是安装Windows 10 Iot Core的过程。
- 你需要到这里,一步步选择,系统选择Insider Preview吧。
- 然后在这个页面上下载 Windows 10 IoT Core Dashboard。
- 下载系统镜像,根据页面指示,下载安装,一步步来,用Dashboard这个UWP应用把系统写到SD卡里。
- 取出SD卡加到树莓派里,通电你就可以进到Windows 10 IoT Core啦。
- 如果你插着网线,注意要让你的树莓派和你的PC在一个局域网里,就能在Dashboard应用中看到我的树莓派,右键可以进到管理网页。网址http://树莓派地址:8080, 另外说一下,以后部署应用的时候尽量用网线连接,因为Visual Studio是远程调试,网线总会快一点。。。
- 在Dashboard应用中提供了几个测试应用,可以部署到树莓派上感受一下。
至此,上手就结束啦,你就可以用Visual Studio开发啦。一些例子可以在上面提到的网站中找到,发挥你的主管能动性,开始你的物联网之旅吧。
我这里参考了阿迪王的博客,我最早也是从他那里学习的,大家可以去围观一下。我这有一些资料,不嫌弃的话评论里找我要吧,哦还有,我买树莓派的那家店还挺好的,不给它做广告了,要导购的话评论里说吧,(逃。