紫光同创PGL22G开发平台试用连载(2)——基于SD卡的音频MP3播放器

千年一叹 提交于 周二, 09/29/2020

  很多嵌入式系统都需要大容量存储设备,以存储数据。目前常用的有 U 盘, FLASH 芯片,SD 卡等。他们各有优点,综合比较,最适合单片机系统的莫过于 SD 卡了,它不仅容量可以做到很大(32GB 以上), 支持 SPI/SDIO 驱动,而且有多种体积的尺寸可供选择(标准的 SD 卡尺寸,以及 TF 卡尺寸等),能满足不同应用的要求。只需要少数几个 IO 口即可外扩一个高达 32GB 以上的外部存储器,容量从几十 M 到几十G 选择尺度很大,更换也很方便,编程也简单,是嵌入式系统大容量外部存储器的首选。

    SD 卡的初始化流程,要实现 SDIO 驱动 SD 卡,最重要的步骤就是 SD卡的初始化,只要 SD 卡初始化完成了,那么剩下的(读写操作)就简单了,所以里重点介绍 SD 卡的初始化。

化

    PGL22G 开发板上装有一个 Micro SD 卡座, FPGA 通过 SPI 数据总线访问 Micro SD 卡, SD 卡座和 FPGA 的硬件电路。PGL22G 开发板 SD 卡在 SD 卡数据读写速度要求丌高的情况下,选用 SPI 通信模式可以说是一种最佳的解决方案。因为在 SPI 模式下,通过四条线就可以完成所有的数据交换。 本实验将为大家介绍 FPGA 通过 SPI总线读写 SD 卡。要完成 SD 卡的 FPGA 读写,用户需要理解 SD 卡的命令协议。

   协议

 

本次测评是wav_read 搜寻 SD 卡中的 WAV 文件,并将 WAV 文件读取出来写入 FIFO,最后再从 FIFO 中将数据输出并写入音频模块。

模块

相关文章

Digi-Key