有什么方法可以用任何语言(首选 C)直接在 Windows/Linux 下连接 PC 内部扬声器?(没有 DOS)我不想在给定的持续时间内以特定频率驱动它(没有beep(frq, msecs)),但我宁愿直接发送信号。
我想它是一位分辨率,所以我计划使用 PWM 驱动来播放波形声音。
在 Linux 上,您可能想要制作一个内核驱动程序来驱动扬声器,并提供例如。用于访问它的 /dev 条目。
请注意,Linux 内核中已经有一个支持 PCM 的驱动程序,它作为 ALSA 驱动程序进行接口。看看: http: //lxr.linux.no/linux+v2.6.39/sound/drivers/pcsp/
实际的硬件接口似乎在 pscp_input.c 中完成:pcspkr_do_sound(...)
这是一个中断,您可以将其嵌入到任何允许 ASM 在其代码中的语言中。或者你可以用 pascal 编写一个小程序并调用它。我不记得中断了,但快速搜索会为您提供该信息。
在 pc-speakers 的维基百科参考资料中找到了这个
可能有用:)