复杂的(压缩过的)数据不好说,
但纯PCM流,只需要合适的时钟频率,不停的读取数据然后DAC就可以输出。
进一步,其它数据如果能解压出PCM就可以按前面说的办法DAC输出。
单片机播放音频可以直接DAC输出也可以外接解码芯片播放
前者比较吃资源,效果受到DAC速度和解码速度影响,后者实现更方便,成本更高一点
STM32带有I2S接口,可以通过I2S连接一个外置的音频编解码芯片,比如VS1053这种
也可以直接用STM32的DAC实现音频播放,不过频率低很多
有几下几个要点
STM32的有输出音频的外设,也就是喇叭,还有要在程序上对音频进行解码,还有要文件系统,从SD卡中读取音频文件