嵌入式内核及驱动开发(高级)

简介:驱动开发是嵌入式Linux 开发难度最高的内容。驱动开发既要熟悉相关硬件的操作又要深入理解内核中驱动框架和相关机制。本课程主要讲解驱动开发中的高级内容,包括高级驱动学习方法、输入子系统、I2c子系统、设备树等重要内容。

课程章节

第01课 高级驱动学习方法
课时1字符设备驱动编写时引起的思考
课时2分层框架和面向对象的思想
课时3高级驱动学习特点和目标
第02课 输入子系统1
课时1输入子系统的作用
课时2输入子系统的框架
课时3最简单的输入设备驱动程序编写
课时4输入子系统中硬件初始化和上报数据
课时5应用程序读取输入设备数据的方式
第03课 输入子系统2
课时1input device的初始化解释
课时2添加input device的信息
课时3设置位表和上报数据的另外一种方式
课时4设备树中定义按键信息的子节点
课时5代码中分析所有的子节点
课时6初始化所有的按键并驱动起来
第04课 输入子系统3
课时1应用程序读取多个按键和驱动代码的结构分析
课时2输入子系统工作逻辑初识
课时3input三层的分析
课时4evdev_connect函数分析
课时5input handler和input device和handle之间的关系
课时6应用是如何调用到输入子系统中去的
第05课 输入子系统4
课时1evdev_open的实现过程
课时2evdev_read读取输入子系统的数据方式
课时3input_event()上报数据的实现过程
课时4evdev_events中填充缓冲区数据的过程
第06课 I2C子系统上
课时1I2C协议和时序讲解
课时2Linux I2C驱动框架
课时3Linux I2C总线和平台总线的结合
课时4Linux I2C从设备的设备树信息的添加
课时5Linux I2C client_driver_adatper_msg等对象的讲解
第07课 I2C子系统下
课时1MPU6050的I2C driver驱动框架编写
课时2MPU6050操作寄存器
课时3读取MPU6050数据寄存器并上报给用户
课时4应用程序读取重力加速度和陀螺仪的值
第08课 设备树(上)
课时1初识设备树
课时2设备树的由来
课时3设备树文件的编译
课时4内核使用dtb文件的过程
课时5节点和属性
课时6常见的属性compatible-reg等
第09课 设备树(下)
课时1在dts中添加新的节点
课时2of解析dts节点的API
课时3代码中获取节点
课时4获取属性
课时5获取属性中的整数数组
课时6获取属性中字符串数组
课时7定义和获取dts中的中断信息
课时8验证dts的中断信息
课时9dts替代平台设备的pdev硬编码方式

相关下载

点击下载

参与评论