zoukankan      html  css  js  c++  java
  • 第8章 蜂鸣器

       三星开发板再带蜂鸣器,所以我们可以通过向寄存器写入特定的值来控制蜂鸣器发出声响。开发一个驱动时可能会在init、exit等函数中发生错误这是驱动可能会安装失败,更糟的是无法使用rmmod驱动,这也就会造成无法再次安装的窘境。linux驱动的代码重用有很多种方法。可以采用标准C程序方式。将要重用代码放在其他的文件中。如果试用某些功能,include的相应的头文件就行。编译是由多个文件组成的linux驱动,代码重用分为静态和动态两种,静态重用这种方式是低级的重用,在本节将介绍另外一种diamante共享的方式:模块依赖,也称之为导出符号。强行卸载驱动,就是当驱动程序出现异常情况是,linux驱动可能会无法正常卸载。比如初始化数据崩溃,由于驱动模块的初始化函数进行了默写操作而崩溃,从而导致初始化无法正常返回。这种情况的表现是当前linux驱动模块没有任何其他模块使用,我们可以使用rmmod  bad_driver命令来卸载。蜂鸣器驱动也称之为pwn脉冲宽度调制,基本原理是通过脉冲来控制蜂鸣器的打开和停止。pwn驱动与LED驱动的实现流程类似,可能还要简单一些。

  • 相关阅读:
    SGU 275. To xor or not to xor
    4364: [IOI2014]wall砖墙
    3211: 花神游历各国
    5248: [2018多省省队联测]一双木棋
    3106: [cqoi2013]棋盘游戏
    POJ 1568 Find the Winning Move
    P3527 [POI2011]MET-Meteors
    P2617 Dynamic Rankings
    3262: 陌上花开
    1176: [Balkan2007]Mokia
  • 原文地址:https://www.cnblogs.com/1310-09/p/5561130.html
Copyright © 2011-2022 走看看