概述

Raspberry Pi是适合DIYers、业余爱好者和学生使用的单板机系列。该系列产品的问世旨在促进全世界的计算机学科教育。Arduino和Raspberry Pi之间的区别在于Arduinos是基于微控制器的主板,而Raspberry Pi是基于微处理器的主板,并且配有操作系统(OS)。在本教程中,我将向您展示如何通过引导操作系统磁盘映像来设置Raspberry Pi。然后,我将演示如何使用GPIO让LED每秒闪烁一次。

预计完成时间:45 分钟 — 1小时。

需准备的零件和设备

  • Raspberry Pi 3 型号 B
  • Micro SD 卡
  • Micro USB 数据线
  • 键盘
  • 鼠标
  • 监控器
  • LED 灯
  • 电阻器
  • 面包板
  • 跳线
  • 电脑与互联网连接

目录

  • 设置您的 Raspberry Pi

    • 正在下载 NOOB
    • 格式化Micro SD卡(可选)
    • 首次启动并安装 Raspbian
  • 绘制电路
  • 让LED闪烁

    • 编写脚本程序
    • 运行脚本程序
  • 附录:LED_flash.py(Python脚本)

1) 设置您的 Raspberry Pi:下载 NOOBS

正如我在概述中所述,Raspberry Pis是配有操作系统的微型计算机。在本教程中,我将向您展示如何安装OS Raspbian。Raspbian是一套获得了Raspberry社区支持的基于Linux的操作系统。
第一步是从以下网址下载最新版本的NOOBS(New Out Of Box软件):https://www.raspberrypi.org/downloads/noobs/。NOOBS是操作系统安装程序,用于在Raspberry Pi上安装不同的操作系统。
注:如果您购买的micro SD卡预先安装了NOOBS,则可以跳过此步骤以及下一步。
如果您的micro SD卡是新的,则可能需要将其格式化。您可以使用SD Card Formatter 4.0执行此操作。此步骤为可选。
安装NOOBS并格式化SD卡后,您可以将提取的所有NOOBS文件复制到SD卡。务必复制文件夹中的所有文件,请勿只复制文件夹本身,否则NOOBS将无法启动。从计算机中取出SD卡并将其插入Raspberry Pi。
raspberry-pi_fig1Raspberry-Pi.jpg
图1:Raspberry Pi

您现在可以第一次启动Raspberry Pi了。将键盘、鼠标和显示器连接到Raspberry Pi(图1:Raspberry Pi)。插入USB数据线为Raspberry Pi供电;您的Pi将启动并出现一个窗口(图2:NOOBS初始化画面)。窗口中会列出备选安装的所有不同操作系统。安装Raspbian Lite,选中复选框以选择Raspbian Lite,然后单击“安装”(图3:操作系统安装选项(NOOBS))。NOOBS即将安装Raspbian Lite。请耐心等候;可能需要10-20分钟。
安装完成后,需要您登录。Raspbian的默认登录名即用户名:pi,密码:raspberry。注:输入密码时,您将看不到输入的字符。本教程中的其余内容将通过命令行进行说明。
raspberry-pi_Fig2-NOOBS-Initialization-Screen.jpg
图2:NOOBS初始化画面

raspberry-pi_Fig3-OS-Install-Selection-NOOBS.jpg
图3:操作系统安装选项(NOOBS)

raspberry-pi_Fig4-NOOBS-Installing-Raspbian-Lite.jpg
图4:在NOOBS上安装Raspbian Lite


2) 绘制电路
待绘制的电路很简单。我正在使用面包板搭建电路;随意将组件焊接在一起,或者为Raspberry Pi制作一个原型扩展板。我喜欢先绘制好电路的Fritzing电路图(图5:Fritzing电路图)。Fritzing是一种开源式原理图识别和PCB布线软件。登陆以下网址可下载Fritzing:https://fritzing.org/home/.
raspberry-pi_Fig5-Fritzing-Schematic.jpg
LED和电阻器应串联在引脚11(GPIO17)和引脚25(接地)之间。电阻器用于限制通过LED的电流,并应根据LED的大小进行相应调整,以防烧坏。请记住LED上的较长引线为正极,应连接到引脚11。

3) 编写代码
若想使LED闪烁,需要编写并运行Python脚本。Python是一种编译过的程序语言。我不打算在本教程中详细介绍Python,但是我将向您展示如何在Raspberry Pi上用Python编写脚本然后运行脚本。然后,您可以利用上述知识在Python中编写其他脚本,并在Raspberry Pi中使用GPIO。在进行下一步之前,请确保您的Raspberry Pi已连接到Internet。
首先确保您拥有最新版本的RPi.GPIO。RPi.GPIO是一个Python库,用于控制Raspberry Pi GPIO引脚。要更新到最新版本,请在命令行中键入以下两个命令:
  1. $ sudo apt-get update
  2. $ sudo apt-get install python-rpi.gpio python3-rpi.gpio
更新了RPi.GPIO之后,您就可以制作一个Python脚本文件。我将其命名为“LED_blink”,但不确定是否曾经起了另一个名字。要创建文件,请在命令行中键入以下内容:
  1. $ nano LED_blink.py
您将进入脚本编辑的新窗口。将附录中的脚本复制到编辑器中并保存文件。
raspberry-pi_Fig6-Running-the-Script-from-Command-Line.jpg
图6:从命令行运行脚本

现在输入以下命令(图6:从命令行运行脚本):
  1. $ sudo python flash_LED.py
现在,LED应该实现了每秒闪烁,即每秒熄灭(图7:LED熄灭)和亮起(图8:LED亮起)。欲停止运行脚本,请按键盘上的“CTRL + C”。
恭喜您!您的Raspberry Pi已设置完成并正在运行。您现在可以使用它来运行脚本或其他应用程序了。
raspberry-pi_Fig7-LED-Off.jpg
图7:LED熄灭

raspberry-pi_Fig8-LED-On.jpg
图8:LED亮起


4) 附录:LED_Flash.py (Python Script)
  1.     import RPi.GPIO as GPIO
  2.     import time
  3.     LedPin = 11 # pin11
  4.     def setup():
  5.     GPIO.setmode(GPIO.BOARD) # Numbers GPIOs by physical location
  6.     GPIO.setup(LedPin, GPIO.OUT) # Set LedPin’s mode is output
  7.     GPIO.output(LedPin, GPIO.HIGH) # Set LedPin high(+3.3V) to turn on led
  8.     def blink():
  9.     while True:
  10.     GPIO.output(LedPin, GPIO.HIGH) # led on
  11.     time.sleep(1)
  12.     GPIO.output(LedPin, GPIO.LOW) # led off
  13.     time.sleep(1)
  14.     def destroy():
  15.     GPIO.output(LedPin, GPIO.LOW) # led off
  16.     GPIO.cleanup() # Release resource
  17.     if __name__ == ‘__main__’: # Program start from here
  18.     setup()
  19.     try:
  20.     blink()
  21.     except KeyboardInterrupt: # When ‘Ctrl+C’ is pressed, the child program destroy() will be executed.
  22.     destroy()