音频数据的Flash读取与DAC的播放
文章目录
- 一、Flash地址空间的数据读取
- 1.Flash简介
- 内部 FLASH 的构成
- 2.建立工程
- 3.编辑代码
- 4.STlink调试仿真
- 二、基于片内Flash的提示音播放程序
- 1.使用DAC输出周期2khz的正弦波
- 2.数字音频还原播放
- 三、总结
- 四、参考链接
一、Flash地址空间的数据读取
1.Flash简介
在 STM32 芯片内部有一个 FLASH 存储器,它主要用于存储代码,我们在电脑上编写好应用程序后,使用下载器把编译后的代码文件烧录到该内部 FLASH 中,由于 FLASH 存储器的内容在掉电后不会丢失,芯片重新上电复位后,内核可从内部 FLASH 中加载代码并运行。
内部 FLASH 的构成
①主存储器
一般我们说 STM32 内部 FLASH 的时候,都是指这个主存储器区域,它是存储用户应用程序的空间,芯片型号说明中的 256K FLASH、512K FLASH 都是指这个区域的大小。
主存储器分为 256 页,每页大小为 2KB,共 512KB。这个分页的概念,实质就是FLASH 存储器的扇区,与其它 FLASH 一样,在写入数据前,要先按页(扇区)擦除。
注意上表中的主存储器是本实验板使用的 STM32VET6 型号芯片的参数,即
STM32F1 大容量产品。若使用超大容量、中容量或小容量产品,它们主存储器的页数量、页大小均有不同,使用的时候要注意区分。
②系统存储区
系统存储区是用户不能访问的区域,它在芯片出厂时已经固化了启动代码,它负责实现串口、USB 以及 CAN 等 ISP 烧录功能。
③选项字节
选项字节用于配置 FLASH 的读写保护、待机/停机复位、软件/硬件看门狗等功能,这部分共 16 字节。可以通过修改 FLASH 的选项控制寄存器修改。
2.建立工程
用STM32cubeMX建立工程:
接着我们进入生成的工程中。
3.编辑代码
首先我们下载需要的文件。
百度网盘下载链接:flash.c和flash.h文件源码
提取码:pmvn
将flash.h复制到该文件夹下:
添加flash.c:
开始修改main.c:
4.STlink调试仿真
百度网盘下载链接:STlink官方驱动
提取码:ykpz
下载后安装驱动。
设备接线情况:
点击load直接烧录进去,然后运行并且全速运行。然后运行到这里。
在view里面打开memory查看内存变化,输入0x800c000查找,可以看到我代码中我写入的语句被成功写入到flash内存中。
通过view打开watch查看两个数组的内容,发现成功变为一致。
断电后再接电重写,可以发现同样的位置写入的东西一致,之后的FF说明数据没有继续覆盖写入。
二、基于片内Flash的提示音播放程序
1.使用DAC输出周期2khz的正弦波
先建立一个正弦音频。
我们用UE打开刚刚的wav。CTRL+A,接着鼠标右键,选择 十六进制复制选定视图,将内容粘贴到一个新建文件中,在新建文件中,CTRL+A,接着鼠标右键,选择范围输入起始的行号和列号(列号12-58),确定就选中了整个我们需要的内容复制到notepad++中。
Edit编辑->列块编辑->输入0x 一列一列加不要急。
百度网盘下载链接:例程源码
提取码:706i
编译下载后有设备的话就能看是否是正弦波形了。
2.数字音频还原播放
打开我们的下好的mp3文件,先转化为wav。
按照上面同样的步骤,同样用例程并且修改编译,烧录进我们的开发板,如果有音频设备就能尝试一下能不能播放出音乐。
三、总结
本次实验由于设备和时间原因做的非常粗糙,心里面是很想真实地实验一下,但是实在是心有余而力不足。
四、参考链接
STM32 进阶教程 13 – FLASH的读写操作
【嵌入式22】STM32F1C8T6音频数据的Flash读取与DAC播放
音频数据的Flash读取与DAC的播放相关推荐
- 音频数据的Flash读取与DAC播放
目录 二.Flash地址空间的数据读取 1.flash 2.stm32CubeMX文件创建 3.keil文件配置 4.s-TLINK调试 三.基于片内Flash的提示音播放程序 1.输出2000kHZ ...
- STM32 音频数据的Flash读取与DAC播放
STM32 音频数据的Flash读取与DAC播放 STM32 音频数据的Flash读取与DAC播放 STM32 音频数据的Flash读取与DAC播放 一.题目内容 二.Flash地址空间数据读取 1. ...
- 基于 STM32对音频数据的 Flash 读取与 DAC 播放
目录 1 项目准备1.1 具体要求 1.2 项目环境 2 原理简介 2.1 STM32 的内部 FLASH 2.2 STM32 的 DAC 通道2.2.1 何为 DAC 2.2.2 STM32 的 D ...
- 基于 STM32F103C8T6 对音频数据的 Flash 读取与 DAC 播放
文章内容: STM32F103C8T6 的 Flash 地址空间的数据读取. STM32F103C8T6 自带的 DAC 通道,转换为模拟音频进行播放,并用示波器观察波形,用耳机/喇叭收听,评判音乐还 ...
- STM32F103C8T6音频数据的Flash读取与DAC播放
目录 一.Flash地址空间的数据读取 1.Flash简介 2.Flash的硬件实现机制 3.使用到的硬件及软件 4.STM32CubeMX工程配置 5.keil代码 6.STlink调试说明 7.调 ...
- STM32之音频数据的Flash读取与DAC播放
文章目录 一. STM32103之内部Flash原理 1. Flash介绍 2. Flash的组成 3. STM32内部框架图 二. SD卡的读写 1. 实验过程 2. 查看hello.txt 3. ...
- 音频数据的SD/Flash读取与DAC播放
文章目录 一.简介 1.flash简介 2.DAC简介 二.预备实验 1.问题描述 2.ST-LINK准备 3.Flash地址空间的数据读取 三.基于片内Flash的提示音播放程序 1.使用DAC输出 ...
- STM32利用flash读取音频数据读取与DAC播放
目录 一.博客内容 二.Flash地址空间的读取 2.1 Flash原理 2.2 软.硬件准备 2.3 利用CubeMX建立工程 2.4 工程代码 2.5 ST-Link的使用 2.6 仿真调试 三 ...
- STM32最小板完成音频数据的读取与DAC播放
目录 一.Flash简单介绍 1.Flash操作流程与操作选址 1.1.Flash操作流程 1.2 .如何查找并选定要写入Flash十六进制地址 2.Flash读写等相关原理 2.1.闪存的读取 2. ...
最新文章
- 她们,在字节跳动写代码
- opencv 斑马线,条纹检测
- mysql sha1prng_Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException | 学步园...
- 学Excel函数公式,怎能不会这个组合套路?
- 01-二维数组中的查找
- Wondershare DVD Creator for Mac使用教程
- 新鲜出炉的2012年8月桌面日历壁纸免费下载
- MySQL数据库基础教程(视频)
- 信息系统分析与设计课程心得
- 宽度学习(Broad Learning System)
- Win10笔记本电脑怎么直接重置初始化
- 计算机网络之无线与移动网络-蜂窝网络
- [Tableau] Tableau知识技能
- Mysql的交叉表查询
- 链接生成二维码( QRCode )
- M1 Mac使用photoshop液化、存储为web格式黑屏如何解决
- MapGuide 初步
- MSSQL的datediff函数
- 西工大c语言程序设计,西工大18春《C语言程序设计》平时作业
- 三星s4系统更新无法连接到服务器,图解三星S4连接不上Kies软件的解决方法