Funpack-第11期 使用LCP55S69完成读取SD卡中的音频文件并播放
使用LCP55S69的SD卡槽和3.5mm的音频线完成读取SD卡中的音频文件并播放
标签
嵌入式系统
测试
LCP55S69
一颗星
更新2021-11-01
774

一,LCP55S69 硬件介绍

1 LPCXpresso55S69 开发板为评估和开发基于 Arm ® Cortex ® -M33 架构的 LPC55S6x MCU 提供了理想的平台。该板包括高性能板载调试探针、音频子系统和加速度计,并提供多种选项,用于添加用于网络、传感器、显示器和其他接口的现成附加板。

2 LPC55S6x MCU家族是全球首款基于通用Cortex-M33的微控制器。

3 该高效率MCU家族采用Armv8-M架构,性能和高级安全功能达到新水平,包括TrustZone-M和协处理器扩展。LPC55S6x家族利用协处理器扩展型号,大幅提高信号处理效率,采用专有DSP加速器,使计算的时钟周期减少了10倍。还可选择使用第二个Cortex-M33内核,支持灵活地平衡高性能与功率效率。

4 LPC55S6x MCU家族依托基于40nm NVM的处理技术,具备成本效益优势,提供广泛的可扩展封装和存储器选项,并提供强大的支持,包括MCUXpresso软件和工具生态系统及低成本开发板。

二 ,实现功能介绍

通过使用LCP55S69的sd卡槽和3.5mm的音频接口,通过一个音乐播放器实现对SD卡中的音频文件的播放。

三,功能的实现

1  等待SD卡的插入

static status_t WaitSDInsert(void)
{BOARD_SD_Config(&g_sd, NULL, BOARD_SDMMC_SD_HOST_IRQ_PRIORITY, NULL);

if (SD_HostInit(&g_sd) != kStatus_Success)
{
return kStatus_Fail;
}

if (SD_PollingCardInsert(&g_sd, kSD_Inserted) == kStatus_Success)
{SD_SetCardPower(&g_sd, false);
SD_SetCardPower(&g_sd, true);
}
else
{return kStatus_Fail;
}return kStatus_Success;
}

2 打开并读取音频文件写入缓冲区

f_open(&g_fileObject, _T("/music.wav"), (FA_READ | FA_OPEN_ALWAYS));

f_read(&g_fileObject, tf_Music0, sizeof(tf_Music0), &bytesRead);

3 播放音乐

static void MusicPlay(void)
{
PRINTF("Setup looping playback of sine wave\r\n");

s_TxTransfer.data = &tf_Music0[0];

s_TxTransfer.dataSize = sizeof(tf_Music0);

I2S_TxTransferCreateHandle(DEMO_I2S_TX, &s_TxHandle, TxCallback,(void*) &s_TxTransfer);

I2S_TxTransferNonBlocking(DEMO_I2S_TX, &s_TxHandle, s_TxTransfer);
}

4进行中断反馈信息

static void TxCallback(I2S_Type *base, i2s_handle_t *handle,
status_t completionStatus, void *userData)
{
/* Enqueue the same original s_Buffer all over again */
if (Music_flag == 0)
{
Music_flag = 1;
s_TxTransfer.data = &tf_Music1[0];
s_TxTransfer.dataSize = sizeof(tf_Music1);
I2S_TxTransferNonBlocking(base, handle, s_TxTransfer);
}
else
{
Music_flag = 0;
s_TxTransfer.data = &tf_Music0[0];
s_TxTransfer.dataSize = sizeof(tf_Music0);
I2S_TxTransferNonBlocking(base, handle, s_TxTransfer);
}
}

四,功能展示

1 首先将音频文件放入SD卡中Ftt08WUXFR2QmlOWkx-9vqQqCvqz

2 将SD卡放入卡槽并将音响连接音频接口

FroL4jipstgZrA0J9l8hjPbCCyfo

3 打开音响,即可播放音乐

FpMQwxNT7N1qAWRqCjxJ5MtcO1Et

五 对活动的心得体会

非常感谢硬禾学堂可与组织本次活动,作为一个刚学习嵌入式的大三学生,通过参加本次活动,让我对嵌入式有了更深的了解,也让我对嵌入式产生了兴趣。同时在活动中也认识到了自己的不足之处,在以后嵌入式的学习中也会努力提高自己相关的知识储备。LCP55S69是一个非常不错的板子,通过音频播放的项目完成,让我对数据传输有了更好的理解。

 

 

团队介绍
沈阳理工大学 自动化学院大三学生
团队成员
一颗星
评论
0 / 100
查看更多
目录
硬禾服务号
关注最新动态
0512-67862536
info@eetree.cn
江苏省苏州市苏州工业园区新平街388号腾飞创新园A2幢815室
苏州硬禾信息科技有限公司
Copyright © 2023 苏州硬禾信息科技有限公司 All Rights Reserved 苏ICP备19040198号