字符设备驱动基础—5.linux驱动开发第二部分

66人 购买 好评度 100%
用手机看

扫一扫继续用手机看

  • 微信扫码

  • QQ扫码

下载手机APP
收藏
  • linux驱动第二章
  • linux驱动第二章
更多班级

linux驱动第二章

支持随到随学,22年09月过期

linux驱动第二章

支持随到随学,24年10月过期

¥07.22

¥07.22

本班因教学质量问题暂时不能报名。 查看详情

课程因违反平台规定暂时不能报名。

立即购买
套餐价 :¥277.00 原价 :¥399.00 立即购买 查看详情
套餐价 :¥600.00 原价 :¥1144.00 立即购买 查看详情

课程概述

目录

评论

老师介绍

  • 朱有鹏

    朱有鹏

    互联网课程品牌《朱老师物联网大讲堂》创始人。著有《嵌入式linux与物联网软件开发-C语言内核深度解析》等书籍,精通U-Boot、linux kernel移植及驱动程序开发;精通C、C++、Java、C#等高级语言,熟悉ARM体系结构;熟悉linux、WinCE下的开发流程;授课风趣幽默,讲解条理清晰,对知识有自己独到见解,善于发散学生的思维。
简  介 本课程是linux驱动开发的第2个课程,只要对linux内核有一定了解,有学习驱动开发意向的同学都可以观看。
课程目标
本课程是linux驱动开发的第2个课程,从零开始带领大家逐渐熟悉内核模块,并且一步步写出一个字符设备驱动程序来控制LED等。本课程对驱动的学习非常重要,是驱动学习的入门阶段。
适用人群
本课程是linux驱动开发的第2个课程,只要对linux内核有一定了解,有学习驱动开发意向的同学都可以观看。
课程简介

嵌入式绝对是当前IT领域最炙手可热的话题了。其主要应用领域涵盖与人类相关的各行各业:

* 消费电子(手机、平板电脑、游戏机)

* 物联网(智能家居、智慧城市)

* 工业自动化(无人工厂、工业机器人)

可以毫不客气的说,IT发展的未来在于嵌入式。巨大的商机和人才缺口导致嵌入式软件工程师的薪资居高不下,引得无数青年才俊、高校学子相继加入、苦苦钻研。

课程特色

*完全零基础,降低学习门槛。

*深入浅出,通俗易懂。不怕学不会,就怕你不学习。

*思路清晰、语言风趣,对着视频看也不会想睡觉······

*视频 + 文档 + 练习题 + 答疑,全方位保证学习质量。

*基础知识 + 思路引导的教学方式,授之以鱼更授之以渔。

*系列课程。本教程只是入门篇,后续还有更多更精彩视频更新中。
       
                                                                                       课程目录

5.2.1.开启驱动开发之路

[免费观看]

37:25

本节主要是讲述并且实践示范驱动开发的环境搭建、构建内核源码树、常用模块安装卸载命令等。

 

5.2.2.最简单的模块源码分析1

41:55

本节主要讲解模块安装和过程,及其和module_init宏的关联,并且重点讲解了模块安装时的安全性兼容性校验问题。

 

5.2.3.最简单的模块源码分析2

30:00

本节主要讲解了模块的卸载过程、MODULE_LICENSE等信息添加宏和__init、__exit宏。

 

5.2.4.最简单的模块源码分析3

41:56

本节主要分析了printk函数及其打印级别定义,以及模块编译的Makefile文件工作原理。

 

5.2.5.用开发板来调试模块

36:11

本节在开发板上搭建模块测试的环境,主要是内核源码树的编译、内核的下载、nfs挂载rootfs的设置,uboot中bootcmd和bootargs的设置等细节。

 

5.2.6.字符设备驱动工作原理1

25:13

本节开始讲解字符设备驱动的工作原理,重点是file_operations结构体及整个应用+驱动体系的框架。

 

5.2.7.字符设备驱动工作原理2

32:35

本节讲解了register_chrdev函数,并且重点讲解了内核内部对字符设备驱动的管理机制。

 

5.2.8.字符设备驱动代码实践1

25:08

本节开始字符设备驱动的编码实践,首先把整体框架理顺,然后构建了file_operations结构体变量,并且填充了open和close方法。

 

5.2.9.字符设备驱动代码实践2

27:05

本节进行字符设备驱动的注册,以及编译和实际在开发板上的测试。

 

5.2.10.应用程序如何调用驱动

30:53

本节引入设备文件的概念,同时结合前面讲述的主次设备号,综合讲解应用程序对驱动程序的调用等整体流程。

 

5.2.11.添加读写接口

24:42

本节开始在我们的驱动中添加write和read方法,并且讲解了copy_from_user和copy_to_user这两个重要函数。

 

5.2.12.读写接口实践

23:58

本节完成write和read函数的编写,并且在开发板上进行实践测试。

 

5.2.13.驱动中如何操控硬件

32:39

本节研究驱动中对硬件的操作和裸机中的不同,并且重点讲解了linux内核中虚拟地址映射的2种机制和原理。

 

5.2.14.静态映射操作LED1

28:11

本节讲解我们所使用的内核版本中和静态虚拟地址映射有关的文件,并且带大家实际分析这部分代码,以深入理解静态映射表的实质。

 

5.2.15.静态映射操作LED2

26:23

本节使用静态虚拟地址映射方法,参考裸机中的LED控制方法,在驱动中添加LED的操作方法,在对比中让大家理解驱动和裸机的区别。

 

5.2.16.静态映射操作LED3

28:51

本节结合应用程序和驱动程序,实现一整套控制LED亮灭的完整体系。让大家初步体会到应用和驱动的配合。

 

5.2.17.动态映射操作LED

29:26

本节介绍并使用动态映射的方式对寄存器进行映射,然后实现应用操作,主要目的是学习动态内核映射的原理和实践方法。

资料下载报名后支持下载

* 课程提供者:朱有鹏物联网大讲堂

老师还为你推荐了以下几门课程