zoukankan      html  css  js  c++  java
  • Android深度探索读书笔记 第七章

        第七章主要介绍led驱动。1测试led驱动:测试之前需要用USB数据线连接s3c开发板,然后打开S3C开发板的电源开关,成功启动后,执行build..sh脚本文件编译和安装led驱动。2 创建led驱动的设备文件:1使用cdev_init函数初始化cdev,cdev的大多数成员变量并不需要我们自己去初始化,是需要调用cdev_init函数就可以初始化大部分cdev的成员变量。2指定设备号(直接在代码中指定;动态分配)3 使用cdev_add函数将字符设备添加到内核中的字符设备数组中。4 使用class_create宏创建struct class。 5 使用device_create函数创建设备文件,该函数在<linux内核源代码>/include/linux/device.h文件中定义。6卸载led驱动的设备文件,依次调用device_destrory、class_destrory和unregister_chrdev_region方法;控制led(通过字符串控制和通过I/O命令控制);其中测试led驱动程序,使用NDK测试led驱动和可执行程序测试差不多。不同的是NDKlibrary可以被Java程序调用。最后介绍的是led驱动的移植,首先要改变的就是leds_init函数,在led驱动装载后,会用0xE设置4个led的默认状态。然后需要修改控制led的代码。其中移植linux驱动有一条非常重要,就是在修改linux驱动的源代码时,应尽量不修改linux驱动的接口。

                                                                                                                                      http://www.cnblogs.com/sam0304/

  • 相关阅读:
    SQL EXPLAIN优化详解
    2019数据智能算法大赛赛后复盘
    K-D树详解
    点云配准相关
    pandas速查手册(中文版)
    Windows CMD命令大全
    获取时间戳
    SQL 字符串转成临时表
    delphi cxgrid明细新增第三行的报错【Key violation】
    cxgrid列的Properties(cxPopupEditPopup)的关闭方法
  • 原文地址:https://www.cnblogs.com/sam0304/p/5561497.html
Copyright © 2011-2022 走看看