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语句最后一行显示统计。
    Win10访问不到XP共享的解决:
    git-github-TortoiseGit综合使用教程(二)快速入门
    git-github-TortoiseGit综合使用教程(一)简介
    RHEL7 -- 修改主机名
    安装完 MySQL 后必须调整的 10 项配置(转)
    my.cnf
    mysql查看系统参数
    MySQL性能的五大配置参数(内存参数)
    (转)Linux用户登录记录日志和相关查看命令汇总
  • 原文地址:https://www.cnblogs.com/sam0304/p/5561497.html
Copyright © 2011-2022 走看看