这篇是在博客园原创 转载注明出处啊

以前用单片机、STM32之类的时候都是在一个集成的开发环境下进行的 比如Keil、IAR等 那么linux下编程,eclipse是个不错的选择

关于树莓派的GPIO操作 这里选择WiringPi 作为库函数,接下来安装这个库。

具体操作非常简单 一定要安装官方网站的最新版本,安装可以自动指定板子型号。

安装过程可分为两种 官网连接 http://wiringpi.com/download-and-install/

(不过官网上这个大叔是什么鬼啊,好魔性啊)

特别注意一点 以上的安装过程是在树莓派的Raspbain系统下安装的,因为我们最终的程序是在这个上面运行,但是我们编程的过程是在PC的虚拟机上进行的

因此,我们还要在PC虚拟机环境下支持这个库 。后面再说

那么可能会问:为什么不直接在windows上安装个集成开发环境,然后在把这个库包含进里面呢? 答案是还要用linux的其他资源啊

在eclipse、交叉编译、wiringPi安装完成的前提下 启动eclipse

1:新建个工程 选择CrossGcc 最好是Hello world模版 改一改就好了

2:配置编译环境 参照 raspberry pi 3开发环境

3:在工程目录 src文件夹下新建 dev_lib 、pi_gpio、wiringPi、三个文件夹

注意 这时候你的工程目录的src文件夹下就已经有了这几个文件夹了

4:在虚拟机Ubuntu中包含wiringPi 这里一定要使用下载文件这个方法 输入网址 ttps://git.drogon.net/?p=wiringPi;a=summary   点最后那个snapshot下载

把它复制到你eclipse的workspace中,然后解压

tar xfz wiringPi-b0a60c3.tar.gz
 
的到的文件夹如下
5:接下来依次把devlib、gpio、wiringPi 这几个文件夹里面的内容复制到刚才我们新建的那几个文件夹里 注意 一定要只复制.c和.h文件 其他的都不要。
当然有些可能没用,但是留着吧
6:到eclipse中依次刷新下dev_lib 、pi_gpio、wiringPi、三个文件夹 会看到新添加的文件

7:添加路径

8:编写程序  添加头文件

#include <stdlib.h>
#include <wiringPi.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>

main函数

    unsigned char i;
puts("init gpio...");
wiringPiSetup();
for( i = ; i < ; i++ )
pinMode(i, OUTPUT);
puts("init OK start..");
while ()
{
digitalWrite(, HIGH);
delay();
digitalWrite(, LOW);
delay();
}

9:这时候编译下 如果错 关于什么函数重定义的把那个函数所在的位置 添加static 还有个什么Old的文件 把那个也删了 。 然后如果有个关于linux线程的错误  按照下面的添加 pthread

在gpio.c文件里要屏蔽一个main函数 防止和自己的main函数冲突;

这样配置就结束了 把编译好的.elf文件通过samba放到树莓派的目录里 运行 查看GPIO 的状态即可 。

