上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 27 下一页
摘要: USB设备逻辑结构 在USB设备的逻辑组织中,包含设备、配置、接口和端点4个层次。设备通常有一个或多个配置,配置通常有一个或多个接口,接口通常有零个或多个端点。 USB设备描述符 当我们把USB设备(例如USB鼠标)插到我们的PC时,主机能够自动识别出我们的USB设备类型。在每一个USB设备内部,包 阅读全文
posted @ 2016-03-19 09:51 盛夏夜 阅读(335) 评论(0) 推荐(0) 编辑
摘要: USB发展史 USB(universal serial bus),通用串行总线,是一种外部总线标准。用于规范电脑与外部设备的连接和通讯。USB是在1994年底由英特尔、康柏、IBM、Microsoft等多家公司联合提出的。自1996年堆出后,已经成功替代了串口和并口。成为当今个人电脑和大量智能设备的 阅读全文
posted @ 2016-03-18 20:48 盛夏夜 阅读(383) 评论(0) 推荐(0) 编辑
摘要: SPI Flash驱动 1.打开/drivers/mtd/devices/m25p80.c驱动文件。找到初始化m25p80_init函数,其中通过spi_register_driver来注册spi设备驱动。需要的参数是struct spi_driver指针结构。 2.匹配函数是在m25p_probe 阅读全文
posted @ 2016-03-18 20:06 盛夏夜 阅读(308) 评论(0) 推荐(0) 编辑
摘要: SPI 子系统架构 1.SPI core核心:用于连接SPI客户驱动和SPI主控制器驱动,并且提供了对应的注册和注销的接口。 2.SPI controller driver主控制器驱动:用来驱动SPI控制器。 3.SPI protocol drvier客户驱动:用来驱动SPI设备 SPI控制器驱动分 阅读全文
posted @ 2016-03-18 19:36 盛夏夜 阅读(221) 评论(0) 推荐(0) 编辑
摘要: SPI控制器工作流程 SPI控制器提供2个SPI接口。每个SPI接口有两个通道,分别为TX通道和RX通道。CPU要写数据到FIFO中,先写数据到SPI_TX_DATA寄存器中,这样此寄存器中的内容就会自动移动到发送FIFO中;同理,如果CPU要从接收FIFO中读取数据,就访问寄存器SPI_RX_DA 阅读全文
posted @ 2016-03-18 16:54 盛夏夜 阅读(296) 评论(0) 推荐(0) 编辑
摘要: SPI总线架构 SPI(serial peripheral interface)串行外设接口,是一种高速,全双工,同步的通信总线。采用主从模式(master slave)架构,支持多个slave,一般仅支持一个master。 SPI信号线 SPI接口共有4根信号线,分别是:设备选择线(SS)、时钟线 阅读全文
posted @ 2016-03-18 16:11 盛夏夜 阅读(254) 评论(0) 推荐(0) 编辑
摘要: AT24C08的驱动在Linux内核中已经提供,在/drivers/misc/eeprom/at24.c文件中。在对应的probe函数中有一个创建/sys/.../eeprom文件的函数,应用程序通过调用/sys/.../eeprom设备文件来对设备进行读写操作。 移植AT24C08驱动 1.修改内 阅读全文
posted @ 2016-03-18 15:44 盛夏夜 阅读(491) 评论(0) 推荐(0) 编辑
摘要: 用户态驱动模型 用户态驱动模型首先是一个应用程序,其次是在这个用户程序中通过内核调用来驱动设备。 IIC通用驱动代码 IIC通用驱动程序的代码在/drivers/i2c/i2c-dev.c中。一次读操作或者一次写操作就是一条消息。 EEPROM用户态驱动 IIC通用设备对应/dev/i2c-0设备文 阅读全文
posted @ 2016-03-17 21:01 盛夏夜 阅读(423) 评论(0) 推荐(0) 编辑
摘要: IIC子系统架构 device driver层: 1.device driver,由用户开发。 2.i2c-dev由内核实现,但是需要配合应用模式驱动才能使用。 i2c core层: 1.总线驱动,也叫控制器驱动。实现对i2c控制器的操作方法。 2.i2c核心。关联设备驱动和总线驱动,提供设备的注册 阅读全文
posted @ 2016-03-17 16:44 盛夏夜 阅读(187) 评论(0) 推荐(0) 编辑
摘要: eeprom简介 eeprom电可擦除可编程只读存储器,是一种类似于flash的固态存储器,但是与flash相比又存在一些区别: 1.eeprom可以按位擦写,而flash只能大片擦除。 2.eeprom一般容量都不大,一般都在64kb以下。 I2C初始化 在ARM内部有I2C控制器,可以对I2C器 阅读全文
posted @ 2016-03-17 15:57 盛夏夜 阅读(378) 评论(0) 推荐(0) 编辑
上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 27 下一页