下载安装包,解压,编译,安装:
mkdir temp cd temp wget http://project-downloads.drogon.net/files/wiringPi.tgz tar xf wiringPi.tgz cd wiringPi/wiringPi/ make make install
// led.c
#include <wiringPi.h>
#include <stdio.h>
#include <stdlib.h>
int main (int argc,char* argv[])
{
if (argc < 2) {
printf("Usage example: ./led 4 \n");
return 1;
}
int pinNumber = atoi(argv[1]);
if (-1 == wiringPiSetup()) {
printf("Setup wiringPi failed!");
return 1;
}
pinMode(pinNumber, OUTPUT); // set mode to output
while(1) {
digitalWrite(pinNumber, 1); // output a high level
delay(800);
digitalWrite(pinNumber, 0); // output a low level
delay(800);
}
return 0;
}
编译:
gcc led.c -o led -lwiringPi -lpthread
运行:
sudo ./led
编译: g++ -Wall -o led led.cpp -lwiringPi //使用C++编程 , -Wall 是为了使能所有警告,以便发现程序中的问题 gcc -Wall -o led led.c -lwiringPi //使用C语言编程 运行: sudo ./LEDtest
在使用线程时,使用gcc或arm-linux-gcc编译时,会出现错误:undefined reference to 'pthread_create'
主要是以下两种原因:
1、#include <pthread.h> 请确认头文件是否添加
2、-lpthread 编译选项,即在编译时需添加额外的编译选项,如使用arm-linux-gcc编译lc300-led-test.c文件,命令正确应该如下:
arm-linux-gcc -o lc300-led-test lc300-led-test.c -lpthread
请注意后面的-lpthread,特别是-后边的'l',link = 'l'