博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
第七章
阅读量:6213 次
发布时间:2019-06-21

本文共 701 字,大约阅读时间需要 2 分钟。

编写LED驱动,创建led驱动的设备文件第一,使用cdev_init函数初始化cdev 第二步,指定设备号,多个Linux设备文件可以拥有同一个主设备号,但两个设备的主设备号和次设备号不能都一样,在使用alloc_chrdev_region函数主动分配设备号时,baseminor和count参数不要设置的太大,否则此设备号就会溢出,并且设备号会进位,从而变成了下一个主设备号。第三步使用cdev_add函数将字符设备添加到内核中的字符设备数组中。第四步,使用class_create宏创建struct_class第五步,使用cdev_create函数创建设备文件

写咋LED驱动的设备文件 卸载Linux驱动的设备文件稍微简单一些,需要一次调用device_destory,class_destory,unregister-chrdev_region方法。

LED驱动可以使用如下两种方式控制LED  一。通过字符串控制LED  二 。  通过I/O命令控制LED要想使用以上两种方式控制LED ,LED驱动必须接收相应的数据,如果通过字符串控制LED 需要使用file_operations.write。如果通过I/O命令控制LED,需要使用file_operations.ioctl函数,Linux驱动在装载时会将参数值写入参数文件。如果未指定参数值,Linux会将默认的参数值写入参数文件。在Linux驱动工作的过程中,参数值会和参数文件同步内容,也就是说,修改参数变量值后参数文的内容就会改变。

转载于:https://www.cnblogs.com/coobeast/p/5561097.html

你可能感兴趣的文章
RRDtool的用法(结合实例)
查看>>
linux关机相关命令
查看>>
Vue优化和其他设置
查看>>
配置软件时的小问题
查看>>
runtime 实现 NSCopying copyWithZong
查看>>
Python基础
查看>>
bootstrap-fileinput使用配置
查看>>
nginx tcp proxy 连接保持设置
查看>>
Mysql常用配置参数、存储引擎的选择及sql优化
查看>>
AWK用法入门详解
查看>>
关于json.dumps中的参数,例如ensure_ascii
查看>>
XSS攻击之窃取Cookie
查看>>
简述Arrays.asList警示
查看>>
java集合归类
查看>>
C++实现大数相加 hdu
查看>>
关于绝对居中和div并列——flex属性
查看>>
Oracle数据库坏块检查
查看>>
QNX使用多网卡后无法使用ifconfig命令修改IP地址
查看>>
KVM 虚拟化原理探究(4)— 内存虚拟化
查看>>
快速构建ceph可视化监控系统
查看>>