通过quick2wire使用raspi的i2c和ks103通信
原文: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通信的更多相关文章
- ubuntu下使用quick2wire控制RespberryPi2的I2C
首先,开启树莓派的I2C驱动: 查看I2C驱动是否已经被加载:ls /dev -l | grep i2c,如果有形如 i2c-x 的显示结果表明驱动已经加载,否则驱动没有加载,需要进行如下操作: 修改 ...
- 理解一下单片机的I2C和SPI通信
应某位网友要求,今天说一下单片机的I2C SPI通信,可能说不清楚,因为这毕竟要做实验才可完全理解. I2C和SPI是两种不同的通信协议. 听到协议,似乎高不可攀,其实协议就是人们定义的一个标准而已, ...
- raspi集成库及安装
原文:http://blog.csdn.net/xukai871105/article/details/12684617 树莓派来自国外,国外嵌入式开源领域具有良好的分享精神,树莓派各种集成库也层 ...
- I2C 基础原理详解
今天来学习下I2C通信~ I2C(Inter-Intergrated Circuit)指的是 IC(Intergrated Circuit)之间的(Inter) 通信方式.如上图所以有很多的周边设备都 ...
- I2C总线和S5PV210的I2C总线控制器
一.什么是I2C通信协议? 1.物理接口:SCL + SDA (1)SCL(serial clock):时钟线,传输CLK信号,一般是I2C主设备向从设备提供时钟的通道. (2)SDA(serial ...
- Linux+I2C总线分析(主要是probe的方式)
Linux I2C 总线浅析 ㈠ Overview Linux的I2C体系结构分为3个组成部分: ·I2C核心: I2C核心提供了I2C总线驱动和设备驱动的注册.注销方法,I2C通信方法(即“algo ...
- Smart210学习记录-----Linux i2c驱动
一:Linux i2c子系统简介: 1.Linux 的 I2C 体系结构分为 3 个组成部分: (1) I2C 核心. I2C 核心提供了 I2C 总线驱动和设备驱动的注册.注销方法,I2C 通信方法 ...
- linux驱动之I2C
include/linux/i2c.h struct i2c_msg;struct i2c_algorithm;struct i2c_adapter;struct i2c_client;struct ...
- (1)I2c的简介和特性
I2C我是想全面深入的从嵌入式软件工程师的角度做个理解,刚刚还申请了一个专栏,这个好好写. 学习技术从外文文档看起-- 要全面了解I2C,可以从<I2C-bus specific ...
随机推荐
- Python基础篇 -- 小数据池和再谈编码
小数据池 1. id() 通过id()可以查看到一个变量表示的值在内存中的地址 s = "Agoni" print(id(s)) # 2410961093272 2. is 和 = ...
- javaEE(17)_邮件原理与JavaMail开发
一.Java邮件开发介绍 为什么要学习javamail开发 •现在很多WEB应用在开发时都需要集成邮件发送功能,例如: •给新注册的用户自动发送一封包含其注册信息的欢迎E-Mail. •给过生日的注册 ...
- Bzoj3170: [Tjoi2013]松鼠聚会 (切比雪夫距离)
题目链接 显然,题目要求我们求切比雪夫距离,不会的可以去看一下attack的博客. 考虑枚举所有的点 转换为曼哈顿距离后. 那么对于这个点的路程和是. \[\sum_{i=1}^n | x_i - x ...
- 【图论】hdu6370Werewolf
有理有据的结论题 Problem Description "The Werewolves" is a popular card game among young people.In ...
- 【Java_多线程并发编程】JUC原子类——原子类中的volatile变量和CAS函数
JUC中的原子类是依靠volatile变量和Unsafe类中的CAS函数实现的. 1. volatile变量的特性 内存可见性(当一个线程修改volatile变量的值后,另一个线程就可以实时看到此变量 ...
- grafana绘制图表
安装方法 系统为ubuntu16 1首先添加以下到/etc/apt/sources.list: deb https://packagecloud.io/grafana/stable/debian/ s ...
- cdev_add
初始化 cdev 后,需要把它添加到系统中去.为此可以调用 cdev_add()函数.传入cdev 结构的指针,起始设备编号,以及设备编号范围. 函数首先将分配的设备号与设备数目保存进cdev结构体中 ...
- MySQL外键设置 级联删除
. cascade方式在父表上update/delete记录时,同步update/delete掉子表的匹配记录 . set null方式在父表上update/delete记录时,将子表上匹配记录的列设 ...
- luogu2483 【模板】k短路([SDOI2010]魔法猪学院)
模板题 #include <iostream> #include <cstring> #include <cstdio> #include <queue> ...
- Apache 流框架 Flink,Spark Streaming,Storm对比分析(1)
此文已由作者岳猛授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 1.Flink架构及特性分析 Flink是个相当早的项目,开始于2008年,但只在最近才得到注意.Flink是 ...