在让大众自由掌控 PC 强大功能的革命中,Raspberry Pi 是核心,为咱们提供了一个具备普遍生态支持的易用型平台。虽然该平台直观易用,但工程师和初学者依旧能够受益于使用过 Pi 的用户提供的一些小技巧。编程语言
“须要知道的 10 件事”不会尽述全部内容,在线交流论坛将就此提供持续支持。这些有价值的信息可能没法在任何指南或教程中找到,但它们是来之不易的经验总结。这包括选择和格式化 SD 卡、选择 Raspberry Pi 的电源、选择正确的 Wi-Fi 适配器、编程技巧、系统冻结时的操做说明以及如何正确为其供电以避免受破坏等方面的意见和建议。工具
快速浏览这些小技巧,能大幅提高 Raspberry Pi 的首次使用体验,并充分感觉单板计算机平台的强大功能。性能
1: 什么时候、何种状况下使用 Raspberry Pi
Raspberry Pi 的价格、性能和背后的支持社区,让您在开始全部可能的任务时就几乎没法拒绝该产品。本质上说,Raspberry Pi 是我的计算机。以 Raspberry Pi Foundation 的 Raspberry Pi 3 Model B 为例,此产品基于高达 1.2 GHz 的 ARM® Cortex®-A53。并搭配 1 GB RAM、802.11n 无线局域网、蓝牙 4.1 和低功耗蓝牙、4 个 USB 端口,40 个 GPIO 引脚、完整的 HDMI 端口、以太网、3.5 mm 音频插孔和摄像头及显示器接口。学习
图 1: Raspberry Pi Foundation 的 Raspberry Pi 3 Model B 基于高达 1.2 GHz 的 ARM Cortex-A53,并具备 1 GB 内存和 802.11n 无线局域网链接。(图片来源: Raspberry Pi Foundation)测试
从读取温度传感器、控制电机和活塞的机电一体化系统,到做为完整功能计算机,该产品几乎无所不能,还能够执行一些有趣的项目包括视频处理、机器人和远程 3D 打印机控制。
2: 开始运行 Raspberry Pi
Raspberry Pi 旨在运行操做系统,而不只仅是在裸机上编写代码。最多见的操做系统是一种名为 Raspbian(Raspberry 和 Debian 的混成词)的专用 Linux 版本风格。固然也能够运行其余操做系统,但初学者应坚持使用 Raspbian。
Raspberry Pi 做为独立计算机使用时,将须要全部传统外设,包括鼠标、键盘、SD 卡(Class 10,至少 8 GB,如 Apacer Memory America的 AP8GMCSH10U1-B)和监视器。
须要一个外部 SD 卡读卡器,以便先将 Pi 映像从单独计算机复制到 SD 卡上。映像复制到 SD 卡后,全部其余做业均可以在 Pi 上完成。一款很好的 SD 卡读卡器是 Assmann WSW Components 的 DA-70310-2 USB 2.0 读卡器,该读卡器适用于几乎全部主流存储卡格式。
要格式化 SD 卡,请经过 Raspberry Pi 网页上的连接获取 SD Association 的 SD Card Formatter 软件。仅使用经验证的软件来确保将 NOOBS 成功安装到 SD 卡上。或者购买预装 NOOBS 的 SD 卡,例如 Raspberry Pi NOOBS 16 GB 卡。
选择无线键盘和鼠标(如 Adafruit 的 1738),能够空出 USB 端口,避免电缆缠绕。或者使用通电 USB 2.0 集线器,如 Tripp Lite 的 4 端口 U22-004-RA。实际上,更推荐 4 端口通电集线器,由于能够下降 Pi 的电源需求。
若是打算经过 SSH 远程链接到 Pi,或者与触摸屏配合使用,则用户再也不须要鼠标、键盘和监视器(参见技巧 9)。
另外,除非监视器具备 HDMI 输入端,不然须要使用一个适配器将 Pi 的 HDMI 端口和监视器的输入端链接起来。例如,将 HDMI 桥接到带 DVI-D 端口的监视器时,可以使用 CnC Tech 的 741-20010-00300(图2)。
图 2: 可能须要适配器将 Raspberry Pi 的 HDMI 输出链接到监视器,例如 CnC Tech 的 741-20010-00300 HDMI 19 针转 DVI-D 19 针公头适配器。(图片来源: CnC Tech)
以后,将 Pi 嵌入到系统或项目中时,这些外设可能会放在一边。
3: 得到适当的电源
请勿经过电脑的 USB 端口为 Raspberry Pi 供电,由于它们没有防止 SD 卡损坏、Raspberry Pi 冻结和其余零星问题等电源相关问题所需的供电能力盈余。一般,2 安培电源已可以知足 Raspberry Pi 3 的需求,但推荐使用 2.5 安培的电源。
不少高电流电源带有一个管状公头输出链接器。使用 Adafruit 的 2727 插孔转 Micro USB A 插头电缆适配器,配合任意 5 V、中心正极 5.5 x 2.1 mm 柱式电源,将其配接至 Raspberry Pi 3(图 3)。
图 3: 要按照 2.5 A 推荐值为 Raspberry Pi 供电,应将 Adafruit 的 2727 插孔转 Micro USB A 电缆适配器与任意 5 V、中心正极 5.5×2.1 mm 柱式电源结合使用。(图片来源:Adafruit)
Raspberry Pi 自身并不须要使用所有电流。使用具备足够额外负载能力的电源,旨在确保其余电子元件和配件链接到电路板时,输入电压不会降低。基于此,咱们来了解一下通常电源要求。
根据型号,Raspberry Pi 在空闲模式下消耗大约 100 mA 至 300 mA,每次连续迭代 Pi 将消耗更多的电流(图 4)。若是应用须要超低功耗,则在 Raspberry Pi 选择过程当中应考虑这一因素。
|
图 4: 一些主流 Raspberry Pi 型号电流消耗的比较结果。(图片来源: Raspberry Pi Foundation)
请注意,若是 Pi 采用移动工做方式,则可能没法得到足够的电流,致使大多数 USB 移动电源因其内部电路的设置而没法导通。请使用 Adafruit 的 4000 mAh 型号 1565 或 10,000 mAh 型号 1566电池组,它们已证明可与 Pi 配合使用。
4: 获取或制做带有内置开/关按钮的 USB 电缆
Raspberry Pi 没有板载复位按钮或电源开关。为了不每次电路板冻结并须要复位时拔下和从新插上 USB 电缆,请使用带有内置开/关按钮的 USB 电缆,例如 Adafruit 的 2379。这一需求总结于不断的实验和学习。 初学者会不可避免地在学习过程当中锁定系统。使用按钮比使用电缆和链接器更简单,可减轻负担,同时避免没必要要的 USB 链接器磨损。
可是,请注意: 通常状况下,切勿默认使用开/关按钮关闭 Raspberry Pi。直接断电会损坏 SD 卡,所以请务必按照正确的关机程序进行操做(参见“开关的位置”)。
5: 成功的关键:Raspberry Pi 配件板
Raspberry Pi 是功能强大的单板计算机,但也不是万能的。幸运的是,可利用大量可用的配件板来加强 Pi 的功能。
例如,虽然 Raspberry Pi 没有用于数据采集的板载模数转换器 (ADC),但有几种转换器解决方案可供选择。Seeed Technology 专门打造的 103990060 ADC 和数模转换器 (DAC) 板就是一个很好的解决方案(图 5)。
图 5: Seeed Technology 的 103990060 Raspberry Pi 扩展板为 Raspberry Pi 提供 8 位 ADC 和 DAC 功能。(图片来源:Seeed Technology)
为 RasPi 配备 ADC 输入的另外一种方法是将此工做交由小型 Arduino 板完成,例如 Adafruit 3.3 伏 Trinket。
要作到这一点,首先回顾“开始 Arduino 项目前须要知道的 10 件事”,而后使用简单草图对电路板进行编程来采集模拟数据。数据经过串行链接中继到 Pi。
更方便的方法是,使用能够与 Raspberry Pi 搭配使用的定制 Arduino 板,例如 Seeed 的 AlaMode 和 DFRobot 的 DFR0327 扩展板。
须要实时执行的任务无疑须要一个配件板,由于 Raspian 不具有此功能。Raspbian/Linux 会根据须要将 CPU 时间分配给应用程序、Python 代码和 Raspbian 自身。这种资源从新分配的不可预测性使得没法实现实时执行。
6: Wi-Fi 加密狗
将更新和应用程序安装到 Pi 上的最简单方法是经过 Wi-Fi 链接互联网,Raspberry Pi 3 已内置此功能 (802.11n)。可是,其余版本的 Raspberry Pi 没有 Wi-Fi,所以可能须要购买 Wi-Fi 加密狗。这种状况下,应作必要的研究,以确保其可以被 Raspbian 操做系统识别。Adafruit 的小型 814 802.11/b/g/n 模块是一款很棒且已证明适合 Raspberry Pi 的加密狗(图 6)。
图 6: 若是您手上的 Raspberry Pi 板没有内置 Wi-Fi,请研究并找寻合适的加密狗,例如已知可用于 Raspbian 的 Adafruit 814 USB 适配器。(图片来源:Adafruit)
7: 注意输出逻辑电平和驱动能力
Raspberry Pi 使用 3.3 V 逻辑电平。这是一个很小但重要的细节,每每被忽视。3.3 V 逻辑电平意味着 Pi 可能没法与须要 5 V 逻辑电平的许多器件和配件搭配使用。此外,若是总电流不超过约 50 mA,则每一个引脚上的驱动电流为 16 mA。使用 SparkFun 的 BOB-12009 双向转换器等逻辑电平转换器可轻松解决此问题。
图 7: SparkFun 的 BOB-12009 将 5 V 信号转换为 Raspberry Pi 所需的 3.3 V。(图片来源:SparkFun)
8: Python 编程语言
Python 是 Raspbian 的默认编程语言。事实上,Raspbian 映像预先加载了 Python 开发环境 IDLE(集成开发和学习环境)。对于大多数 Pi 项目,使用 Python 是不可或缺的。
在 Raspbian 中,能够选择使用 IDLE 2 运行 Python 2 或 IDLE 3 来运行 Python 3。继续使用 IDLE 3/Python 3 保持最新状态并获取最新的文档。
请注意,Python 2 和 3 代码不能直接互换。目前有不少 Python 2 代码,因此您可能但愿能从 Python 3 返回至 Python 2,可是二者在语法和命名约定方面存在一些差别,不能直接兼容。可是,若是决定更改,能够仔细检查代码,进行必要更改以将 Python 2 代码转换为 Python 3,反之亦然。
开始构建 Python 程序的个性化 GUI 的最快方法是使用一组名为 TkInter 的工具,该工具已与 Raspbian 捆绑提供。TkInter 有不少简短在线教程,能够帮助用户快速上手。
对于新手编程人员,建议将项目分解为基本构建块。例如,项目涉及到输出至 LCD,读取链接到 SPI 的传感器,以及从三个按钮获取用户输入。应为每一个任务编写一个单独的代码段。一次编写全部代码可能会致使错误,并加大调试难度。