HMI 支持 wav、mp3 音频,能做出开机音乐、触摸伴音、按钮声音,还能用系统寄存器控制播放。这篇把音频应用和播放控制讲清楚。
1. 音频文件管理
【工程】→【资源】→【音频文件】,可添加、删除音频文件。编译后音频文件生成到资源包里。



2. 音频的四种应用
2.1 开机音乐
固定文件名 welcome.mp3,【工程】→【工程属性】→【开机音乐】→ 启用。

2.2 触摸伴音
固定文件名 beep.mp3,操作控件时播放。在【工程属性】→【触摸伴音】→【音频】配置。

⚠️ 配置了触摸伴音后:如果当前正播放 1.mp3,操作控件会停止 1.mp3、播放触摸伴音。想要不打断背景音乐就别配触摸伴音。
2.3 按钮声音
按钮执行动作时播放指定音频文件(数字、字母命名)。支持按钮声音的控件(位状态指示灯等)在按钮属性里选择音频。

2.4 音频控制(系统寄存器)
控制播放的文件必须数字命名(如 1.mp3、2.mp3)。相关寄存器:
| 寄存器 | 作用 |
|---|---|
| sysSndVol | 喇叭音量(0~100) |
| SysSndPlay | 播放指定音频 ID(只能放数字命名的文件) |
| SysSndState | 播放状态:0=空闲,1=开始播放,2=暂停,3=停止,0x80=播放中 |
| SysSndPlayTime | 当前播放进度(秒) |
| SysSndTotalTime | 当前播放时长(秒) |




⚠️ 切换播放的坑:暂停当前歌曲后,选择新音频 ID 播放前,应该先停止。正确顺序:播放ID1 → 暂停 → 停止 → 选择ID2 → 播放;或 播放ID1 → 停止 → 选择ID2 → 播放。直接换 ID 可能不生效。
实时显示播放进度,需要当前画面有控件「刷新变化」——加一个 RTC 控件或 Lua 脚本 redraw(),否则进度条不更新。
整理自 广州大彩科技 VisualHMI 开发文档(hmi-doc.gz-dc.com)资源介绍「声音」,版权归大彩科技所有。
发表回复