zoukankan      html  css  js  c++  java
  • 第七章

    编写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驱动工作的过程中,参数值会和参数文件同步内容,也就是说,修改参数变量值后参数文的内容就会改变。

  • 相关阅读:
    执行器模式设计和使用
    你知道怎么用Idea抽取方法、创建class吗?
    intellij构建多模块项目
    解决IDEA16闪退的问题
    TestNG参数化测试-数据提供程序 @DataProvider方式
    java第三节 面向对象(上)
    java第二节 基本数据类型
    memcache使用方法测试
    mysql Substr与char_length函数的应用
    《web与移动开发》征文活动
  • 原文地址:https://www.cnblogs.com/wyx13/p/5561255.html
Copyright © 2011-2022 走看看