在微秒内生成哔哔声c#
Posted
技术标签:
【中文标题】在微秒内生成哔哔声c#【英文标题】:Generate Beep in microseconds c# 【发布时间】:2016-06-17 16:46:05 【问题描述】:我想在微秒(100 微秒)内生成矩形哔声,但 c# 仅在毫秒(1 或更多)内提供给我。 这是我想要做的图像: 图像 - 以微秒为单位的矩形脉冲
我能做什么?
感谢您的回答
【问题讨论】:
我不知道 c# 会根据时间显式绘制矩形。您能否澄清一下并显示一些代码? 使用NAudio library 很容易做到。请牢记物理学,时间分辨率仅限于采样率。没关系,没有人有足够好的耳朵来听到差异。或者根本听不到这个信号。 这种用法表示通信协议。为此,您确实需要一个精确的分辨率。 【参考方案1】:您在使用 DirectX.Sound 吗? https://channel9.msdn.com/coding4fun/articles/Generating-Sound-Waves-with-C-Wave-Oscillators
使用 DirectX,您可以创建自己的波形,但是使用 44.1KHz(0.22mS 0.02267mS 或 22.67uS)的采样频率,您似乎无法精确地做你需要,但你可以接近。最接近的符合要求的脉冲宽度是 90.7 uS 或 113.4 uS。
【讨论】:
44.1kHz 的单个样本为 0.023us。但这并不重要。在一毫秒内,您可以在任何大于 2kHz 的采样率下获得 1kHz 正弦波的单个周期。 @jaket 实际上,我们都错了! - 持续时间为 0.022 毫秒(22 微秒),即 1/44100 我将编辑我的答案以更正此问题。以上是关于在微秒内生成哔哔声c#的主要内容,如果未能解决你的问题,请参考以下文章