6.9 KiB
6.9 KiB
title, description, keywords
| title | description | keywords |
|---|---|---|
| XMOS EQ UART 控制协议与命令集 | EQ 参数配置与控制的 UART 串口通信协议规范,涵盖帧格式、命令集与字段说明,适用于 XU316 等相关产品。 | EQ, UART, 串口协议, 通信协议, 命令集, XU316,免开发固件, Phaten Audio |
XMOS EQ UART 控制协议与命令集
--8<-- "common/phaten_xmos_support_img.md"
1. 协议基础规范
1.1 底层通信协议
基于 UART (Universal Asynchronous Receiver/Transmitter) 协议。
| 参数 | 值 |
|---|---|
| 波特率 | 115200 bps |
| 数据位 | 8 |
| 奇偶校验 | 无 |
| 停止位 | 1 |
| 数据流控 | 无 |
1.2 帧格式与数据传输
通用帧格式 所有命令和响应均遵循以下帧格式:
| 字段 | 字节数 | 说明 |
|---|---|---|
| 帧头 | 2 | 固定为 0x55 0xAA |
| 版本 | 1 | 协议版本号 (通常为 0x00) |
| 命令字 | 1 | 指示帧的功能 (如 0x30) |
| 数据长度 | 1 | 后续数据的长度 N |
| 数据 | N | 具体的数据内容 |
| 校验和 | 1 | 从帧头开始按字节求和,结果对 256 求余 (Sum % 256) |
数据传输说明
- 字节序:所有大于1个字节的数据均采用 小端模式 (Little Endian) 传输(注:与XU316标准协议的大端序不同,请以本协议为准)。
- 浮点数:遵循 IEEE 754 float 格式。
2. 协议命令集
2.1 命令分类概览
| 命令字 | 命令描述 | 发送方向 | 功能说明 |
|---|---|---|---|
| 0x30 | SET_EQ_MODE | 主机→设备 | 切换当前的 EQ 模式 |
| 0x31 | GET_EQ_MODE | 主机→设备 | 获取当前 EQ 模式信息 (模式号、增益、名称) |
| 0x32 | SET_MODE_GAIN_AND_NAME | 主机→设备 | 设置指定模式的整体增益和名称 |
| 0x33 | SET_EQ_PARAMS | 主机→设备 | 发送单个滤波器的参数 (Freq, Q, Gain 等) |
| 0x34 | GET_EQ_PARAMS | 主机→设备 | 读取单个滤波器的参数 |
| 0x35 | RESET_EQ_PARAMS | 主机→设备 | 复位 EQ 参数 (恢复预设) |
3. 基础功能命令详解
3.1 切换 EQ 模式 (0x30)
主机发送
| 字节位置 | 长度 | 内容 | 说明 |
|---|---|---|---|
| Frame Header | 2 | 0x55 0xAA |
固定帧头 |
| Version | 1 | 0x00 |
协议版本 |
| Command | 1 | 0x30 |
命令字 |
| Length | 1 | 0x01 |
数据长度 |
| Data | 1 | Mode |
模式值 0-5: 预设模式 6-8: 用户模式 9: Bypass |
| Checksum | 1 | Sum |
校验和 |
设备端处理
- 直接设置当前运行的 EQ 模式。
- 不涉及参数传输或计算。
3.2 获取当前 EQ 模式信息 (0x31)
主机发送
| 字节位置 | 长度 | 内容 | 说明 |
|---|---|---|---|
| Frame Header | 2 | 0x55 0xAA |
固定帧头 |
| Version | 1 | 0x00 |
协议版本 |
| Command | 1 | 0x31 |
命令字 |
| Length | 1 | 0x00 |
无数据 |
| Checksum | 1 | Sum |
校验和 |
设备返回 (响应)
| 字节位置 | 长度 | 内容 | 说明 |
|---|---|---|---|
| Frame Header | 2 | 0x55 0xAA |
固定帧头 |
| Version | 1 | 0x00 |
协议版本 |
| Command | 1 | 0x31 |
命令字 |
| Length | 1 | 0x15 |
数据长度 (21字节) |
| Data | 1 | Mode |
当前模式值 |
| 4 | Gain |
整体增益 (int32, 小端序, 范围 0~-50dB) | |
| 16 | Name |
模式名称 (UTF-8 字符串) | |
| Checksum | 1 | Sum |
校验和 |
3.3 设置模式整体增益和名称 (0x32)
主机发送
| 字节位置 | 长度 | 内容 | 说明 |
|---|---|---|---|
| Frame Header | 2 | 0x55 0xAA |
固定帧头 |
| Version | 1 | 0x00 |
协议版本 |
| Command | 1 | 0x32 |
命令字 |
| Length | 1 | 0x15 |
数据长度 (21字节) |
| Data | 1 | Mode |
目标模式值 (0-9) |
| 4 | Gain |
整体增益 (int32, 小端序) | |
| 16 | Name |
模式名称 (UTF-8 字符串) | |
| Checksum | 1 | Sum |
校验和 |
设备端处理
- 设置指定模式的增益和名称,自动应用到所有采样率。
3.4 发送 EQ 参数 (0x33)
主机发送
| 字节位置 | 长度 | 内容 | 说明 |
|---|---|---|---|
| Frame Header | 2 | 0x55 0xAA |
固定帧头 |
| Version | 1 | 0x00 |
协议版本 |
| Command | 1 | 0x33 |
命令字 |
| Length | 1 | 0x15 |
数据长度 (21字节) |
| Data | 1 | Mode |
模式值 (0-9) |
| 1 | Band |
滤波器索引 (0-7) | |
| 1 | Type |
滤波器类型 (见下表) | |
| 4 | Freq |
中心频率 Hz (float, 小端序) | |
| 4 | Q |
Q值 (float, 小端序) | |
| 4 | BW |
带宽 Hz (float, 小端序) | |
| 4 | Gain |
增益 dB (float, 小端序) | |
| Checksum | 1 | Sum |
校验和 |
滤波器类型码
| 代码 | 类型 | 代码 | 类型 |
|---|---|---|---|
| 0x00 | Bypass | 0x06 | 带阻 (Band Reject) |
| 0x01 | 全通 (All Pass) | 0x07 | 陷波 (Notch) |
| 0x02 | 峰值 (Peak) | 0x08 | 恒定Q (Constant Q) |
| 0x03 | 低通 (Low Pass) | 0x09 | 低架 (Low Shelf) |
| 0x04 | 高通 (High Pass) | 0x0A | 高架 (High Shelf) |
| 0x05 | 带通 (Band Pass) |
3.5 读取 EQ 参数 (0x34)
主机发送
| 字节位置 | 长度 | 内容 | 说明 |
|---|---|---|---|
| Frame Header | 2 | 0x55 0xAA |
固定帧头 |
| Version | 1 | 0x00 |
协议版本 |
| Command | 1 | 0x34 |
命令字 |
| Length | 1 | 0x02 |
数据长度 |
| Data | 1 | Mode |
模式值 (0-9) |
| 1 | Band |
滤波器索引 (0-7) | |
| Checksum | 1 | Sum |
校验和 |
设备返回 (响应)
| 字节位置 | 长度 | 内容 | 说明 |
|---|---|---|---|
| Frame Header | 2 | 0x55 0xAA |
固定帧头 |
| Version | 1 | 0x00 |
协议版本 |
| Command | 1 | 0x34 |
命令字 |
| Length | 1 | 0x15 |
数据长度 (21字节) |
| Data | 1 | Mode |
模式值 |
| 1 | Band |
滤波器索引 | |
| 1 | Type |
滤波器类型 | |
| 4 | Freq |
中心频率 (float, 小端序) | |
| 4 | Q |
Q值 (float, 小端序) | |
| 4 | BW |
带宽 (float, 小端序) | |
| 4 | Gain |
增益 (float, 小端序) | |
| Checksum | 1 | Sum |
校验和 |
3.6 复位 EQ 参数 (0x35)
主机发送
| 字节位置 | 长度 | 内容 | 说明 |
|---|---|---|---|
| Frame Header | 2 | 0x55 0xAA |
固定帧头 |
| Version | 1 | 0x00 |
协议版本 |
| Command | 1 | 0x35 |
命令字 |
| Length | 1 | 0x01 |
数据长度 |
| Data | 1 | Mode |
模式号 (0-9)0xFF 表示复位所有模式 |
| Checksum | 1 | Sum |
校验和 |
设备返回 (响应)
| 字节位置 | 长度 | 内容 | 说明 |
|---|---|---|---|
| Frame Header | 2 | 0x55 0xAA |
固定帧头 |
| Version | 1 | 0x00 |
协议版本 |
| Command | 1 | 0x35 |
命令字 |
| Length | 1 | 0x01 |
数据长度 |
| Data | 1 | Status |
状态码 (0x00=成功, 0x01=失败) |
| Checksum | 1 | Sum |
校验和 |
咨询反馈
点击展开咨询反馈表单
--8<-- "common/customer_form.md"