通信协议与命令总索引¶
我要控制产品,从哪里开始?
- 在下方命令总表中查找需要的功能命令(按功能域分组,共 57 条业务命令);
- 点击对应命令参考页查看字节级命令详解与典型业务流程——同一内容也内嵌在各产品规格书的「产品控制命令」章节;
- 帧格式、启动握手等底层规范见对应的基础协议。
协议体系分层¶
| 层级 | 文档 | 说明 |
|---|---|---|
| 基础协议 | XU316 UART串口基础协议 | XU316↔MCU:帧格式(0x55AA、大端)、启动交互流程(0x00-0x05)、公共数据结构 |
| 基础协议 | EQ串口基础协议 | PC工具↔设备串口:帧格式(0x55AA、小端) |
| 基础协议 | USB HID基础协议 | PC工具↔设备USB:64字节包、同步头0x77、时序约定 |
| 业务命令 | 串口产品配置命令 | XU316↔MCU 产品配置业务命令(0x20-0x31、0xF0-0xF1、0xEE) |
| 业务命令 | EQ与音效控制命令 | EQ/音量/LED/UAC/增益/滤波器/游戏模式(UART 0x40-0x5C ↔ HID 0x8A-0xA6 双码对照) |
| 业务命令 | HID设备控制命令 | 固件升级/重启/EQ段数/升频/EX3D(仅HID通道) |
业务命令总表¶
串口产品配置命令(XU316↔MCU,大端帧)¶
| 命令字 | 命令描述 | 发送方向 | 适用说明 |
|---|---|---|---|
| 0x20 | 报告应用状态 | XU316→MCU | 状态变化时或15秒定时上报 |
| 0x21 | 媒体控制 | MCU→XU316 | XU316转换为HID命令发送给电脑 |
| 0x22 | 报告播放音频流格式和类型 | XU316→MCU | 用于显示PCM/DSD/MQA/DOP等状态 |
| 0x23 | 设置输入输出模式 | MCU→XU316 | 模式值见产品规格书2.1节模式表 |
| 0x24 | 发送播放音量 | XU316→MCU | 左右声道各1字节 |
| 0x25 | 发送录音音量 | XU316→MCU | 预留命令,当前未使用 |
| 0x26 | 切换MCLK | MCU→XU316 | 内部/外部主时钟切换 |
| 0x27 | 设置 unmute | MCU→XU316 | 模式切换时DAC解除静音延迟 |
| 0x28 | 发送音频格式的时间延迟 | MCU→XU316 | 音频格式切换延迟配置 |
| 0x29 | 报告USB连接状态 | XU316→MCU | USB连接/断开时主动上报 |
| 0x30 | 设置Mute引脚反转 | MCU→XU316 | 适配Mute极性相反的硬件设计 |
| 0x31 | 获取当前音频格式 | MCU→XU316 | 查询当前音频流格式与类型 |
| 0xF0 | DAC配置选择 | MCU→XU316 | 产品特定命令,非所有产品支持 |
| 0xF1 | 获取固件版本 | MCU→XU316 | 查询XU316固件版本号(3字节BCD主版本) |
| 0xF3 | 查询完整版本号 | MCU→XU316 | 返回完整ASCII版本字符串(型号_v主.次.修_b构建) |
| 0xEE | HID数据透传 | XU316→MCU | HID经XU316向MCU透传(如MCU OTA) |
使用前提
以上命令仅可在设备启动完成后(XU316发送0x05启动完成命令并收到响应后)使用。所有命令均需遵循基础协议帧格式(帧头0x55AA、大端传输、校验和从帧头按字节累加对256求余);每条命令需等待对方确认,默认超时300ms,最多重试4次。
EQ与音效控制命令(UART/HID 双码)¶
| UART命令字 | HID命令头 | 命令名称 | 功能 |
|---|---|---|---|
| 0x40 | 0x8A | SET_EQ_MODE | 切换EQ模式 |
| 0x41 | 0x8B | GET_EQ_MODE | 读取EQ模式信息 |
| 0x42 | 0x8C | SET_MODE_GAIN_AND_NAME | 设置模式整体增益和名称 |
| 0x43 | 0x8D | SET_EQ_PARAMS | 发送EQ参数 |
| 0x44 | 0x8E | GET_EQ_PARAMS | 读取EQ参数 |
| 0x45 | 0x8F | GET_DEVICE_INFO | 获取设备信息 |
| 0x46 | 0x90 | RESET_EQ_PARAMS | 复位EQ参数 |
| 0x47 | 0x91 | GET_EQ_MODE_COUNT | 获取EQ模式总数 |
| 0x48 | 0x92 | SET_AND_SAVE_EQ_MODE | 设置并保存EQ模式 |
| 0x49 | 0x93 | SET_VOLUME | 设置音量级别(已停用) |
| 0x4A | 0x94 | GET_VOLUME | 获取音量级别(已停用) |
| 0x4B | 0x95 | GET_LED_INFO | 获取LED信息(已停用) |
| 0x4C | 0x96 | SET_LED_SWITCH | 设置LED开关(已停用) |
| 0x4D | 0x97 | GET_LED_SWITCH | 获取LED开关(已停用) |
| 0x4E | 0x98 | GET_LED_STATUS | 获取LED状态(已停用) |
| 0x4F | 0x99 | GET_LED_COUNT | 获取LED总数(已停用) |
| 0x50 | 0x9A | GET_UAC_MODE_INFO | 获取UAC模式信息(已停用) |
| 0x51 | 0x9B | SET_UAC_MODE | 设置UAC模式(已停用) |
| 0x52 | 0x9C | GET_CURRENT_UAC_MODE | 获取当前UAC模式(已停用) |
| 0x53 | 0x9D | SET_EQ_ENABLE | 设置EQ使能开关 |
| 0x54 | 0x9E | GET_EQ_ENABLE | 获取EQ使能开关 |
| 0x55 | 0x9F | GET_SAMPLE_FORMAT | 获取采样率和格式 |
| 0x56 | 0xA0 | SET_GAIN_MODE | 设置增益模式(已停用) |
| 0x57 | 0xA1 | GET_GAIN_MODE | 获取增益模式(已停用) |
| 0x58 | 0xA2 | SET_FILTER_MODE | 设置滤波器模式(已停用) |
| 0x59 | 0xA3 | GET_FILTER_MODE | 获取滤波器模式(已停用) |
| 0x5A | 0xA4 | SET_GAME_MODE | 设置游戏模式(已停用) |
| 0x5B | 0xA5 | GET_GAME_MODE | 获取游戏模式(已停用) |
| 0x5C | 0xA6 | GET_FIRMWARE_VERSION | 获取固件版本 |
| 0x5D | 0xB3 | SET_EQ_BAND_COUNT | 设置EQ段数 |
| 0x5E | 0xB4 | GET_EQ_BAND_COUNT | 获取EQ段数 |
HID设备控制命令(仅HID通道)¶
| 命令头 | 命令名称 | 功能 | 适用说明 |
|---|---|---|---|
| 0xA7 | FIRMWARE_UPGRADE_START | 开始固件升级 | |
| 0xA8 | FIRMWARE_UPGRADE_DATA | 传输固件数据块 | 每块57字节 |
| 0xA9 | FIRMWARE_UPGRADE_END | 结束固件升级 | 设备验证镜像完整性 |
| 0xAA | FIRMWARE_UPGRADE_STATUS | 获取升级状态 | |
| 0xAB | FIRMWARE_UPGRADE_ABORT | 中止固件升级 | |
| 0xAC | FIRMWARE_UPGRADE_ERASE | 擦除升级镜像 | |
| 0xAE | DEVICE_REBOOT | 设备重启 | 无响应 |
| 0xB3 | SET_EQ_BAND_COUNT | 设置EQ段数 | 8/16/24/32段,保存Flash |
| 0xB4 | GET_EQ_BAND_COUNT | 获取EQ段数 | |
| 0x80 | SET_UPSAMPLE | 设置采样率升频 | 0=禁用 1=使能 |
| 0x81 | GET_UPSAMPLE | 获取采样率升频状态 | |
| 0xB0 | SET_EX3D_CMD | 发送EX3D设置命令 | 仅 VID 0x20B1/PID 0x80D3 |
| 0xB1 | GET_EX3D_CMD | 读取EX3D命令 | 仅 VID 0x20B1/PID 0x80D3 |
命令适用范围
不同产品固件支持的业务命令子集可能不同(如 0xF0 为产品特定命令、EX3D 仅适用于 VID 0x20B1/PID 0x80D3 设备),各产品实际支持的命令以内嵌于其规格书「产品控制命令」章节的内容为准。
名称对照
本站协议文档曾用名与现名对照:XU316 USB HiFi解码器免开发产品配置协议 / 标准产品配置协议 / MCU串口通信协议 → XU316 UART串口基础协议 + 串口产品配置命令;XMOS EQ UART 控制协议与命令集 → EQ串口基础协议 + EQ与音效控制命令;XMOS EQ HID 通信协议规范 → USB HID基础协议 + EQ与音效/HID设备控制命令。旧链接均自动跳转。

