第八章:让开发板发出声音: 蜂鸣器驱动

     蜂鸣器是 S3C6410 开发板上带的一个硬件设备。可以通过向寄存器写入特定的值来控制蜂鸣器 发出尖叫声。本章实现一个完整的蜂呜器驱动(可以打开和关闭蜂鸣器)时驱动的实现方式不同于 LED PWM 驱动将由多个文件组成。这也是大多 inux 驱动的标准实现方式 也就是说 个复杂的驱动不太可能将所有的代码都放在 个文件中。最好将相关的代码放在相应的文件中。在编译 Linux 驱动时将这些文件进行联合编译。将Linux 驱动分成多个文件的方式。这些文件中的数据结构、函数的代码也可以被多个不同的驱动使用 以这也是代码重用 重要方法。 开发 Linux 驱动时, 有可能会在init、 exit 函数中发生错误,这时 Linux 驱动可能 安装失败,更糟糕的是无法使用 rmmod 命令正常卸载 Linux 驱动,这也就会造成无法再次安装的 窘境 当然,遇到这种情况,重启机器就可以解决了。但每次都要重启机器, 实在太麻烦 。因此,在遇到无法卸载 Linux 驱动时通过直接修改 Linux 驱动相应的内存地址删除 Linux 驱动 避免了重启机器的麻烦。通过对本章的学习,我可以掌握 Linux驱动常用的代码重用方式。还懂得了强行卸载 Linux 驱动的方法。通过这种方法。可以让我们免去不断重启机器的痛苦