- 博客(5)
- 收藏
- 关注
原创 platform 设备树 点灯
设备树下platform框架下的驱动编写 前面已经介绍了platform的相关基础概念,但是对于具体的驱动编写并没有进行深入分析和总结,因此这一篇博客重在通过驱动的编写来增强对Platform框架的理解。 设备树下的Platform驱动简介 platform驱动框架分为总线,设备和驱动,其中总线不需要我们这些驱动程序员去管理,这个是Linux内核提供的,我们在编写驱动的时候只要关注设备和驱动的具体实现即可,当内核在解析设备树的时候会自动帮我们创建一个platform_device对象,那么在编写基于设备树的
2021-08-27 17:23:22
318
原创 pwmIP
自定义PWM IP核linux驱动 AXI IP核简介 通过自定义IP核可以简化系统设计和缩短产品上市时间的目的。AXI4接口的IP核用于PS和PL端的数据通信,这里我们通过创建一个带有AXI4接口的IP核,该IP核通过AXI协议实现PS和PL端的数据通信。关于AXI协议后续在介绍。这里我们简单看一下系统框图 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XdwbvTAn-1630051286460)(/mnt/Markdown/PWM_IP.png)] PL端的MIO连接到
2021-08-27 16:01:49
460
原创 IIC 设备linux驱动编写
Linux I2C总线框架(RX8010SJ rtc时钟添加到zynq) Linux内核开发者为了让驱动开发工程师可以在内核中方便添加自己的I2C设备的驱动程序,从而可以更容易的在linux下驱动自己的I2C接口硬件,进而引入I2C总线框架,与linux下的platform不同,I2C是实际的物理总线。 I2C 简介 I2C是很常见的一种总线协议,由NXP公司设计。I2C使用两条线在主控制器和从机之间进行数据通信。一条是SCL(串行时钟线),另一条是SDA(串行数据线),这两条数据线需要接上拉电阻,总线空闲
2021-08-26 16:29:18
774
原创 linux input子系统下驱动编写
Linux input 子系统 介绍 按键,鼠标,键盘,触摸屏等都属于(input)设备,linux内核为此专门做了一个叫做input子系统的框架来处理输入事件。输入设备本质上还是字符设备,只是在此基础上用了input框架,用户只需要负责上报输入事件,比如按键值,坐标等信息,input核心层负责处理这些事件。 框架 硬件输入设备 内核空间 驱动层/核心层/事件层 用户空间 按键 GPIO input core 设备访问节点 USB键盘/鼠标 USB HID input core 设备访问
2021-08-25 16:32:20
246
原创 关于linux驱动开发中的platform设备驱动模型介绍
介绍linux的platform设备驱动(平台设备驱动) Linux驱动的分离与分层 驱动的分隔和分离 如果对驱动不进行分隔和分离,则会产生以下影响,如表。 主机驱动 设备驱动 A平台主机驱动 MPU6050驱动 B平台主机驱动 MPU6050驱动 C平台主机驱动 MPU6050驱动 在三个平台A,B,C上均要编写MOU6050驱动,那么此时就要编写三个不同的设备驱动,因此我们可以通过一个统一的接口(主机驱动),每个设备也只提供一个驱动程序(设备驱动),每个设备通过统一的I2C接
2021-08-14 17:24:18
320
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人