|
想深入了解电子产品中的音频播放世界吗?为了帮助您入门,我们推荐HSC001模块。这是一款24位音频播放器,具有许多出色的功能:尺寸、价格等。您可以将其用于各种用途:在电梯中播放音乐、为各种设备生成声音等等。在本篇帖子中,我们将学习如何使用HSC001模块设置和播放音频文件。
所需的组件 ● HSC001串口语音播放器模块 ● Arduino Uno R3开发板 ● Micro USB OTG电缆 ● 跳线
HSC001模块简介 HSC001是一款可以处理MP3和WAV文件的播放芯片。它还支持USB/SPI FLASH和FAT16/FAT32文件系统。您可以通过串口控制它。它的一些功能包括: ● 使用串口中的简单命令播放音乐 ● 用户友好 ● 从SPI FLASH播放歌曲 ● 直接从USB下载到SPI FLASH ● 使用可靠 该芯片是完全定制的产品,为播放音频文件提供了经济实惠的解决方案。
HSC001模块引脚分布 HSC001音频播放模块共有10个引脚,以下是各个引脚的定义:
● SP+:放大器正极引脚(扬声器功率最高为3W) ● GND:接地 ● VDD:模块电源(3.3V 至 5.4V) ● SP-:放大器负极引脚(扬声器功率最高为3W) ● MUTE:静音输出 ● DP:USB-DP引脚 ● DM:USB-DM引脚 ● ADK:ADK按钮 ● TX:串口UART数据输出 - TTL 电平(3.3V) ● RX:串口UART数据输入 - TTL 电平(3.3V)
使用HSC001模块和Arduino播放音频文件 现在让我们播放存储在连接到模块的闪存中的音频文件。为此,您需要通过串行端口向模块发送相关命令。
协议和相关命令可以在产品页面上的模块数据表中找到。
发送给模块的每个命令应具有以下格式: ● 起始位(0x7E)+数据长度(Len + CMD + para1 + para2)+ CMD + para1 + para2 +结束位(0xEF) ● Len:Len 及其后续位数,结束位除外 ● CMD:命令字,如播放、暂停、音量等。 ● Para1:CMD 的第一个参数 ● Para2:CMD 的第二个参数 例如,以下命令播放存储在闪存中的第一个文件 7E04410001EF 此命令中,数据长度为 4,表示为 [04 41 00 01]。
硬件连接 按如下所示连接各个组件。然后使用OTG线缆将包含模块支持的音频文件的闪存(名为 0001、0002……)连接到模块。
代码 将以下代码复制到Arduino IDE并上传。此代码将播放存储在内存中的每个音频文件10秒,然后转到下一个文件。 - byte currentSound = 0x01;
- void setup() {
- // start serial port at 9600 bps:
- Serial.begin(9600);
- //while (!Serial) {
- // ; // wait for serial port to connect. Needed for native USB port only
- //}
- }
- void loop() {
- Serial.write(0x7E);
- Serial.write(0x04);
- Serial.write(0x41);
- Serial.write(0x00);
- Serial.write(currentSound);
- Serial.write(0xEF);
- delay(10000);
- currentSound = currentSound + 0x01;
- if(currentSound > 10)
- currentSound = 1;
- }
复制代码
代码说明 首先在代码中定义一个变量来存储当前播放的文件号 - byte currentSound = 0x01;
复制代码然后以9600bps波特率启用串行通信 接下来选择要播放的文件。在这些命令中,起始位 (0x7E)、数据长度 (0x04)、文件选择请求 (0x41)、文件号的千位和百位 (0x00)、文件号的十位和个位 (currentSound) 和结束位 (0xEF) 分别发送给模块。如果模块成功接收并执行命令,它将在串口中响应“OK”。 - Serial.write(0x7E);
- Serial.write(0x04);
- Serial.write(0x41);
- Serial.write(0x00);
- Serial.write(currentSound);
- Serial.write(0xEF);
复制代码延迟10秒。 将文件编号加1 - currentSound = currentSound + 0x01;
- if(currentSound > 10)
- currentSound = 1;
复制代码
以上就是使用HSC001模块和Arduino开发板设置和播放音频文件的全部内容,如有任何疑问,请随时在本帖下面回复。
|