在过去的 6 个小时里,我一直在尝试运行一个非常简单的代码。它只是打开和关闭连接到引脚 18 的 LED...这是在树莓派 PI 4 上。
我尝试过使用不同的引脚我尝试过添加 sudo sh -c "..." 我尝试过单引号和双引号
运行以下代码时,出现错误sh: 1: echo: echo: I/O error
#!/bin/bash
sudo sh -c 'echo 18 > /sys/class/gpio/export'
sudo sh -c 'echo "out" > /sys/class/gpio/gpio18/direction'
while [ $COUNTER:-1t:10000 ]; do
sudo sh -c 'echo 1 > /sys/class/gpio/gpio18/value'
sleep 1
sudo sh -c 'echo 0 > /sys/class/gpio/gpio18/value'
sleep 1
done
sudo sh -c 'echo 18 > /sys/class/gpio/unexport'
当我运行“非 sudo”版本时,出现错误./Lab1EX4_1.sh: line 4: echo: write error: Device or resource busy
#!/bin/bash
echo "18" > /sys/class/gpio/export
echo "out" > /sys/class/gpio/gpio18/direction
while [ $COUNTER:-1t:10000 ]; do
echo "1" > /sys/class/gpio/gpio18/value
sleep 1
echo "0" > /sys/class/gpio/gpio18/value
sleep 1
done
echo "18" > /sys/class/gpio/unexport
这让我很生气...
谢谢各位偷看!我只想要一盏闪烁的灯:D
答案1
解决方案!
好吧,答案是首先使用 Pigpio 并测试我的 GPIO 是否正常工作......
两者都下载http://abyz.me.uk/rpi/pigpio/(按带下划线的下载链接进行下载)
然后获取 GPIO Pin test /gpiotest -http://abyz.me.uk/rpi/pigpio/examples.html- 运行命令后提取并运行它sudo pigpio
,然后通过执行 shell 文件来运行提取的 gpiotest
如果测试立即结束而无需在命令行上编写太多代码,那么您就通过了!
现在您知道您的 GPIO 没有损坏,是时候通过更新所有 Wiringpi 库来“测试”GPIO 的软件部分了
sudo apt update
sudo apt full-upgrade
现在,虽然我尝试使用帖子 #1 中的代码触发引脚 18,但实际上我最终将其更改为“24”,因为引脚 18 是 GPIO24。在 /sys/class/gpio 中创建的文件夹的名称是 gpio18...又名不是引脚 18,所以在你抓狂之前找到一个好的引脚分配!
享受你的闪烁光芒!