[TOC]
[玩转树莓派] 欢迎来到树莓派的世界
Welcome to Raspberry Pi world
0x00 初衷
之前加入的一个树莓派群最近突然活跃起来,经过观察发现是新版的树莓派发布了 —— Raspberry Pi 3。很高兴的是,各位小伙伴的活跃有些超出我的意料。
观察一段时间之后发现,很多小伙伴在问一些很基础的问题,开始尝试去帮他们解答,后来发现根本回答不过来,刚回答完又有小伙伴来问,因此决定尝试着做一些基础总结,给各位刚入门的小伙伴提供一些参考。
为什么买树莓派呢?很早就听说过树莓派,Arduino这些小板子,但是决定入手树莓派还是因为知乎的一个回答:树莓派 (Raspberry Pi) 是什么?普通人怎么玩? 看完后很兴奋,这个小板还可以这样玩,遂入手。算起来从入手到现在已经半年左右。简单的入门操作都折腾了一遍,还买了一大堆硬件,但是很遗憾,不少硬件没有折腾成功。期间学了一些python基础知识,做了一些简单的服务在上面跑,然后就让他静静的躺在了角落里,没有再折腾。但有一件事让我非常的兴奋,这个小板子最长一次50多天没关机!!!这大大的出乎我的意料
为什么会说非常兴奋呢?跑了50多天后是我主动关机的。一个普通的用户,无论你是Windows,Linux还是Mac,作为日常使用的设备,还是会经常重启的,特别是Windows系统。一块放在床头的小板子,可以稳定的跑上几天,几周,几个月,有这么稳定的一个系统,还有那些GPIO,是不是给我们更多的折腾提供了非常好的基础!
决定写这些入门文章,我会本着直接告诉你一个结果
的原则,循序渐进的把你正面对或者将会遇到的问题展现出来。如果讲的太粗,各位可以直接提问,我再补充。最后希望我会坚持把这些东西写下去。
0x01 什么是树莓派(Raspberry Pi)
树莓派(Raspberry Pi) 是什么,来看看维基百科的介绍:
树莓派(英语:Raspberry Pi),是一款基于Linux的单板机电脑。它由英国的树莓派基金会所开发,目的是以低价硬件及自由软件刺激在学校的基本计算机科学教育。
树莓派的生产是通过有生产许可的两家公司:Element 14/Premier Farnell和RS Components。这两家公司都在网上出售树莓派。
树莓派配备一枚博通(Broadcom)出产的ARM架构700MHz BCM2835处理器,256MB內存(B型已升级到512MB内存),使用SD卡当作存储媒体,且拥有一个Ethernet、两个USB接口、以及HDMI(支持声音输出)和RCA端子输出支持。树莓派只有一张信用卡大小,体积大概是一个火柴盒大小,可以运行像《雷神之锤III竞技场》的游戏和进行1080p视频的播放。操作系统采用开源的Linux系统如Debian、ArchLinux,自带的Iceweasel、KOffice等软件,能够满足基本的网络浏览、文字处理以及电脑学习的需要。分A、B两种型号,售价分别是A型25美元、B型35美元。树莓派基金会从2012年2月29日开始接受B型的订货。
树莓派基金会提供了基于ARM架构的Debian、Arch Linux和Fedora等的发行版供大众下载,还计划提供支持Python作为主要编程语言,支持BBC BASIC(通过RISC OS映像或者Linux的"Brandy Basic"克隆)、C语言和Perl等编程语言。
树莓派基金会于2016年2月发布了树莓派3,较前一代树莓派2,树莓派3的处理器升级为了64位的博通BCM2837,并首次加入了Wi-Fi无线网络及蓝牙功能,而售价仍然是35美元。
简单来说,他就是一台ARM架构的电脑,信用卡大小,他有usb接口,有hdmi接口,有音频接口,有以太网接口等等。我们再来看看他的配置(From:维基百科):
最新的Raspberry Pi 3 B型CPU有提升,增加了板载WIFI和蓝牙。但是,这样的配置,和我们普通的PC机比的话还是差的很远。那么,我们为什么还要使用树莓派呢?这里简单说说我的看法:
- 体积小:小到完全可以随身携带
- 省电:我的是2代B型,配置的电源5V 2A,最大功率也才10W
-
GPIO
:这个是最吸引我的,通过它可以控制一些开关等 - 便宜:200多块钱的价格,少吃一顿饭少看两场电影就剩下来了
- ...
其实既然你已经决定或者已经入手树莓派,我们就不过多的介绍他的优缺点了。反正就是你买了用起来
,不会后悔的。接下来我会把更多的精力放在我们要做的事情上,而不是纠结具体在某个版本上,因为相同的OS他们差别不是很大。我用的是树莓派2代B型,和最新的3代比少了WIFI和Bluetooth,不过我自己准备了一个usb接口的WIFI和Bluetooth,最后我的基本配置如下:
- 树莓派主机:2代B型
- 电源适配器:2A,看挂的负载选择
- 存储卡:32G Sandisk,推荐这个牌子
- 无线网卡:RTL8192CU,可选
- USB蓝牙:可选
- 摄像头:网上50快钱买的,可选
- 其他一堆硬件,如HC-SR501、LCD12864、LCD1602、MQ-135、MQ-2、DHT11等等,目前已知在用的是DHT11,检查房间温湿度。
~ $ lsusb
Bus 001 Device 005: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)
Bus 001 Device 004: ID 0bda:8178 Realtek Semiconductor Corp. RTL8192CU 802.11n WLAN Adapter
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
0x02 网络环境
我用的是上海电信的30MB宽带,电信光猫下面接一个TP-Link路由器,路由器下面接上网设备。如下图:
起初,很多人会遇到和我一样的问题:光猫加电后就可以上网了,但是我们没办法通过公网访问我路由器下的设备。解决这个问题,我们会很自然的想到对光猫进行设置。经过各种google之后,确定了一个最简单的思路:破解光猫,从中获取我们拨号用的用户名和密码,然后把光猫设置成仅仅作为猫使用,用拿到的用户名密码到我们的路由器中进行拨号。听起来是不是还挺复杂的,那这里告诉你一个简单办法:随便找一个理由报修宽带,比如网速比较慢,等维修的师傅上门后告诉他你想用自己的路由器拨号上网,他就会帮你设置的。设置好这些之后我们就有了一个有公网IP的路由器。
0x03 花生壳
虽然完美有了公网的IP,但是遗憾的是,这个公网IP在每次拨号时都会变。这个问题我们可以用花生壳来解决。花生壳可以免费给我们提供DDNS服务,将我们动态的IP映射到一个域名上。这样我们就可以在公网通过这个域名来访问家里的树莓派,而不用担心自己的公网IP变来变去找不到了。所以,我们需要先注册一个花生壳的账号,再花5块钱注册一个花生壳域名,拿着这个账号到我们的宽带路由器上登录即可:
很多时候事情并没有那么完美,比如某天你会发现我们宽带的某些端口(比如80端口)无法使用(被电信运营商封掉),这时候我们就需要使用花生壳的另一个服务:花生壳内网版 来解决。这个我会在接下来的文章中讲到。
0x04 工具
俗话说工欲善其事必先利其器,在正式开始之前,给大家推荐几个工具:
-
一个android系统的SSH客户端工具,可以通过它直接与树莓派相连。
-
一个客户端工具,支持android系统,连接树莓派后直接可以对树莓派的GPIO进行操作。
-
这个是用来画电路原理图的,很Cool,非常好用。
-
iOS系统的SSH客户端工具。
如果你有更好的工具,欢迎分享。
说了这么多,接下来正式进入树莓派的世界,提前祝大家玩的开心~~