树莓派4B安装ubuntu server后再访问GPIO
在树莓派上安装了Ubuntu Server后,如果你想继续使用树莓派的GPIO(通用输入输出)功能,你可以通过几种方式来实现。Ubuntu Server默认并不包含直接支持树莓派GPIO的库,但你可以通过安装一些额外的软件包来实现这一点。下面是一些常见的方法:
- 方法1:使用wiringPi库
wiringPi是一个流行的C语言库,用于在树莓派上控制GPIO。虽然它主要用于Raspbian,但在Ubuntu上也可以使用。
安装依赖:
sudo apt-get update
sudo apt-get install build-essential git
克隆wiringPi仓库:
git clone https://github.com/WiringPi/WiringPi.git
cd WiringPi
编译并安装wiringPi:
./build
sudo cp gpio /usr/local/bin
sudo cp gpio.1 /usr/local/share/man/man1
sudo ldconfig
测试GPIO:
gpio -v # 查看版本信息,确认安装成功
gpio readall # 显示所有GPIO的状态
- 方法2:使用python3-gpiozero库
如果你更喜欢使用Python进行GPIO编程,可以使用gpiozero库。
安装gpiozero:
sudo apt-get install python3-gpiozero
编写一个简单的Python脚本测试GPIO:
import gpiozero as gz
from gpiozero import LED
import time
led = LED(18) # 假设你想控制GPIO 18上的LED灯
led.on() # 打开LED灯
time.sleep(2) # 等待2秒
led.off() # 关闭LED灯
- 方法3:使用python3-RPi.GPIO库(对于较新的Ubuntu版本)
对于Ubuntu 20.04及以后版本,你可以直接使用RPi.GPIO库。
安装RPi.GPIO:
sudo apt-get install python3-rpi.gpio
编写一个简单的Python脚本测试GPIO:
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BCM) # 使用BCM引脚编号系统
GPIO.setup(18, GPIO.OUT) # 设置GPIO 18为输出模式
GPIO.output(18, GPIO.HIGH) # 设置GPIO 18为高电平(打开LED灯)
time.sleep(2) # 等待2秒
GPIO.output(18, GPIO.LOW) # 设置GPIO 18为低电平(关闭LED灯)
GPIO.cleanup() # 清理GPIO设置,释放资源