zoukankan      html  css  js  c++  java
  • Andriod深度探索(卷1)HAL与驱动开发 第八章读书心得

    第八章介绍了第二个实验:蜂鸣器驱动,使开发板发出声音
    将介绍蜂鸣器的实现原理,并实现一个完整的蜂呜器驱动,通过该驱动可以控制蜂鸣器的打开与关闭。

    蜂鸣器也称为PWM脉冲宽度调制,基本原理就是通过脉冲来控制蜂鸣器的打开和停止。蜂鸣 器是开发板上带的一个硬件设备,可以通过向寄存器写入特定的值来控制蜂鸣器发出的声音。本节介绍了蜂鸣器的实现原理,并实现一个完整的蜂鸣器驱动,可以打 开和关闭。PWM驱动的实现方式不同于LED驱动,PWM驱动由多个文件组成,这也是大多数Linux驱动的标准实现方式。

    Linux驱动的代码重用有很多种方法。分为静态重用和动态重用,静态重用是代码级的重用,就是将需要重用的代码和使用这些代码的文档放在一起编 译,最终生成一个可执行的文件或程序库(.ko和.so等)。代码共享就是在一个驱动模块里使用另一个驱动模块里被导出的符号(常量、变量、函数等)。

    如果编写的Linux驱动程序是正确的,那么就可以正常装载和卸载,但是在某些情况下,可能某些程序会出现异常情况,这时Linux驱动可能会无法 正常卸载。如果在模拟器或开发板上采用动态装载.ko文件的方式测试Linux驱动,就算无法正常卸载Linux驱动,只要重启模拟器或开发板,动态 Linux模块就会从内存中卸载。

     

    我的博客园地址是:http://www.cnblogs.com/zzp036/p/5449784.html

  • 相关阅读:
    Java实现线程的三种方法
    java 包和访问权限小结
    Java从外部调用类的私有方法
    find
    sigprocmask
    alerm和pause
    kill和raise
    信号处理中可重入函数调用
    低速系统调用的信号中断
    signal函数
  • 原文地址:https://www.cnblogs.com/zzp036/p/5638074.html
Copyright © 2011-2022 走看看