树莓派|【树莓派学习笔记】三、点亮一个LED灯(C语言 - WiringPi、Python - RPi.GPIO/GPIO Zero)


目录

  • C语言
    • WiringPi
  • Python
    • RPi.GPIO
    • GPIO Zero

【树莓派|【树莓派学习笔记】三、点亮一个LED灯(C语言 - WiringPi、Python - RPi.GPIO/GPIO Zero)】平台:树莓派3B
版本: 2021-05-07-raspios-buster-armhf

若GPIO输出为3.3V 采用压降为1.7V的红色LED灯
设工作电流为15mA,则限流电阻取≥(3.3 - 1.7)/0.015 = 106.67欧较为安全。
C语言 WiringPi API 手册
WiringPi预装在标准的树莓派操作系统Raspbin中。也可以使用下面的命令进行安装:
sudo apt-get install wiringpi

如果需要更新WiringPi,可以使用系统更新命令:
sudo apt-get update sudo apt-get upgrade

WiringPi安装完成后,可以使用下面的命令测试是否安装成功:
sudo gpio -v

如果系统中安装了WiringPi,该命令可以显示出其版本号、作者及当前树莓派的一些信息;如下图所示:
树莓派|【树莓派学习笔记】三、点亮一个LED灯(C语言 - WiringPi、Python - RPi.GPIO/GPIO Zero)
文章图片

WiringPi对树莓派物理引脚进行了封装,定义了一套自己的引脚编号。
如果要查看当前树莓派的引脚编号,可以使用如下命令:
sudo gpio readall

树莓派|【树莓派学习笔记】三、点亮一个LED灯(C语言 - WiringPi、Python - RPi.GPIO/GPIO Zero)
文章图片

在合适的目录下编辑源文件
树莓派|【树莓派学习笔记】三、点亮一个LED灯(C语言 - WiringPi、Python - RPi.GPIO/GPIO Zero)
文章图片

#include int main(int argc, char * argv[]) {char i; wiringPiSetup(); pinMode(0, OUTPUT); for(i = 0; i < 10; ++i) {digitalWrite(0, HIGH); delay(500); digitalWrite(0, LOW); delay(500); } return 0; }

树莓派|【树莓派学习笔记】三、点亮一个LED灯(C语言 - WiringPi、Python - RPi.GPIO/GPIO Zero)
文章图片

Ctrl+O 回车 保存
Ctrl+X退出编辑
编译这段代码
gcc -o main.o main.c -lwiringPi

运行目标文件
./main.o


Python RPi.GPIO API 手册
在合适的地方编源码
nano main.py

import RPi.GPIO#导入RPi.GPIO库 import time RPi.GPIO.setmode(RPi.GPIO.BOARD)#选择GPIO编号系统 BCM 对应 GPIO numbers, BOARD 对应 physical numbers RPi.GPIO.setup(11, RPi.GPIO.OUT)#把引脚设置为输出模式 for _ in range(10): RPi.GPIO.output(11, RPi.GPIO.HIGH) time.sleep(0.5) RPi.GPIO.output(11, RPi.GPIO.LOW) time.sleep(0.5)

树莓派|【树莓派学习笔记】三、点亮一个LED灯(C语言 - WiringPi、Python - RPi.GPIO/GPIO Zero)
文章图片

Ctrl+O 回车 保存
Ctrl+X退出编辑
运行脚本
python3 main.py

可以观察到LED成功闪烁。
树莓派|【树莓派学习笔记】三、点亮一个LED灯(C语言 - WiringPi、Python - RPi.GPIO/GPIO Zero)
文章图片

GPIO Zero API手册
使用pinout命令查看引脚编号
树莓派|【树莓派学习笔记】三、点亮一个LED灯(C语言 - WiringPi、Python - RPi.GPIO/GPIO Zero)
文章图片

在合适的地方编源码
nano main.py

import gpiozero import time LED_R = gpiozero.LED(17) for _ in range(10): LED_R.on() time.sleep(0.5) LED_R.off() time.sleep(0.5)

树莓派|【树莓派学习笔记】三、点亮一个LED灯(C语言 - WiringPi、Python - RPi.GPIO/GPIO Zero)
文章图片

Ctrl+O 回车 保存
Ctrl+X退出编辑
运行脚本
python3 main.py

可以观察到LED成功闪烁。

    推荐阅读