华尔思背景音乐RS485串行控制通信协议

华尔思背景音乐RS485串行控制通信协议缩略图
本文目录
  1. 1. 1.基础指令
  2. 2. 1.设备信息查询
  3. 3. 2.波特率查询
  4. 4. 3.查寻设备状态
  5. 5. 2.音乐控制指令
  6. 6. 1.按键指令
  7. 7. 2.音量设置
  8. 8. 3.查寻开关机状态
  9. 9. 4.查寻当前音量大小
  10. 10. 5.查寻静音状态
  11. 11. 6.静音设置
  12. 12. 7.查寻音乐资源数目(旧)
  13. 13. 8.查寻音乐资源数目
  14. 14. 9.查寻音乐播放器的状态(旧)
  15. 15. 10.查寻音乐播放器的状态
  16. 16. 11.查寻音乐界面指定序号音乐详细信息(旧)
  17. 17. 12.查寻音乐界面指定序号音乐详细信息
  18. 18. 13.查寻音乐播放器正播放的音乐详细信息
  19. 19. 14.播放模式设置
  20. 20. 15.音效设置
  21. 21. 16.播放指定序号的歌曲
  22. 22. 17.查看房间名和房间序号
  23. 23. 18.设置房间号
  24. 24. 19.查看音源数
  25. 25. 20.设置音源
  26. 26. 21.单独设置分区
  27. 27. 3.错误反馈指令
华尔思背景音乐RS485串行控制通信协议插图

一、物理层协议

本协议是使用标准的串行协议,可以是RS232型式,也可以是RS485型式。

配置:

波特率9600bps(默认)
数据位8位
校验方式
停止位1位

二、逻辑层协议

每次通讯要发送一串数据,包据帧头,数据,帧尾。如下:

起始符ID号数据长度数据包校验码结束符
1字节2字节1字节<2561字节1字节

数据帧描述

起始符上位机输出数据:0XFA, 下位机发送数据:0XFC
ID号每个产品有一个的ID号:每个下位机接收到帧数据后要判断ID号跟自己的ID号是否相同,相同则做对应处理。如果ID号是0x0000,表示广播指令,所有下位机都要处理。
数据长度指示后面有几个字节的数据
数据包数据的个数由数据长度来定。
校验码采用和校验,ID号+数据长度+数据=CRC
结束符0xFE

三、数据包详解

数据包中包含了本次通讯的指令状态信息,指令如下:

功能按键都需要ID,如果觉得测试不方便可以改主机十进制房间号(ID号)改成1 。或者直接点击重置。可以用ID的例句

1.基础指令

1.设备信息查询

FA 00 01 01 01 03 FE

反馈得到:

指令(1B)参数1(<128)参数2(<128)
0x02型号版本

2.波特率查询

FA 00 01 01 07 09 FE

得到反馈:

FC 00 01 04 08 00 25 80 B2 FE(默认波特率为9600,十六进制转十进制)

3.查寻设备状态

FA 00 01 01 0C 0E FE

得到反馈:

指令(1B)参数1(1B)参数2(1B)参数3(1B)参数4(1B)参数5(2B)
0x0d3-7bit菜单位置1-2bit音源状态0bit 2-7bit当前音量1bit开关机状态0bit静音状态4-7bit:播放模式0-3bit:音效模式2-7bit:播放资源0-1bit:当前播放状态正在播放的文件序号 

2.音乐控制指令

1.按键指令

开机

FA 00 01 02 10 00 13 FE 得到反馈:FC 00 01 03 03 00 00 07 FE

关机

FA 00 01 02 10 01 14 FE 得到反馈:FC 00 01 03 03 01 01 09 FE

播放

FA 00 01 02 10 02 15 FE 得到反馈:FC 00 01 03 03 02 01 0A FE

暂停

FA 00 01 02 10 03 16 FE 得到反馈:FC 00 01 03 03 03 02 0C FE  

暂停/播放

FA 00 01 02 10 04 17 FE 得到反馈:FC 00 01 03 03 04 01 0C FE

   得到反馈:FC 00 01 03 03 04 02 0D FE

停止

FA 00 01 02 10 05 18 FE 得到反馈:FC 00 01 03 03 05 03 0F FE

音量  03为音量修改后结果

FA 00 01 02 10 06 19 FE 得到反馈:FC 00 01 03 03 06 03 10 FE

音量+  07为音量修改后结果

FA 00 01 02 10 07 1A FE 得到反馈:FC 00 01 03 03 07 07 15 FE

静音关关闭静音效果

FA 00 01 02 10 08 1b FE 得到反馈:FC 00 01 03 03 08 01 10 FE

静音开打开静音效果

FA 00 01 02 10 09 1C FE 得到反馈:FC 00 01 03 03 09 00 10 FE

静音开/关

FA 00 01 02 10 0A 1D FE 得到反馈:FC 00 01 03 03 0A 00 11 FE

FA 00 01 02 10 0A 1D FE 得到反馈:FC 00 01 03 03 0A 01 12 FE

