KCNScopeClock 是一个基于 .NET 9 & C# 的控制台应用程序。本程序通过声卡和音频设备生成音频信号,以在模拟&数字示波器的 XY 模式中绘制出高质量且美观的矢量时钟图形。
-
多驱动支持:
- ASIO (推荐):提供低延迟、直接硬件访问,支持高采样率。
- WASAPI Exclusive:独占模式,减少系统混音干扰。
- WaveOut:传统的兼容模式。
-
高精度矢量渲染:
- 采用线性插值算法将矢量点光栅化为音频采样,确保在不同采样率下的图形连贯性。
- 使用
ArrayPool和Span<T>进行内存管理,优化实时渲染性能。
-
高度可配置:
- 支持 16-bit, 24-bit 以及 32-bit Float 位深。
- 支持使用预设及自定义的采样率 (KHz)。
- 可调节刷新率 (FPS) 和绘图密度。
- 持久化的配置文件。
-
多种时钟风格:
- Standard (标准)
- Dots (点阵)
- Roman (罗马数字)
- Military (24小时制)
- Minimalist (极简)
![]() |
|---|
| 图片示例中,声卡输出通过同轴转接头和RCA线缆直连示波器 |
请到最新 Releases 处下载。
请下载 项目源码 自行编译,需要 Visual Studio 与 .NET 9 开发环境。
要获得最佳显示效果,需要以下硬件:
-
模拟示波器:双通道,支持 X-Y 显示模式。
- 若使用数字示波器,请开启
FastAcq模式或开启Display Persistence - Variable以达到类似模拟示波器的余辉效果。
- 若使用数字示波器,请开启
-
音频接口:
- 建议使用支持 DC Coupled (直流耦合) 输出的声卡 (具有ASIO驱动的专业级声卡)。
- 如果使用普通 AC Coupled (交流耦合) 声卡或电脑内置音频设备,图形可能会发生漂移或变形。
-
连接线 (默认):
- 左声道 (L) -> 示波器 X 通道 (CH1)
- 右声道 (R) -> 示波器 Y 通道 (CH2)
- LR 声道可随意连接。若发现示波器图像翻转,在
时钟设置中切换通道翻转设置项即可。
先决条件
- 您需要将您的示波器调整为X-Y显示模式,且CH1、CH2通道打开。最好将带宽限制在20MHz,以减少高频信号产生的噪声。
- 对于希望获得高质量信号的玩家,建议购买两个同轴接口转RCA接口的转接头,然后将声卡输出的RCA线缆/3.5mm输出转RCA线缆直插到两个示波器通道上。
- 您也可以直接使用示波器探头。找一条废弃的RCA线缆/3.5mm输出线缆,剥开绝缘皮,将探头和GND夹到对应声道上。地线回路应尽可能短,直接使用接地弹簧最佳。
在不带任何参数的情况下直接运行程序,将进入交互式菜单。菜单中可以进行音频设置、时钟样式切换以及启动时钟。
程序支持通过命令行参数快速启动,适用于脚本调用或自动运行:
KCNScopeClock.exe <DriverType> [DeviceName] [SampleRate] [BitDepth]
参数说明:
DriverType:ASIO,WASAPI,WAVEOUTDeviceName: (仅 ASIO 需要) 驱动名称,如 "Focusrite USB ASIO"SampleRate: 采样率整数,如192000BitDepth:16,24,32
示例:
# 使用 ASIO 驱动,192kHz 采样率,32位浮点
KCNScopeClock.exe ASIO "Universal Audio Thunderbolt" 192000 32
程序首次运行后会生成 config.json 文件,可手动修改:
{
"Audio": {
"DriverType": "ASIO",
"DeviceName": "Focusrite USB ASIO",
"SampleRate": "Rate192000",
"SampleRateCustom": 192000,
"BitDepth": "BitFloat32"
},
"Clock": {
"RefreshRate": 60.0, // 刷新率
"DrawDensity": 2.0, // 绘图密度 (点/单位距离)
"ChannelFlip": false, // 翻转 X/Y 通道
"Style": "Military" // 默认样式
}
}
矢量数据表 (Data Tables) 移植自 maurohh/ESP32_OscilloscopeClock 。
本项目基于 AGPL-3.0 许可证开源。本项目仅供研究交流用,禁止用于商业及非法用途。使用本项目造成的事故与损失,与作者无关。本项目完全免费,如果您是花钱买的,说明您被骗了。请尽快退款,以减少您的损失。
前往我的 B站主页 : 剧毒的KCN
关注我的 Twitter账号 : @2233kcn03
加入我的 QQ交流群 : 1140538395
