diff --git a/documents/images/WiringPi.png b/documents/images/WiringPi.png new file mode 100644 index 0000000000000000000000000000000000000000..5aacfb3db933acc57f18843d1290dff4ed4653eb Binary files /dev/null and b/documents/images/WiringPi.png differ diff --git "a/documents/\346\240\221\350\216\223\346\264\276\344\275\277\347\224\250.md" "b/documents/\346\240\221\350\216\223\346\264\276\344\275\277\347\224\250.md" index c87d6107f026f160bb51960f612bbca4d2d40900..beb69f8fbcc1760fc8bf1997e368791f6bca3a9f 100644 --- "a/documents/\346\240\221\350\216\223\346\264\276\344\275\277\347\224\250.md" +++ "b/documents/\346\240\221\350\216\223\346\264\276\344\275\277\347\224\250.md" @@ -68,6 +68,10 @@ - [设置 hciuart 服务开机启动(默认已设置)](#设置-hciuart-服务开机启动默认已设置-1) - [重启树莓派](#重启树莓派-2) - [查看结果](#查看结果-2) + - [WiringPi](#wiringpi) + - [下载 WiringPi](#下载-wiringpi) + - [安装 WiringPi](#安装-wiringpi) + - [使用 WiringPi](#使用-wiringpi) @@ -604,4 +608,42 @@ lrwxrwxrwx 1 root root 7 Sep 3 2019 /dev/serial0 -> ttyAMA0 lrwxrwxrwx 1 root root 5 Sep 3 2019 /dev/serial1 -> ttyS0 ``` -在 PC 的串口通信图形化软件上,可以看到树莓派的开机日志以及树莓派上通过命令 `echo "hello" > /dev/serial0` 向串口输出的信息。 \ No newline at end of file +在 PC 的串口通信图形化软件上,可以看到树莓派的开机日志以及树莓派上通过命令 `echo "hello" > /dev/serial0` 向串口输出的信息。 + +## WiringPi + +WiringPi 是应用于树莓派平台的 GPIO 控制库函数,包括一套 GPIO 控制命令,可以控制树莓派GPIO管脚。WiringPi 是可以扩展的,用户可以利用 WiringPi 的内部模块或把自定义的扩展模块集成到 WiringPi 中以扩展更多的 GPIO 接口或支持更多的功能。 + +当前,[官方](http://wiringpi.com/download-and-install/) 提供的链接无法下载 WiringPi,这里使用 [WiringPi 下载链接](https://github.com/WiringPi/WiringPi)。 + +### 下载 WiringPi + +`git clone https://github.com/WiringPi/WiringPi.git` + +### 安装 WiringPi + +`cd WiringPi` + +`sudo ./build` + +注意,当前系统默认未安装 sudo、make、gcc等,使用命令 `dnf install -y sudo make gcc` 安装。 + +### 使用 WiringPi + +`gpio -v` + +`gpio readall` + +![](images/WiringPi.png) + +注意,使用命令 `gpio readall`,可能会报错: + +``` +wiringPiSetup: mmap (GPIO) failed: Operation not permitted +``` + +解决方法,编辑 `/boot/cmdline.txt` 添加内容 `iomem=relaxed`。当前,`/boot/cmdline.txt` 最终内容为: + +``` +console=serial0,115200 console=tty1 root=/dev/mmcblk0p3 rootfstype=ext4 elevator=deadline iomem=relaxed rootwait +``` \ No newline at end of file