原文:http://www.cnblogs.com/hangxin1940/archive/2013/04/04/2999015.html

之前介绍了如何启用i2c设备 http://www.cnblogs.com/hangxin1940/archive/2013/04/02/2997077.html与 搭建python i2c开发环境http://www.cnblogs.com/hangxin1940/archive/2013/04/03/2997094.html

quick2wire是树莓派上用于i2c通信的一个python库,它可以方便的使用非root用户进行gpio引脚的读写操作.

为什么要用它?

一些硬件设备对于linux来说,是具有高权限的,只有root才能操作,那么在开发这些应用时,要读写一些硬件设备,就必须得具有root身份,这就带来了不便之处, 要知道 root用户是一切罪恶的根源 ,万一在root身份下,一不留神 #:/ rm * , 那可真是追悔莫及.

准备工作

sudo apt-get install git
sudo apt-get install python3
sudo apt-get install python-pip
sudo apt-get install python-virtualenv

安装quick2wire-gpio-admin

quick2wire-gpio-admin 工具提供了一种简便的方法来启用/关闭一个gpio引脚,它不需要当前用户拥有root权限.

在合适的位置下载uick2wire-gpio-admin的源码:

wget https://github.com/quick2wire/quick2wire-gpio-admin/archive/master.zip

或者

git clone https://github.com/quick2wire/quick2wire-gpio-admin.git

解压下载好的zip文件,并进入解压好的目录

编译安装

make
sudo make install

此时,就安装好了, 它在系统中以gpio-admin命令存在.

接下来将当前pi用户添加至gpio

sudo adduser pi gpio

退出再登录一下系统,确保用户分组的更改立即生效. 关于此命令的详细情况,请移步https://github.com/quick2wire/quick2wire-gpio-admin

安装quick2wire-python-api

quick2wire-python-api依赖于quick2wire-gpio-admin,而上一步我们已经做好了.

这个库就方便开发人员使用Python快速连接到树莓派的引脚

在合适的位置下载quick2wire-python-api的源码:

wget https://github.com/quick2wire/quick2wire-python-api/archive/master.zip

或者

git clone https://github.com/quick2wire/quick2wire-python-api.git

解压下载好的zip文件,并进入解压好的目录

安装这个python库

python3 setup.py install

至此,已经全部安装结束

更加详细的示例,请检出 https://bitbucket.org/thinkbowl/i2clibraries

更多请参考:

使用quick2wire访问GPIO引脚 http://github.com/quick2wire/quick2wire-python-api/blob/master/doc/getting-started-with-gpio.md

使用quick2wire访问I2C引脚 http://github.com/quick2wire/quick2wire-python-api/blob/master/doc/getting-started-with-i2c.md

通过quick2wire使用raspi的i2c和ks103通信的更多相关文章

  1. ubuntu下使用quick2wire控制RespberryPi2的I2C

    首先,开启树莓派的I2C驱动: 查看I2C驱动是否已经被加载:ls /dev -l | grep i2c,如果有形如 i2c-x 的显示结果表明驱动已经加载,否则驱动没有加载,需要进行如下操作: 修改 ...

  2. 理解一下单片机的I2C和SPI通信

    应某位网友要求,今天说一下单片机的I2C SPI通信,可能说不清楚,因为这毕竟要做实验才可完全理解. I2C和SPI是两种不同的通信协议. 听到协议,似乎高不可攀,其实协议就是人们定义的一个标准而已, ...

  3. raspi集成库及安装

    原文:http://blog.csdn.net/xukai871105/article/details/12684617   树莓派来自国外,国外嵌入式开源领域具有良好的分享精神,树莓派各种集成库也层 ...

  4. I2C 基础原理详解

    今天来学习下I2C通信~ I2C(Inter-Intergrated Circuit)指的是 IC(Intergrated Circuit)之间的(Inter) 通信方式.如上图所以有很多的周边设备都 ...

  5. I2C总线和S5PV210的I2C总线控制器

    一.什么是I2C通信协议? 1.物理接口:SCL + SDA (1)SCL(serial clock):时钟线,传输CLK信号,一般是I2C主设备向从设备提供时钟的通道. (2)SDA(serial ...

  6. Linux+I2C总线分析(主要是probe的方式)

    Linux I2C 总线浅析 ㈠ Overview Linux的I2C体系结构分为3个组成部分: ·I2C核心: I2C核心提供了I2C总线驱动和设备驱动的注册.注销方法,I2C通信方法(即“algo ...

  7. Smart210学习记录-----Linux i2c驱动

    一:Linux i2c子系统简介: 1.Linux 的 I2C 体系结构分为 3 个组成部分: (1) I2C 核心. I2C 核心提供了 I2C 总线驱动和设备驱动的注册.注销方法,I2C 通信方法 ...

  8. linux驱动之I2C

    include/linux/i2c.h struct i2c_msg;struct i2c_algorithm;struct i2c_adapter;struct i2c_client;struct ...

  9. (1)I2c的简介和特性

    I2C我是想全面深入的从嵌入式软件工程师的角度做个理解,刚刚还申请了一个专栏,这个好好写.         学习技术从外文文档看起-- 要全面了解I2C,可以从<I2C-bus specific ...

随机推荐

  1. Python基础篇 -- 小数据池和再谈编码

    小数据池 1. id() 通过id()可以查看到一个变量表示的值在内存中的地址 s = "Agoni" print(id(s)) # 2410961093272 2. is 和 = ...

  2. javaEE(17)_邮件原理与JavaMail开发

    一.Java邮件开发介绍 为什么要学习javamail开发 •现在很多WEB应用在开发时都需要集成邮件发送功能,例如: •给新注册的用户自动发送一封包含其注册信息的欢迎E-Mail. •给过生日的注册 ...

  3. Bzoj3170: [Tjoi2013]松鼠聚会 (切比雪夫距离)

    题目链接 显然,题目要求我们求切比雪夫距离,不会的可以去看一下attack的博客. 考虑枚举所有的点 转换为曼哈顿距离后. 那么对于这个点的路程和是. \[\sum_{i=1}^n | x_i - x ...

  4. 【图论】hdu6370Werewolf

    有理有据的结论题 Problem Description "The Werewolves" is a popular card game among young people.In ...

  5. 【Java_多线程并发编程】JUC原子类——原子类中的volatile变量和CAS函数

    JUC中的原子类是依靠volatile变量和Unsafe类中的CAS函数实现的. 1. volatile变量的特性 内存可见性(当一个线程修改volatile变量的值后,另一个线程就可以实时看到此变量 ...

  6. grafana绘制图表

    安装方法 系统为ubuntu16 1首先添加以下到/etc/apt/sources.list: deb https://packagecloud.io/grafana/stable/debian/ s ...

  7. cdev_add

    初始化 cdev 后,需要把它添加到系统中去.为此可以调用 cdev_add()函数.传入cdev 结构的指针,起始设备编号,以及设备编号范围. 函数首先将分配的设备号与设备数目保存进cdev结构体中 ...

  8. MySQL外键设置 级联删除

    . cascade方式在父表上update/delete记录时,同步update/delete掉子表的匹配记录 . set null方式在父表上update/delete记录时,将子表上匹配记录的列设 ...

  9. luogu2483 【模板】k短路([SDOI2010]魔法猪学院)

    模板题 #include <iostream> #include <cstring> #include <cstdio> #include <queue> ...

  10. Apache 流框架 Flink,Spark Streaming,Storm对比分析(1)

    此文已由作者岳猛授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 1.Flink架构及特性分析 Flink是个相当早的项目,开始于2008年,但只在最近才得到注意.Flink是 ...