
kernel-driver-i2c
kernel-driver-i2c
kunkliu
good good study
展开
-
Linux I2C设备读写应用程序
转载地址:http://blog.youkuaiyun.com/daniel117/article/details/17376233在linux中,I2C总线被做为一个标准总线加进内核,所有的I2C设备都被挂到该总线上,通过I2c core进行管理,设备驱动通过调用I2c core中的注册函数将I2C驱动注册到I2C总线上,在probe到相应I2C设备时为之创建一个adapter,并将其添加到adap转载 2017-09-21 15:50:43 · 3973 阅读 · 0 评论 -
I2C子系统之I2C bus初始化——I2C_init()
转载地址:http://www.linuxidc.com/Linux/2012-08/68261.htm根据前文的分析(http://www.linuxidc.com/Linux/2012-08/68260.htm),在linux内核启动的时候最先执行的和I2C子系统相关的函数应该是driver/i2c/i2c-core.c文件中的i2c_init()函数。下面具体此函数具体做了那转载 2017-10-10 17:33:22 · 1163 阅读 · 0 评论 -
I2C子系统之 adapter driver注册——I2C_dev_init()
转载地址:http://www.linuxidc.com/Linux/2012-08/68267.htmi2c的操作在内核中是当做字符设备来操作的,相关初始化在由i2c_dev_init函数来初始化。并且i2c adapter的驱动通过i2cdev_driver这个通用驱动的attach方法来实现注册的。下面具体分析整个过程。static int __init i2c_de转载 2017-10-10 17:35:40 · 676 阅读 · 0 评论 -
i2c-tools的移植和使用
转载地址:http://bbs.elecfans.com/jishu_516292_1_1.html1 下载i2c-tools-3.1.1.tar.bz22 解压后修改Makefile CC =arm-linux-gnueabihf-gcc LDFLAGS += -static3 make 成功后会在tools目录下生成 i2cdetect i2cdump转载 2017-10-12 18:25:00 · 4497 阅读 · 0 评论 -
i2c-tools的使用方法
转载地址:http://blog.youkuaiyun.com/mantis_1984/article/details/18254767/最近在调试ADV7401,调试的过程难免要反复修改寄存器,然后看结果现象。传统的做法是修改驱动代码寄存器值->编译->下载->运行->看结果,这一过程比较费时间,而我每次需要改的可能只是1个bit,有没有更便捷的方法呢? 在浏览TI E2E论坛...转载 2017-10-12 18:29:45 · 1502 阅读 · 0 评论 -
help2416_at24c16测试_eeprog
转载地址:http://bbs.eeworld.com.cn/thread-444753-1-1.html恩,测试了一下helper2416板子上面的AT24C16,使用一个开源的源码包,eeprog-0.7.6.tar.gz板子默认上面也是有编译好了在/usr/bin下面,可以直接使用。为了从头学习,去源码主页看看,并下载源码编译与测试。主页地址:http://www.c转载 2017-10-13 10:40:07 · 435 阅读 · 0 评论 -
I2C-tool使用
转载地址:http://blog.youkuaiyun.com/smilefyx/article/details/227555211.下载 i2c-tools-3.0.2.tar.bz22. 解压后,修改Makefile文件,选择arm的编译器,同时在tools的Module.mk文件中编译选项中添加-static静态编译选项,不然生成的执行文件会提示无法找到的提示;静态-static 添加在转载 2017-10-13 10:51:11 · 628 阅读 · 0 评论 -
Linux下的eeprom读写操作
转载地址:http://blog.youkuaiyun.com/yuzeze/article/details/51890555利用Linux内核自带的IIC总线驱动,按系统提供的框架,用ioctl方法对eeprom设备进行读写操作,并分别按单字节及多字节读写方式,对外提供函数接口,以供外部程序方便调用。 程序由3个文件组成,分别为头文件,函数实现文件,及测试程序。/* *********转载 2017-10-13 13:58:39 · 1650 阅读 · 0 评论 -
Linux应用层的i2c读写
转载地址:http://blog.youkuaiyun.com/wangweiqiang1325/article/details/52411709i2c通道在开发过程中使用是非常的方便的,主要是由于其简单的结构,i2c主要有SCL,SDA两条通道,一个时钟线,一个数据线,这也是i2c之所以应用如此普遍的原因。i2c的时序如下:实现上述时序,便可以轻松通过i2c读写寄存器了,接下来看看i2c下在转载 2017-10-13 17:24:09 · 3817 阅读 · 0 评论 -
LinuxI2C驱动--从两个访问eeprom的例子开始
转载地址:http://blog.youkuaiyun.com/maopig/article/details/56682519本小节介绍两个在linux应用层访问eeprom的方法,并给出示例代码方便大家理解。第一个方法是通过sysfs文件系统对eeprom进行访问,第二个方法是通过eeprom的设备文件进行访问。这两个方法分别对应了i2c设备驱动的两个不同的实现,在后面的小结会详细的分析。转载 2017-10-13 17:40:14 · 785 阅读 · 0 评论 -
Linux i2c驱动(eeprom 读写)
转载地址:http://blog.youkuaiyun.com/tchonggang77/article/details/7366027一、M24256简介1、256 Kbit Serial I²C Bus EEPROM2、Compatible with I2C Extended Addressing3、Two Wire I2C Serial Interface4、Supports 4转载 2017-10-13 17:48:27 · 1657 阅读 · 0 评论 -
Linux I2C read eeprom 从应用层看系统
转载地址:http://www.zhimengzhe.com/bianchengjiaocheng/qitabiancheng/302708.htmlLinux 操作I2C从设备有两种不同的方法。本篇文章将会介绍通过系统总线来操作I2C设备的流程。在应用层操作I2C,使用ioctl来传参。 ret = ioctl(fd, I2C_RDWR, (unsigned long)&erom转载 2017-10-13 17:52:09 · 1100 阅读 · 0 评论 -
基于S3C2440的嵌入式Linux驱动——AT24C02(EEPROM I2C接口)驱动解读
转载地址:http://blog.youkuaiyun.com/yj4231/article/details/18182775本文将介绍Linux中AT24C02驱动。AT24C02是一种EEPROM,使用I2C接口来访问。在开发板中,使用I2C控制器0和AT24C02连接,这里就不给出原理图了,如需要,可以搜索TQ2440开发板的原理图。目标平台:TQ2440 CPU:s3c2440转载 2017-10-13 17:58:34 · 326 阅读 · 0 评论 -
S3C2440 Linux驱动移植——AT24C02(EEPROM)驱动
转载地址:http://blog.youkuaiyun.com/yj4231/article/details/18145973开发板:TQ2440内核:Linux 2.6.32PC OS:Ubuntu 11.041.配置内核打开I2C功能:打开杂项设备,该选项打开后,EEPROM也就打开了。 2. 修改代码修改文件: linux/arch/ar转载 2017-10-13 18:00:54 · 358 阅读 · 0 评论 -
Error: Can't use SMBus Read Byte command on this bus
转载地址:https://blog.youkuaiyun.com/sg656720274/article/details/90703906打开工具源码注释掉#if 0if (mode != MODE_READ && !(funcs & I2C_FUNC_SMBUS_QUICK)) {fprintf(stderr, "Error...转载 2019-06-20 16:45:03 · 1008 阅读 · 0 评论 -
I2C驱动情景分析——怎样控制I2C时序
转载地址:http://www.linuxidc.com/Linux/2014-05/101647.htm内核版本:linux-3.4.2源程序: linux-3.4.2\drivers\i2c\busses\I2c-s3c2410.c这次要解决的问题是:如何配置soc的I2C模块,输出想要的时序波形?关于Linux里I2C驱动的架构,在转载的文章讲得相当透彻(《linu转载 2017-10-10 17:26:49 · 447 阅读 · 1 评论 -
I2C驱动情景分析——怎样增加I2C设备
转载地址:http://www.linuxidc.com/Linux/2014-05/101649.htm内核版本:linux-3.4.2直奔主题,在Linux下怎样增加一个I2C设备呢? 假设手上有一块从淘宝上买来的开发板,我要在开发板的I2C总线上增加一个从设备(如at24c08),那么我要怎样写这个“I2C设备驱动”,让 应用程序可以访问at24c08呢?转载 2017-10-10 17:25:18 · 276 阅读 · 0 评论 -
LINUX的IIC从这开始(一)
转载地址:http://blog.youkuaiyun.com/xie0812/article/details/22942375LINUX的版本:linux-3.0.8iic对大家肯定不陌生,我就不介绍它的什么优点缺点的了,尤其是以前开发过单片机的同志们,动不动就用io口模拟一个iic接口,对什么起始啊,应答啊,结束啊都比较了解,但linux的iic驱动是有自己的模型的,当然你也可以继续用io口模转载 2017-09-21 16:20:35 · 927 阅读 · 0 评论 -
LINUX的IIC驱动从这开始(二)
转载地址:http://blog.youkuaiyun.com/xie0812/article/details/22916961LINUX下IIC驱动体系中的四个主要数据结构以及相互之间的关系[cpp] view plain copy "font-size:14px;">struct i2c_driver { unsigned int class;转载 2017-09-21 16:26:34 · 278 阅读 · 0 评论 -
LINUX的IIC驱动从这开始(三)
转载地址:http://blog.youkuaiyun.com/xie0812/article/details/22984527这一篇主要是在友善的Smart210开发板上写一个符合linux的iic驱动模型的设备驱动程序,这样能有一个更感性的认识。开发环境介绍:主机linux版本:fedora14开发板:友善的Smart210嵌入式linux版本:linux-3.0.8(友善光盘自带转载 2017-09-21 16:35:07 · 338 阅读 · 0 评论 -
LINUX的IIC驱动从这开始(四)
转载地址:http://blog.youkuaiyun.com/xie0812/article/details/24291153首先这篇文章主要介绍IIC总线的实现过程,怎么说了,本人也是一个小菜鸟,可能有许多错误在里面,如有大神发现,请指出来,多谢多谢!注意:平台还是和前面的一样,所以分析三星的iic总线实现,当然这部分,可能不需要咱们驱动工程师实现,但本人认为好好研究这部分内容有助于提高水平,转载 2017-09-21 16:53:49 · 791 阅读 · 0 评论 -
linux下I2C驱动架构全面分析
转载地址:http://blog.youkuaiyun.com/wangpengqi/article/details/17711165I2C 概述 I2C是philips提出的外设总线. I2C只有两条线,一条串行数据线:SDA,一条是时钟线SCL ,使用SCL,SDA这两根信号线就实现了设备之间的数据交互,它方便了工程师的布线。 因此,I2C总线被非常广泛地应用在E转载 2017-09-22 14:15:10 · 367 阅读 · 0 评论 -
Linux 设备驱动篇之I2c设备驱动
转载地址:http://blog.youkuaiyun.com/fulinus/article/details/9008191Linux 设备驱动篇之I2c设备驱动fulinux一、I2C驱动体系虽然I2C硬件体系结构和协议都很容易理解,但是Linux I2C驱动体系结构却有相当的复杂度,它主要由3部分组成,即I2C设备驱动、I2C总线驱动和I2C核心。1.I2C核心I2C核心是I转载 2017-09-21 17:09:17 · 722 阅读 · 0 评论 -
linux IIC详解
转载地址:http://blog.youkuaiyun.com/smilefyx/article/details/216594011 简介 I2C 总线仅仅使用 SCL 、 SDA 两根信号线就实现了设备之间的数据交互,极大地简化对硬件资源和 PCB 板布线空间的占用。因此, I2C 总线被非常广泛地应用在 EEPROM 、实时钟、小型 LCD 等设备与 CPU 的接口中。转载 2017-09-29 15:47:37 · 1397 阅读 · 0 评论 -
编写i2c驱动-基于Linux3.10
转载地址:http://blog.youkuaiyun.com/shichaog/article/details/41169981很多芯片的控制方法均使用了i2c的方式,EEPROM,音频芯片AK4951,索尼、松下、豪威的图像传感器、电机驱动等均采用i2c的控制方式。彻底的弄懂i2c设备驱动,对于理解其它驱动非常有帮助,从投入和产出比而言还是值得的。I2c设备分为两种,一种叫i2c适配器(adp转载 2017-09-30 13:35:26 · 487 阅读 · 0 评论 -
Linux i2c子系统
转载地址:http://m.blog.youkuaiyun.com/encourage2011/article/details/51723154一、前言因为自己在研发过程中经常要涉及到tp驱动程序,而tp驱动就涉及到i2c驱动。经常可以看到在驱动程序中会定义一个struct i2c_driver的数据结构,并实现里面的某些成员,比如probe、resume、suspend、remove、id_tabl...转载 2017-09-30 13:49:09 · 417 阅读 · 0 评论 -
Linux I2C framework(1)_概述
转载地址:http://www.wowotech.net/comm/i2c_overview.html1. 前言I2C协议是嵌入式系统中广泛使用的一类通信协议,主要用于CPU和各种外设之间的低速数据通信。Linux kernel使用I2C framework抽象、管理相应的资源,并以各种形式,向各类使用者提供API。另外,作为总线(bus)的一种,I2C framework的实现体现了转载 2017-09-30 14:37:16 · 323 阅读 · 0 评论 -
Linux I2C framework(2)_I2C provider
转载地址:http://www.wowotech.net/comm/i2c_provider.html1. 前言本文从Provider的角度,介绍怎么借助I2C framework管理I2C相关的SOC资源。换句话说,就是怎么编写I2C controller驱动。2. 关键数据结构和API介绍2.1 I2C adapter由“Linux I2C framework(1)_概转载 2017-09-30 14:48:26 · 557 阅读 · 0 评论 -
Linux I2C framework(3)_I2C consumer
转载地址:http://www.wowotech.net/comm/i2c_consumer.html1. 前言本文从I2C consumer的角度,介绍怎么在linux中,利用I2C framework提供的接口,编写I2C slave device的驱动程序。2. 两种设备形态嵌入式系统中,I2C总线上连接的slave device,有两种形态,如下:图片1 I2C转载 2017-09-30 15:18:28 · 735 阅读 · 0 评论 -
Linux3.5下I2C设备驱动程序
转载地址:http://blog.youkuaiyun.com/fengel_cs/article/details/50522495知识背景:1. I2C协议2. 4412处理器I2C接口说明3. bus-dev-drv模型(详见文章-Linux下驱动:分层、分离机制学习笔记)4. linux内核下驱动设计基本知识一、驱动框架 以4412+linux3.转载 2017-09-30 15:25:15 · 290 阅读 · 0 评论 -
Linux的i2c驱动详解
转载地址:http://blog.chinaunix.net/uid-14753126-id-3180601.html1 简介 I2C 总线仅仅使用 SCL 、 SDA 两根信号线就实现了设备之间的数据交互,极大地简化对硬件资源和 PCB 板布线空间的占用。因此, I2C 总线被非常广泛地应用在 EEPROM 、实时钟、小型 LCD 等设备与 CPU 的接口中。Linux I转载 2017-10-10 15:13:12 · 1031 阅读 · 1 评论 -
Linux I2C子系统分析之(一) ----- 用GPIO模拟I2C总线
转载地址:http://blog.youkuaiyun.com/tommy_wxie/article/details/7408328在drivers/i2c/busses下包含各种I2C总线驱动,如S3C2440的I2C总线驱动i2c-s3c2410.c,使用GPIO模拟I2C总线的驱动i2c-gpio.c,这里只分析i2c-gpio.c。i2c-gpio.c它是gpio模拟I2C总线的驱动,总线转载 2017-10-10 16:35:21 · 1968 阅读 · 0 评论 -
Linux内核学习:I2C_SLAVE_FORCE
转载地址:https://blog.youkuaiyun.com/tomxue0126/article/details/8245226 在Linux内核源代码include/linux/i2c-dev.h文件内,有如下定义:#define I2C_SLAVE 0x0703 /* Use th...转载 2019-06-25 15:54:07 · 3459 阅读 · 0 评论