通过Raspberry Pi(树莓派)的GPIO接口控制发光二极管
2013-03-17 00:56
525 查看
原文:http://www.codelast.com/?p=5155
参考:http://blog.csdn.net/liang890319/article/details/8643069
下载安装包,解压,编译,安装:
③下面写程序测试:
编译程序:
运行程序:
Run the program:
可以看到LED开始闪烁了
可能遇见的问题:
GPIO测试编译时出现了这个问题
/usr/lib/gcc/arm-linux-gnueabi/4.6/http://www.cnblogs.com/../libwiringPi.so:undefined reference to `i2c_smbus_write_byte'
/usr/lib/gcc/arm-linux-gnueabi/4.6/http://www.cnblogs.com/../libwiringPi.so:undefined reference to `i2c_smbus_read_byte'
/usr/lib/gcc/arm-linux-gnueabi/4.6/http://www.cnblogs.com/../libwiringPi.so:undefined reference to `i2c_smbus_write_byte_data'
/usr/lib/gcc/arm-linux-gnueabi/4.6/http://www.cnblogs.com/../libwiringPi.so:undefined reference to `i2c_smbus_write_word_data'
/usr/lib/gcc/arm-linux-gnueabi/4.6/http://www.cnblogs.com/../libwiringPi.so:undefined reference to `i2c_smbus_read_word_data'
/usr/lib/gcc/arm-linux-gnueabi/4.6/http://www.cnblogs.com/../libwiringPi.so:undefined reference to `i2c_smbus_read_byte_data'
collect2: ld returned 1 exit status
官方论坛上说是少装了库的原因
安装这几个库: i2c-tools,libi2c-dev ,python-smbus
安装参考 sudo apt-get install libi2c-dev
然后重新
make clean
sudo make uninstall
make
[b]sudo make install[/b]
重新编译下你的.c文件
gcc
led.c -o led -lwiringPi
sudo ./led 4
虽然输入的是4
实际上是GPIO23不停输出高低电平
参考:http://blog.csdn.net/liang890319/article/details/8643069
下载安装包,解压,编译,安装:
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
运行程序:
Run the program:
可以看到LED开始闪烁了
可能遇见的问题:
GPIO测试编译时出现了这个问题
/usr/lib/gcc/arm-linux-gnueabi/4.6/http://www.cnblogs.com/../libwiringPi.so:undefined reference to `i2c_smbus_write_byte'
/usr/lib/gcc/arm-linux-gnueabi/4.6/http://www.cnblogs.com/../libwiringPi.so:undefined reference to `i2c_smbus_read_byte'
/usr/lib/gcc/arm-linux-gnueabi/4.6/http://www.cnblogs.com/../libwiringPi.so:undefined reference to `i2c_smbus_write_byte_data'
/usr/lib/gcc/arm-linux-gnueabi/4.6/http://www.cnblogs.com/../libwiringPi.so:undefined reference to `i2c_smbus_write_word_data'
/usr/lib/gcc/arm-linux-gnueabi/4.6/http://www.cnblogs.com/../libwiringPi.so:undefined reference to `i2c_smbus_read_word_data'
/usr/lib/gcc/arm-linux-gnueabi/4.6/http://www.cnblogs.com/../libwiringPi.so:undefined reference to `i2c_smbus_read_byte_data'
collect2: ld returned 1 exit status
官方论坛上说是少装了库的原因
安装这几个库: i2c-tools,libi2c-dev ,python-smbus
安装参考 sudo apt-get install libi2c-dev
然后重新
make clean
sudo make uninstall
make
[b]sudo make install[/b]
重新编译下你的.c文件
gcc
led.c -o led -lwiringPi
sudo ./led 4
虽然输入的是4
实际上是GPIO23不停输出高低电平
相关文章推荐
- (10)用树莓派B+的GPIO接口控制发光二极管闪烁
- 【Raspberry Pi】GPIO-发光二极管控制
- 树莓派-通过Web控制GPIO针脚输出高低电平(改进版)
- 树莓派通过GPIO口获取温度以及控制LED灯
- 树莓派-通过Web控制GPIO针脚输出高低电平
- 树莓派通过GPIO控制步进电机
- 树莓派通过GPIO控制步进电机(python)
- 通过笔记本控制树莓派
- 继续树莓派GPIO:两片74HC595控制一个8x8LED点阵显示爱心
- 云中树莓派(3):通过 AWS IoT 控制树莓派上的 Led
- 通过Python使用树莓派的GPIO[未完待续...]
- 通过sysfs方式控制GPIO
- 通过WEB控制树莓派RGB灯光
- 树莓派 3 wringPI安装及控制GPIO
- 【Raspberry Pi 3试用体验】+WiringPi控制GPIO
- FreeSwitch通过远程接口返回IVR控制流程
- Linux学习~树莓派gpio控制
- [转]树莓派gpio口控制
- Intel Edison —— 控制GPIO接口,网页显示传感器数值
- 树莓派通过I2C总线控制Arduino点亮LED灯