WiringPi
WiringPi是一个基于PIN的 GPIO 访问库,用 C 语言编写,适用于所有Raspberry Pi 中使用的 BCM2835、BCM2836 和 BCM2837 SoC 设备。
WiringPi库在 Raspbian-Lite 系统上的更新或安装:
sudo apt-get install wiringpi
检查是否安装成功:
gpio -v
如果有版本的信息就证明安装成功啦!
树莓派的引脚图对照表:我们现在使用的是wiringpi编码。
点灯
在/home/pi/GPIO(这是我自己的文件路径)文件里面创建Wiringpi_1.c文件
在文件写入下面的代码。
#include <stdio.h>
#include <wiringPi.h>
// LED Pin - wiringPi pin 0 is BCM_GPIO 17.
#define LED 0 //使用0号引脚
int main (void)
{
printf ("Raspberry Pi - Gertboard Blink\n") ;
wiringPiSetup () ; //打开 GPIO 设备并允许我们的程序访问
pinMode (LED, OUTPUT) ; //设置了引脚的模式 输出模式
for (;;)
{
digitalWrite (LED, 1) ; // 向给定的引脚写入1,即将LED(0号引脚)设置为高电平
delay (500) ; // 延时500mS
digitalWrite (LED, 0) ; // 设置为低电平
delay (500) ;
}
return 0 ;
}
Linux系统的c文件编译
打开终端,进入刚刚存放wiringpi_1.c的文件夹。
输入命令完成编译。
gcc -Wall -o Wiringpi_1 Wiringpi_1.c -l wiringPi
gcc的一些常用命令
“-o” 指定生成的可执行文件名称。
“-n” 标记需要编译的c文件,对于需要编译多个文件,这里我们只需要编译一个文件,这个命令符可以直接省去。
“-l” 用于链接外部头文件,在这里wiringPi.h属于外部头文件,不是gcc编译器自带的头文件。
“-w” 关闭编译时的警告。
“-Wall” 显示所有警告。
“-W” 会显示警告,但是只会显示编译器认为会出现的错误警告。和“-Wall”有什么区别我其实不太懂,没研究。
运行
命令
./Wiringpi_1 //./和Wiringpi_1之间不能有空格
结束运行
Ctrl+c