![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
驱动开发
文章平均质量分 77
F.LASH.
嵌入式大白,希望将更好的技术点和完整的项目分享给大家,一起加油,一起进步!
展开
-
Linux字符设备驱动中同类型多设备节点的创建---一个驱动程序支持多个同类型设备
本期分享的内容相对比较简单,那就是同时注册多个同类型的字符设备驱动,那么这样我们就可以同时支持多个同类型的设备了!本期的分享相对来讲比较简单,就是需要将以前的设备修改为数组,那么在驱动程序的入口和出口函数中都需要进行着重修改,也就是循环创建和删除!原创 2024-02-25 21:00:16 · 788 阅读 · 0 评论 -
Linux字符设备驱动中itcol的使用
在Linux字符设备驱动中,ioctl是必须掌握一个函数,其实在软件层面它就是一个函数,但是我愿意称之为强大的硬件控制器!在应用中,让我深刻感受到了ioctl的魅力所在,既能够在软件层面实现应用层和驱动层的数据交互,也能够搭配一定的逻辑对硬件进行控制!本期分享的主要是ioctl在驱动程序中的使用,这是一个非常重要的函数,希望各位小伙伴们不仅能使用,也能够理解其底层原理!原创 2024-02-25 20:35:01 · 505 阅读 · 0 评论 -
字符设备驱动的代码优化(container_of)、全局结构体和全局指针的应用
本质就是我们的确实定义了struct mychar_dev gmydev这个实体,并且我们使用gmydev.mydev将其加入内核的设备链表中,通过struct inode *pnode可以找到它,因此就有了在mychar_open函数中使用container_of函数,结合已经知道的pnode->i_cdev设备节点地址就能够找到定义的结构体。希望大家能够认真阅读我个人的浅显理解,如果能理解我相信大家都会恍然大悟!原创 2024-02-23 15:50:40 · 394 阅读 · 1 评论 -
内核驱动层与应用层的数据交互copy_to_usr和copy_from_usr
希望大家在条件允许的情况下还是需要亲自动手验证一下,这些比较基础的驱动程序代码不需要依赖硬件,所以一定得亲手验证一下!不懂的小伙伴可以评论区留言,博主知无不言,言无不尽!原创 2024-02-23 12:17:29 · 506 阅读 · 0 评论 -
字符设备驱动基本框架详解、注册设备号、添加字符设备、以及注销删除设备
时隔很久,我又来开始更新驱动模块的学习了,希望在我学习的过程中,能够把自己遇到的问题和干货分享给大家,如果遇到问题,恳请大家评论区及时订正!本文主要分享的分两个部分,一个是驱动程序,另一个是应用程序,主要介绍驱动程序的基本框架。原创 2024-02-23 12:03:08 · 331 阅读 · 0 评论 -
linux内核模块编译方法之模块编程详解
本期主要分享的是关于驱动开发过程中一些基础必备的知识点,除过基本的知识点,还有一些常用操作,掌握了这些能够帮助我们提升工作效率,希望大家都联练习起来,学以致用!!!原创 2023-09-11 14:30:46 · 408 阅读 · 0 评论 -
linux内核模块编译方法详解
本期和大家主要分享的是关于驱动开发中内核模块的编译方法(向内核中增加新功能),主要分为两种方法,静态加载法和动态加载法,两种方法分别有它们各自的优缺点,接下来一起看看吧!提示:以下是本篇文章正文内容,下面案例可供参考本期主要分享的是两种非常重要的内核加载方法,每种方法都有各自的优缺点,在开发中,经常使用动态加载法来提高开发效率;不仅给出了两种加载新内核功能的方法,并且给出了内核驱动的编写基本框架,希望小伙伴们认真掌握理解哦!!!原创 2023-09-10 10:39:57 · 1346 阅读 · 0 评论