Linux驱动学习
霁风AI
通领时代,信系未来
展开
-
S3C6410使用---25 I2C设备驱动分析
注:转自: http://www.programgo.com/article/83144546859/;jsessionid=0BE6120516C6BEFFEA6CE4410474380D一. I2C设备 的定义及其添加过程1 .1 数据结构include/linux/i2c.h: struct i2c_board_info { char type[I2C_NAME_SI转载 2016-08-17 21:57:20 · 530 阅读 · 0 评论 -
S3C6410使用---26IIC总线控制器驱动分析
注:转自:http://blog.chinaunix.net/uid-26009923-id-3810550.html一. I2C控制器设备的定义1.0 I2C控制器设备的定义及注册a. 在arch/arm/plat-samsung/dev-i2c0.c中,定义了I2C控制器设备的资源,static struct resource s3c_i2c_resource[] = { [0] =转载 2016-08-17 22:07:29 · 404 阅读 · 0 评论 -
SMBus
smbus协议注:转自 (http://www.programgo.com/article/30501004562/)1、介绍 系统管理总线(SMBus)是一个两线接口。通过它,各设备之间以及设备与系统的其他部分之间可以互相通信。它基于I2C操作原理。SMBus为系统和电源管理相关的任务提供一条控制总线。一个系统利用SMBus可以和多个设备互传信息,而不需使用独立的控制线路。 系统管理总线转载 2016-08-18 09:32:33 · 5768 阅读 · 2 评论 -
_IO, _IOR, _IOW, _IOWR 宏的用法与解
注:[转自] (http://blog.chinaunix.net/uid-20754793-id-177774.html)今天在写字符驱动验证程序的时候要用到ioctl函数,其中有一个cmd参数,搞了半天也不了解是什么意思,那个cmd还有什么命令码了什么的,还好google下,觉得这篇文章写的不错,就转来看看: 在驱动程序里, ioctl() 函数上传送的变量 cmd 是应用程序用于区别设备驱动转载 2016-08-18 15:21:33 · 513 阅读 · 0 评论 -
最简Linux驱动
一、实验目的:编写Linux最简驱动二、实验平台迅为itop4412开发板(开发板运行Linux最小系统)三、实验流程:(1)了解最简驱动:包含头文件;模块信息声明;模块驱动的入口、出口;功能实现四个部分。Linux头文件:它们是在Linux源码目录下的:include/linux/ 信息声明:所有的Linux 代码必须遵循GPL 协议,如果不声明GPL 协议,模块将无法在Linux 中使用。原创 2016-08-13 21:28:34 · 823 阅读 · 0 评论 -
基于迅为4412的一个GPIO输出高低电平的驱动
窗外的天空不再湛蓝,我知道北京的冬天快要来了,自己也即将走上一段新的旅途。过去的时光如民大秋天的银杏叶,静静的飘落,随风而来,随风而逝。 最近在实验室调试一个语音模块,就用GPIO做了一个数据接收的开关。参考网上的资料弄了一个输出高低电平的驱动。 驱动程序:/*包含初始化宏定义的头文件,代码中的module_init和module_exit在此文件中*/#include <linux/init原创 2016-09-25 16:02:41 · 1457 阅读 · 0 评论 -
基于迅为Itop4412开发板上控制ds18b20测量温度
1、说明:供电为3.3V(3—5V),DQ引脚为gpio的13脚; 如果要直接编译进入内核,需要配置内核驱动字符目录下的Makefile、Kconfig、make menuconfig三处文件,如果以平台设备的方式,还需配置mach-itop4412.c这个文件。原在4412上13脚原为485,需要先去掉。2、驱动代码/*包含初始化宏定义的头文件,代码中的module_init和module_ex原创 2016-09-25 16:30:26 · 2555 阅读 · 3 评论