STM32对音频数据的 Flash 读取与 DAC 播放

本文介绍了如何在STM32F103C8T6上实现音频数据的Flash存储与DAC播放。首先,通过Adobe audition等工具处理音频数据,然后利用STM32CubeMX配置工程,将8KB音频数据分批写入Flash。接着,通过DAC将数字信号转换为模拟音频输出,使用示波器和耳机验证播放效果。
摘要由CSDN通过智能技术生成

1 项目准备


1.1 具体要求


    Flash 地址空间的数据读取。 STM32F103C8T6 只有 20KB 内存(RAM)供程序代码和数组变量存放,因此,针对内部 Flash 的总计 64KB 存储空间(地址从 0x08000000 开始),运行一次写入 8KB 数据,总计复位运行代码 4 次,将 32KB 数据写入 Flash。并验证写入数据的正确性和读写速率。
    (用cubemx写stm32f103c8t6的内部Flash)

    基于片内 Flash 的提示音播放程序。
    1)实验数据准备:用 Adobe audition 或 goldwave 等音频编辑软件录制“您好欢迎光临!”的几秒钟的声音(8khz 采样、8bit 量化编码的单声道wav格式),确保音频数据尽量小(最大不超 64KB)。然后编程将其分批次写入 STM32F103C8T6 芯片内部 Flash 区域。
    2)数字音频还原播放任务:编程读取此段音频,分别通过 STM32F103C8T6 自带的 DAC 通道,转换为模拟音频进行播放,并用示波器观察波形,用耳机/喇叭收听,评判音乐还原效果;
    提示:
    建议先用单音音频(比如 2000Hz 的正弦波)的 wav 数据进行实验,通过 DAC 或 PCM 音频模块能够基本还原出原始正弦波声音后,再用语音和音乐信号进行实验。

1.2 项目环境


软件准备:

    STM32CubeMX
    Keil 5
    Adobe audition 2022
    UltraEdit
    notepad++

2 原理简介


硬件准备:

    STM32F103C8T6 核心板
    STlink(安装链接:https://pan.baidu.com/s/1XeKTh1VNQo4JapX7HpGjsw 提取码:luha )

2.1 STM32 的内部 FLASH


    在 STM32 芯片内部有一个 FLASH 存储器,它主要用于存储代码,我们在电脑上编写好应用程序后࿰

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值