update
This commit is contained in:
@@ -277,6 +277,329 @@ keywords: A316固件开发, XU316通信问题, USB设备供电, 固件开发FAQ,
|
||||
|
||||
</div>
|
||||
|
||||
## 音频输出问题
|
||||
|
||||
### Q1: I2S/DSD 数据引脚连接后没有声音输出
|
||||
|
||||
<div class="grid" markdown>
|
||||
|
||||
=== "排查步骤"
|
||||
1. **确认引脚定义**
|
||||
- 不同模式(USB-I2S、SPDIF-IN、ADAT等)的 DATA0/1/2、BCLK、LRCLK 引脚位置可能不同
|
||||
- 对照网站固件介绍确认引脚连接
|
||||
2. **检查 I2S 格式**
|
||||
- 确认是 I2S 格式、左对齐还是右对齐
|
||||
- 与 DAC 芯片要求是否匹配
|
||||
3. **确认 MCLK 连接**
|
||||
- 某些 DAC 需要 MCLK 才能正常工作
|
||||
- 检查是否已连接 MCLK 信号线
|
||||
4. **测量信号波形**
|
||||
- 用示波器检查 BCLK、LRCLK、DATA 线上是否有信号输出
|
||||
|
||||
</div>
|
||||
|
||||
### Q2: SPDIF 输入(光纤/同轴)没有声音或断断续续
|
||||
|
||||
<div class="grid" markdown>
|
||||
|
||||
=== "排查步骤"
|
||||
1. **时钟限制**
|
||||
- SPDIF-IN 模式只能使用内部时钟
|
||||
- 不要发送 0x26 切换外部时钟命令
|
||||
2. **检查接收电路**
|
||||
- 光纤接收头或同轴接收电路是否正常
|
||||
- 信号质量是否良好
|
||||
3. **确认模式匹配**
|
||||
- 发送的 0x23 命令中的模式必须与固件支持的 SPDIF 模式一致
|
||||
4. **检查信号质量**
|
||||
- SPDIF 信号质量差会导致解码失败
|
||||
- 尝试更换线材或检查接口接触
|
||||
|
||||
</div>
|
||||
|
||||
### Q3: 切换模式时有爆音(POP Noise)
|
||||
|
||||
<div class="grid" markdown>
|
||||
|
||||
=== "解决方案"
|
||||
1. **使用 MUTE 引脚控制**
|
||||
- 切换模式前将 MUTE 引脚拉低
|
||||
- 切换完成并确认成功后再拉高
|
||||
2. **配置上电静音时间**
|
||||
- 通过 0x02 命令配置合适的静音时间(0-65535ms)
|
||||
- 给 DAC 足够的稳定时间
|
||||
3. **DAC 侧配合静音**
|
||||
- MCU 同时控制 DAC 的静音引脚
|
||||
- 实现双重静音保护
|
||||
4. **检查电源时序**
|
||||
- 确保 DAC 电源稳定后再取消静音
|
||||
|
||||
</div>
|
||||
|
||||
### Q4: 外部时钟(MCLK)如何正确接入和切换
|
||||
|
||||
<div class="grid" markdown>
|
||||
|
||||
=== "操作要点"
|
||||
1. **确认时钟频率**
|
||||
- 22.5792MHz 对应 44.1kHz 系列
|
||||
- 24.576MHz 对应 48kHz 系列
|
||||
2. **切换时机**
|
||||
- 在音频流传输前完成时钟切换
|
||||
- 使用 0x26 命令进行切换
|
||||
3. **SPDIF-IN 限制**
|
||||
- SPDIF 输入模式只能使用内部时钟
|
||||
- 不能切换外部时钟
|
||||
4. **时钟质量**
|
||||
- 外部时钟的抖动(Jitter)会直接影响音质
|
||||
- 需使用低抖动晶振
|
||||
|
||||
</div>
|
||||
|
||||
### Q5: 不同采样率切换时有卡顿或爆音
|
||||
|
||||
<div class="grid" markdown>
|
||||
|
||||
=== "解决方案"
|
||||
1. **使用 ASRC 功能**
|
||||
- 特定固件支持 ASRC(异步采样率转换)
|
||||
- 可平滑切换不同采样率
|
||||
2. **时钟锁定时间**
|
||||
- 采样率切换后 PLL 需要锁定时间
|
||||
- 期间 XU316 会自动静音,属正常现象
|
||||
3. **DAC 复位**
|
||||
- 某些 DAC 在采样率变化时需要复位
|
||||
- 可在切换后重新初始化 DAC
|
||||
4. **缓存设置**
|
||||
- 适当增加音频缓冲可减少卡顿
|
||||
- 但会增加延迟
|
||||
|
||||
</div>
|
||||
|
||||
### Q6: 音频输出有杂音、底噪,如何排查 EMC/EMI 问题
|
||||
|
||||
<div class="grid" markdown>
|
||||
|
||||
=== "排查要点"
|
||||
1. **电源隔离**
|
||||
- 数字电源和模拟电源分开
|
||||
- 使用 LDO 给音频电路供电
|
||||
2. **地线设计**
|
||||
- 采用单点接地,避免地环路
|
||||
- 数字地和模拟地在一点连接
|
||||
3. **I2S 走线**
|
||||
- I2S 信号线等长走线
|
||||
- 远离高速数字信号(USB、SPI)
|
||||
- 必要时包地处理
|
||||
4. **屏蔽处理**
|
||||
- 对敏感模拟信号进行屏蔽
|
||||
- 光纤接收头做好屏蔽罩接地
|
||||
5. **晶振布局**
|
||||
- MCLK 晶振靠近 XU316 和 DAC 布局
|
||||
- 减少时钟线长度
|
||||
|
||||
</div>
|
||||
|
||||
## 音频格式支持
|
||||
|
||||
### Q1: MQA 音频播放需要注意什么
|
||||
|
||||
<div class="grid" markdown>
|
||||
|
||||
=== "注意事项"
|
||||
1. **选择正确固件**
|
||||
- 需要 MQA 支持必须下载带 Q 的固件(如 XXX_Q.bin)
|
||||
- 不带 Q 的固件不支持 MQA 解码
|
||||
2. **MQA 渲染器**
|
||||
- XU316 作为 MQA Renderer
|
||||
- 需配合 MQA Core Decoder(如 Tidal 软件解码)使用
|
||||
3. **软件支持**
|
||||
- 播放端软件需支持 MQA(Tidal、Audirvana 等)
|
||||
4. **授权问题**
|
||||
- MQA 固件涉及授权,请确保使用正版固件
|
||||
- 未授权会自动重启
|
||||
|
||||
</div>
|
||||
|
||||
### Q2: DSD 音频播放没有声音或变成噪音
|
||||
|
||||
<div class="grid" markdown>
|
||||
|
||||
=== "排查步骤"
|
||||
1. **确认固件支持**
|
||||
- 查看固件名称是否带 DSD 标识
|
||||
2. **DSD 格式设置**
|
||||
- 确认是 Native DSD 还是 DoP(DSD over PCM)
|
||||
- 两种格式数据传输方式不同
|
||||
3. **I2S 数据线连接**
|
||||
- DSD 通常使用 DATA0 或 DATA1 传输
|
||||
- 与 PCM 模式可能使用不同引脚
|
||||
4. **DAC 支持**
|
||||
- 确认 DAC 芯片支持 DSD 解码
|
||||
- 已正确配置为 DSD 模式
|
||||
|
||||
</div>
|
||||
|
||||
## 协议命令详解
|
||||
|
||||
### Q1: 0x22 报告音频流格式命令的数据如何解析和使用
|
||||
|
||||
<div class="grid" markdown>
|
||||
|
||||
=== "使用说明"
|
||||
1. **触发时机**
|
||||
- XU316 启动成功后 1 秒自动发送
|
||||
- 切换输入/输出模式后 1 秒也会自动发送
|
||||
2. **数据解析**
|
||||
- 根据固件规格书解析采样率、位深、音频格式(PCM/DSD/DoP)
|
||||
3. **显示用途**
|
||||
- 用于显示屏显示当前音频格式,如 "PCM 96kHz/24bit" 或 "DSD64"
|
||||
4. **配合命令**
|
||||
- 获取音频格式后,可用 0x28 命令设置音频延迟时间
|
||||
|
||||
</div>
|
||||
|
||||
### Q2: 0x24 音量命令的数值范围及 DAC 映射
|
||||
|
||||
<div class="grid" markdown>
|
||||
|
||||
=== "使用说明"
|
||||
1. **音量范围**
|
||||
- 通常为 0-100 或 0-255
|
||||
- 具体范围参考固件规格书
|
||||
2. **对数映射**
|
||||
- 人耳对音量感知是对数的
|
||||
- 建议将线性值映射为对数曲线后控制 DAC
|
||||
3. **左右声道处理**
|
||||
- 注意处理左右声道音量是否一致
|
||||
- 部分 DAC 需分别设置左右声道音量
|
||||
4. **与 0x21 的区别**
|
||||
- 0x21:MCU → XU316 → PC(发送方向)
|
||||
- 0x24:PC → XU316 → MCU(接收方向)
|
||||
|
||||
</div>
|
||||
|
||||
### Q3: 0x29 USB 连接状态检测有什么用途
|
||||
|
||||
<div class="grid" markdown>
|
||||
|
||||
=== "用途说明"
|
||||
- 用于在显示屏上显示 USB 是否连接
|
||||
- 提升用户体验
|
||||
|
||||
</div>
|
||||
|
||||
### Q4: 录音功能(Microphone)如何配置和使用
|
||||
|
||||
<div class="grid" markdown>
|
||||
|
||||
=== "配置说明"
|
||||
- 不是所有固件都支持录音功能
|
||||
- 需查看固件说明确认是否支持
|
||||
|
||||
</div>
|
||||
|
||||
## 驱动问题
|
||||
|
||||
### Q1: 使用不同配置固件后,设备无法正确识别
|
||||
|
||||
<div class="grid" markdown>
|
||||
|
||||
=== "问题现象"
|
||||
- 开发或调试中使用不同配置、不同声道的固件后
|
||||
- 设备无法正确识别当前配置
|
||||
|
||||
=== "原因"
|
||||
- 改了录音声道数后,Windows 缓存与实际不一致
|
||||
|
||||
=== "解决方法"
|
||||
1. 进入设备管理器
|
||||
2. 删除音频设备下识别的音频设备,右键卸载
|
||||
3. 同时删除驱动,然后重新安装驱动
|
||||
4. 重新插上设备并成功识别
|
||||
|
||||
</div>
|
||||
|
||||
## 二次开发高频问题
|
||||
|
||||
以下内容整理自 XMOS 常见问题,从二次开发/硬件集成开发者视角出发。
|
||||
|
||||
### 接口与模式类
|
||||
|
||||
#### Q1: I²S 输入只能是 Slave、输出只能是 Master 吗?能不能反向?
|
||||
|
||||
<div class="grid" markdown>
|
||||
|
||||
=== "回答"
|
||||
- **不能反向**
|
||||
- 输入:I²S Slave
|
||||
- 输出:I²S Master
|
||||
- 模式 6 也是:I²S(slave) in → I²S(master) out
|
||||
- 二次开发时必须按此时钟关系设计,否则无音频
|
||||
|
||||
</div>
|
||||
|
||||
#### Q2: S/PDIF 1 和 2 两个输入怎么切换?
|
||||
|
||||
<div class="grid" markdown>
|
||||
|
||||
=== "回答"
|
||||
- 由模式编号区分:
|
||||
- 模式 3 = SPDIF1 输入
|
||||
- 模式 4 = SPDIF2 输入
|
||||
- 切换靠 UART 配置或上位机工具,不是自动识别
|
||||
|
||||
</div>
|
||||
|
||||
### 时钟与采样率转换
|
||||
|
||||
#### Q1: 支持 768kHz / DSD512,macOS/Windows 能直接跑吗?
|
||||
|
||||
<div class="grid" markdown>
|
||||
|
||||
=== "回答"
|
||||
- **Windows**:需官方 USB 驱动 + UAC2.0
|
||||
- **macOS**:原生免驱 UAC2.0,可直接到 768kHz
|
||||
- **DSD512**:需播放器支持 DoP 或原生 DSD
|
||||
- 限制不在模块,而在系统与播放器
|
||||
|
||||
</div>
|
||||
|
||||
#### Q2: 多通道能输出到几通道?
|
||||
|
||||
<div class="grid" markdown>
|
||||
|
||||
=== "回答"
|
||||
- 属于标准多通道 USB Audio 2.0 架构
|
||||
- 实际为 2~8 通道区间(需看模组手册)
|
||||
- 二次开发按 UAC2.0 通道映射即可
|
||||
|
||||
</div>
|
||||
|
||||
### 硬件集成
|
||||
|
||||
#### Q1: 模块尺寸 19.5×26×0.8mm,是贴片还是插针?
|
||||
|
||||
<div class="grid" markdown>
|
||||
|
||||
=== "回答"
|
||||
- 属于超薄模组
|
||||
- 板对板或焊盘式集成,不是插针模块
|
||||
- 二次开发需做 PCB 封装匹配
|
||||
|
||||
</div>
|
||||
|
||||
#### Q2: 供电 3.0–3.6V,典型 3.3V,能不能 5V 直接供电?
|
||||
|
||||
<div class="grid" markdown>
|
||||
|
||||
=== "回答"
|
||||
- **不能**
|
||||
- 必须 3.3V,且要低噪声 LDO
|
||||
- 否则影响 THD+N
|
||||
|
||||
</div>
|
||||
|
||||
## 咨询反馈
|
||||
<details>
|
||||
<summary>点击展开咨询反馈表单</summary>
|
||||
@@ -306,4 +629,3 @@ keywords: A316固件开发, XU316通信问题, USB设备供电, 固件开发FAQ,
|
||||
}]
|
||||
}
|
||||
</script>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user