Raspberry Pi3 ~ Eclipse中添加wiringPi 库函数的更多相关文章

  1. 在MyEclipse和Eclipse中添加Hibernate开发工具

    一.插件准备 MyEclipse需要的插件:HibernateTools-3.2.4.zip Eclipse需要的插件:jbosstools-4.2.3.Final_2015-03-26_22-41- ...

  2. Eclipse中添加web dynamic project

    因为我的eclipse版本是kepler service release 2,所以我用了这个链接,http://download.eclipse.org/releases/helios/ 参考链接:  ...

  3. 如何在Eclipse中添加Tomcat的jar包

    原文:如何在Eclipse中添加Tomcat的jar包 右键项目工程,点击Java Build Path 点击Add Library,选择Server Runtime 选择Tomcat版本 此时就看到 ...

  4. 如何在Eclipse中添加Servlet-api.jar的方法

    方法一: 点击窗口->首选项->java->构建路径->类路径变量->新建:将你的tomcat目录下的common/lib/servlet.jar加进来.如果你建立了一个 ...

  5. eclipse中添加Java代码注释模板

    eclipse中添加Java代码注释模板 1.Window->Preference->Java->Code Style->Code Template,进入注释编辑界面 2.文件 ...

  6. eclipse中添加server后,启动server,访问项目时,端口是怎么选择的。

    1   eclipse中添加了tomcat 2 设置端口时,可以在图2.1修改 也可以在图2.2修改 3 点击server的publish按钮,会将图2.2的配置文件和server中添加的项目同步到实 ...

  7. [学习笔记] 在Eclipse中添加用户库 Add User Libraries ,在项目中引用用户库

    如果还没有安装Eclipse, 则请参考前文:  [学习笔记] 下载.安装.启动 Eclipse(OEPE) 添加用户库 本文主要介绍在项目中直接使用第三方库的情况.就是把第三方的jar文件直接放到某 ...

  8. eclipse中添加进新的java项目中文乱码

    eclipse中添加进新的java项目中文乱码 添加学习的一些项目进eclipse中,结果其中的中文注释都变成了乱码 右击项目,点最下面的属性,出来新得弹框 在文本文件编码部分可以发现是GBK格式,选 ...

  9. eclipse中添加python开发环境

    由于自己一直使用的是eclipse这个IDE,在写spark,java等都是用它,主要是用它比较顺手,也并不是觉得它有什么特别好的之处.下面主要介绍一下,在window系统下,eclipse中搭建py ...

随机推荐

  1. JVM垃圾回收机制总结(4) :新一代的垃圾回收算法

    垃圾回收的瓶颈 传统分代垃圾回收方式,已经在一定程度上把垃圾回收给应用带来的负担降到了最小,把应用的吞吐量推到了一个极限.但是他无法解决的一个问题,就是Full GC所带来的应用暂停.在一些对实时性要 ...

  2. 300. Longest Increasing Subsequence

    题目: Given an unsorted array of integers, find the length of longest increasing subsequence. For exam ...

  3. Linux远程文件传输

    linux系统中,难免会遇到一些要将某文件通过网络传送给其他主机的情况,而恰好两台主机 都是linux系统的时候,我们就可以直接使用scp命令来传输文件到另一台主机了. scp命令用于在网络中安全的传 ...

  4. Struts2入门学习

    1.Struts2的前身是Opensymphony的Webwork2,实际上Strut和Webwork2合并后形成Struts2.   2.一个HelloWord示例 1)创建Web应用,所需要的Ja ...

  5. javascript把IP地址转为数值几种方案,来挑战一下效率吧

    先看看什么是IP地址: IP地址是一个32位的二进制数,通常被分割为4个“8位二进制数”(也就是4个字节).IP地址通常用“点分十进制”表示成(a.b.c.d)的形式,其中,a,b,c,d都是0~25 ...

  6. U3D NGUI改变GameObject Activity闪烁的问题

    不是关闭再激活GameObject会闪烁,而是再激活时,NGUI渲染步骤不一致导致的闪烁. 并且文字激活后渲染要慢一帧,如果延迟一帧处理,又会导致精灵图片快一帧,图片重叠.这个测试结果不一定准确,先记 ...

  7. 《c程序设计语言》读书笔记--大写转小写

    #include <stdio.h> #include <stdlib.h> #include <string.h> int aoti(char c) { if(c ...

  8. C语言输出当前日期和时间

    #include <stdio.h> #include <time.h> char* asctime2(const struct tm *timeptr) { static c ...

  9. 《OD学hive》第四周0717

    一.Hive基本概念.安装部署与初步使用 1. 后续课程 Hive 项目:hadoop hive sqoop flume hbase 电商离线数据分析 CDH Storm:分布式实时计算框架 Spar ...

  10. 第四讲:hibernate 的session (二)

    Session在hibernate中表示连接.下面介绍他的常用方法. 在使用前先把最重要的说了.打开API,发现在session中基本所有的方法(包括获得session的方法)都会抛出异常Hibern ...