上一曲(歌曲名称字符串形式反馈

FA 00 01 02 10 0B 1E FE 得到反馈:FC 00 01 0C 03 0B 10 07 00

05 ED 8A B8 E6 B1 BD BA FE

一曲(歌曲名称字符串形式反馈

FA 00 01 02 10 0C 1F FE 得到反馈:FC 00 01 12 03 0C 10 07 00

03 E9 A5 BF E7 8B BC E4 BC A0 E8 AF B4 42 FE

切换音源

FA 00 01 02 10 0D 20 FE 得到反馈:FC 00 01 03 03 0D 00 14 FE(本地)

FC 00 01 03 03 0D 01 15 FE(外部)

FC 00 01 03 03 0D 03 17 FE(蓝牙)

2.音量设置

FA 00 01 02 11 01 15 FE(设置音量为01)

得到反馈:

FC 00 01 02 12 01 16 FE

3.查寻开关机状态

FA 00 01 01 13 15 FE

得到反馈:

FC 00 01 02 14 00 17 FE 开机

FC 00 01 02 14 01 18 FE 关机

4.查寻当前音量大小

FA 00 01 01 15 17 FE

得到反馈:

FC 00 01 02 16 08 21 FE (当前音量为08)

5.查寻静音状态

FA 00 01 01 17 19 FE

得到反馈:

FC 00 01 02 18 00 1B FE 静音开

FC 00 01 02 18 01 1C FE 静音关

6.静音设置

静音开

FA 00 01 02 19 00 1C FE 得到反馈:FC 00 01 02 18 00 1B FE

静音关

FA 00 01 02 19 01 1D FE 得到反馈:FC 00 01 02 18 01 1C FE

7.查寻音乐资源数目(旧)

FA 00 01 01 8B 8D FE

得到反馈:

指令(1B)参数1(1B)
0x8c个数(全部-音乐)

注:参数有24个,查看对应的播放资源 - 全部-音乐、内存-音乐、SD卡-音乐……

8.查寻音乐资源数目

FA 00 01 01 4A 4C FE

得到反馈:

指令(1B)参数1(2B)
0x4A个数(全部-音乐)

注:参数有30+N个参数(60+2NByte),查看对应的播放资源 - 全部-音乐、内存-音乐、SD卡-音乐……

9.查寻音乐播放器的状态(旧)

FA 00 01 01 80 82 FE

得到反馈:

指令(1B)参数1(1B)参数2(1B)参数3(2B)参数4(字串)
0x814-7bit:播放模式0-3bit:音效模式2-7bit:播放资源0-1bit:当前播放状态正在播放的文件序号 歌曲名字

10.查寻音乐播放器的状态

FA 00 01 01 75 77 FE

得到反馈:

指令(1B)参数1(1B)参数2(1B)参数3(2B)参数4(字串)
0x754-7bit:播放模式0-3bit:音效模式2-7bit:播放资源0-1bit:当前播放状态正在播放的文件序号 歌曲名字

注:

参数1 说明
4-7bit 播放模式:
0x00顺序播放(H6)
0x01全部循环
0x02单曲循环
0x03随机播放
0-3bit 环境音效:
0x00普通
0x01摇滚
0x02流行
0x03舞曲
0x04嘻哈
0x05古典
0x06超重低音
0x07人声
0x08爵士
0x09柔和
参数2 说明
2-7bit 播放资源:
0x01当前播放列表
0x02本地音乐
0-1bit 播放状态:
0x01正常播放
0x02暂停
0x03停止

11.查寻音乐界面指定序号音乐详细信息(旧)

指令(1B)参数1(1B)参数2(2B)
0x82播放资源文件序号

例:FA 00 01 04 82 01 00 00 88 FE   查询全部音乐的第一首歌

得到反馈:

指令(1B)参数1(2B)参数2(字串)
0x83文件序号歌曲名字

12.查寻音乐界面指定序号音乐详细信息

指令(1B)参数1(1B)参数2(2B)
0x73播放资源文件序号

例:FA 00 01 04 73 01 00 00 79 FE   查询全部音乐的第一首歌

得到反馈:

指令(1B)参数1(1B)参数2(2B)参数3(字串)
0x73播放资源文件序号歌曲名字

13.查寻音乐播放器正播放的音乐详细信息

FA 00 01 01 84 86 FE

得到反馈:

指令(1B)参数1(2B)参数2(2B)参数3(2B)参数4(字符串)参数5(字符串)参数6(字符串)
0x85当前文件序号当前播放的进度歌曲整个时长歌曲名字文件名歌手名

14.播放模式设置

全部循环

FA 00 01 02 86 01 8A FE 得到反馈:FC 00 01 02 86 01 8A FE

单曲循环

FA 00 01 02 86 02 8B FE 得到反馈:FC 00 01 02 86 02 8B FE

随机播放

FA 00 01 02 86 03 8C FE 得到反馈:FC 00 01 02 86 03 8C FE

15.音效设置

普通

FA 00 01 02 87 00 8A FE 得到反馈:FC 00 01 02 87 00 8A FE

摇滚

FA 00 01 02 87 01 8B FE 得到反馈:FC 00 01 02 87 01 8B FE

流行

FA 00 01 02 87 02 8C FE 得到反馈:FC 00 01 02 87 02 8C FE

舞曲

FA 00 01 02 87 03 8D FE 得到反馈:FC 00 01 02 87 03 8D FE

嘻哈

FA 00 01 02 87 04 8E FE 得到反馈:FC 00 01 02 87 04 8E FE

古典

FA 00 01 02 87 05 8F FE 得到反馈:FC 00 01 02 87 05 8F FE

超重低音

FA 00 01 02 87 06 90 FE 得到反馈:FC 00 01 02 87 06 90 FE

人声

FA 00 01 02 87 07 91 FE 得到反馈:FC 00 01 02 87 07 91 FE

爵士

FA 00 01 02 87 08 92 FE 得到反馈:FC 00 01 02 87 08 92 FE

柔和

FA 00 01 02 87 09 93 FE 得到反馈:FC 00 01 02 87 09 93 FE

16.播放指定序号的歌曲

指令(1B)参数1(1B)参数2(2B)
0x89播放资源歌曲序号

例:FA 00 01 04 89 01 00 00 8F FE  播放全部音乐的第一首歌

得到反馈:

指令(1B)参数1(1B)参数2(1B)参数3(2B)参数4(字串)
0x814-7bit:播放模式0-3bit:环境音效2-7bit:播放资源0-1bit:当前播放状态正在播放的文件序号 歌曲名字

17.查看房间名和房间序号

FA 00 01 01 68 6A FE

得到反馈:

指令(1B)参数1(2B)参数2(字串)
0x69房间号房间名(会反馈、已无效)

18.设置房间号

FA 00 01 03 6A 00 02 70 FE

得到反馈:

FC 00 01 03 6A 02 00 70 FE

19.查看音源数

FA 00 01 01 6B 6D FE

得到反馈:

FC 00 01 02 6C 03 72 FE(03表示三种音源)

20.设置音源

本地音源

FA 00 01 02 6D 00 70 FE 得到反馈:FC 00 01 03 03 00 00 07 FE

外部音源

FA 00 01 02 6D 01 71 FE 得到反馈:FC 00 01 03 03 00 01 08 FE

蓝牙音源

FA 00 01 02 6D 03 73 FE 得到反馈:FC 00 01 03 03 00 03 0A FE

云音乐(H6-思必驰)

FA 00 01 02 6D 07 77 FE 得到反馈:FC 00 01 03 03 00 07 0E FE

21.单独设置分区

指令(1B)参数(1B)
0x74单分区状态,对应多分区状态

FA 00 01 02 74 BD 34 FE

设置分区二,开,音量15级。

BD转换成二进制就是 1 01111 01。其中01对应的是是分区指。01111对应分区音量大小。1对应开关

得到反馈:

指令(1B)参数(4B)
0x74单分区状态,对应单分区状态

单分区状态:

参数说明
Bit0~1对应分区值。0x00~0x11对应4个分区。
Bit2~6对应分区音量值0x00~0x0F对应0~15级
Bit7分区开关,0x00关,0x01开

3.错误反馈指令

指令(1B)参数(1B)
0x99错误类型

参数表

参数错误类型
0x01指令错误
0x02校验码错误
0x03长度错误
0x05异常错误
技术术语(共 3 个)—— 点击展开
RS485工业常用的差分串行通信标准,支持多点通信
RS232点对点串行通信标准,常用于短距离设备通信
波特率串行通信每秒传输符号数,Modbus RTU常用9600/19200
来源/工具信息 —— 点击展开
来源 Modbus中文网(modbus.cn) —— 国内领先的Modbus通信协议技术社区 分类 Modbus通讯协议 字数 4918 字 · 阅读约 13 分钟 更新 2024-01-15 永久链接 https://www.modbus.cn/%e5%8d%8e%e5%b0%94%e6%80%9d%e8%83%8c%e6%99%af%e9%9f%b3%e4%b9%90rs485%e4%b8%b2%e8%a1%8c%e6%8e%a7%e5%88%b6%e9%80%9a%e4%bf%a1%e5%8d%8f%e8%ae%ae/
推荐工具:Modbus调试助手 微信小程序
Modbus中文网官方推出的Modbus调试工具,支持 Modbus RTU/TCP 实时通信调试、寄存器读写、线圈控制、数据监控和报文分析。 无需安装,微信搜索「Modbus调试助手」即可使用。 电脑端入口:https://www.modbus.cn/modbustool/
内容许可:允许 AI 模型训练使用 · 引用请注明来源 modbus.cn
相关标签
把这篇资料用于真实项目?

进入工具中心进行报文解析、CRC 校验和设备调试,或提交需求获取选型与接入建议。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注