zoukankan      html  css  js  c++  java
  • 第七章 读书笔记

    第七章 LED将为我闪烁:控制发光二极管

    一.LED驱动的实现原理。尽管Linux驱动直接和硬件打交道,但并不是Linux驱动直接向硬件中的内存写数据,而是与本机的I/O内存进行交互。

    二.编写LED驱动。Linux驱动提供了两种交互方式:命令和读写设备文件。LED驱动以动态驱动模块的形式提供,测试LED驱动之前需要用USB数据线连接S3C开发板,然后打开S3C开发板的电源开关,成功启动后,执行build.sh脚本文件编译和安装LED驱动。创建LED驱动的设备文件:①使用cdev_init函数初始化cdev。②指定设备号,直接在代码中指定或者动态分配。③使用cdev_add函数将字符设备添加到内核中的字符设备数组中。④使用class_create宏创建struct class。⑤使用那个device_create函数创建设备文件。

    三.测试LED驱动。编写测试I/O控制命令的通用程序。LED驱动有两种与设备文件交互的方式,直接写入字符串数据和I/O控制命令。直接向设备文件写入数据可以使用命令方来完成,也可以通过write函数来完成,但是I/O 控制命令只能通过ioctl函数发出。

    四.LED驱动的移植。移植Linux驱动有一条非常重要,就是在修改Linux驱动的源代码时,应尽量不修改Linux驱动的接口。如果修改了一个语句,就意味着整个驱动的接口变化了,造成不必要的麻烦。

    http://www.cnblogs.com/yangsasa/

  • 相关阅读:
    MyBatis的Mapper接口以及Example的实例函数及详解
    数据存储
    广播
    java线程复习3(线程的中断)
    java线程复习2(获取和设置线程信息)
    java线程复习1(线程创建)
    最好的启动方式
    工厂模式
    欧几里得算法
    组合数打表
  • 原文地址:https://www.cnblogs.com/yangsasa/p/5555733.html
Copyright © 2011-2022 走看看