简介:驱动开发是嵌入式Linux 开发难度最高的内容。驱动开发既要熟悉相关硬件的操作又要深入理解内核中驱动框架和相关机制。本课程主要讲解驱动开发中的高级内容,包括高级驱动学习方法、输入子系统、I2c子系统、设备树等重要内容。
课程章节
第01课 高级驱动学习方法
第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课 设备树(下)
授课讲师
-
George
高级讲师
关于讲师
精通uboot和Linux系统开发、Android系统开发;熟悉freescale的imx51(Cortex-A8)平台;曾多次给万利达,意法半导体等知名公司进行员工内训,具有多年教学和培训实践经验。
课程推荐
- 系统移植 试听 1748
- C语言项目小游戏-中国象棋小游戏 试听 1449
- Linux驱动程序开发 试听 3116
- C++开发基础 试听 6580
学习服务
- 技术大牛直播授课
- 实时学情管理
- 课后作业批改,BUG诊断
- 辅导老师当堂答疑
- 学习规划,专属学习方案