IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 嵌入式 -> 音频数据的Flash读取与DAC播放 -> 正文阅读

[嵌入式]音频数据的Flash读取与DAC播放

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

原理介绍

flash

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

好应用程序后,使用下载器把编译后的代码文件烧录到该内部 FLASH 中,由于 FLASH 存

储器的内容在掉电后不会丢失,芯片重新上电复位后,内核可从内部 FLASH 中加载代码并

运行

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-uQbyBtmA-1640943853238)(音频数据的Flash读取与DAC播放/image-20211231121500865.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-k7k4N7K6-1640943853239)(音频数据的Flash读取与DAC播放/image-20211231122753889.png)]

DAC

DAC 为数字/模拟转换模块,故名思议,它的作用就是把输入的数字编码,转换成对

应的模拟电压输出,它的功能与 ADC 相反。在常见的数字信号系统中,大部分传感器信号

被化成电压信号,而 ADC 把电压模拟信号转换成易于计算机存储、处理的数字编码,由计

算机处理完成后,再由 DAC 输出电压模拟信号,该电压模拟信号常常用来驱动某些执行器

件,使人类易于感知。如音频信号的采集及还原就是这样一个过程。

STM32 具有片上 DAC 外设,它的分辨率可配置为 8 位或 12 位的数字输入信号,具有

两个 DAC 输出通道,这两个通道互不影响,每个通道都可以使用 DMA 功能,都具有出错

检测能力,可外部触发。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ubSaq2Pg-1640943853240)(音频数据的Flash读取与DAC播放/image-20211231122911381.png)]

flash读取

配置cubmax

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CFvEsDvC-1640943853240)(音频数据的Flash读取与DAC播放/image-20211231123718251.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SwnqXoUU-1640943853241)(音频数据的Flash读取与DAC播放/image-20211231123754170.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lAUkwPxI-1640943853241)(音频数据的Flash读取与DAC播放/image-20211231123832742.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-J8arRi0R-1640943853242)(音频数据的Flash读取与DAC播放/image-20211231124141131.png)]

工程代码修改

将falsh.c和falsh.h文件加入工程中

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RVW9QpMD-1640943853242)(音频数据的Flash读取与DAC播放/image-20211231135105940.png)]

在main.c中添加代码

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-uHYCiZcm-1640943853242)(音频数据的Flash读取与DAC播放/image-20211231134834842.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4lordqVD-1640943853243)(音频数据的Flash读取与DAC播放/image-20211231140222818.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EAFSlgSa-1640943853243)(音频数据的Flash读取与DAC播放/image-20211231140249032.png)]

stlink调试

ST-LINKSTM32F103
SWCLK/TCKSWCLK/TCK
SWDIO/TMSSWDIO/TMS
GNDGND
VCCVCC

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-KFPGFC2T-1640943853243)(音频数据的Flash读取与DAC播放/image-20211231145712603.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-j8rbCFgX-1640943853244)(音频数据的Flash读取与DAC播放/image-20211231150125830.png)]

若IDCODE显示出来,连接成功

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BPT8dgbH-1640943853244)(音频数据的Flash读取与DAC播放/image-20211231145746754.png)]

点击load

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-OUK9icoH-1640943853244)(音频数据的Flash读取与DAC播放/image-20211231153550666.png)]

完成烧录

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ipQMY4iE-1640943853245)(音频数据的Flash读取与DAC播放/image-20211231153513482.png)]

点击调试

添加memory1、watch1和watch2查看变量变化情况

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rbaJskEr-1640943853245)(音频数据的Flash读取与DAC播放/image-20211231160445871.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-D8BOsIH8-1640943853245)(音频数据的Flash读取与DAC播放/image-20211231161422383.png)]

点击全速运行

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1cPp08qr-1640943853246)(音频数据的Flash读取与DAC播放/image-20211231160542407.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MmUi26dk-1640943853246)(音频数据的Flash读取与DAC播放/image-20211231161403070.png)]

看出内容一样

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nEXtXAQ5-1640943853246)(音频数据的Flash读取与DAC播放/image-20211231155834997.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CmcfyvkC-1640943853246)(音频数据的Flash读取与DAC播放/image-20211231155847231.png)]

基于 Flash 的提示音 DAC 播放

使用 DAC 产生 2khz 周期的正弦波输出

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-46ZlnRUc-1640943853247)(音频数据的Flash读取与DAC播放/image-20211231163154461.png)]

修改参数

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-F13MX1qC-1640943853247)(音频数据的Flash读取与DAC播放/image-20211231163321018.png)]

点击效果->生成基本音色

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Q6uGsgWQ-1640943853247)(音频数据的Flash读取与DAC播放/image-20211231163747968.png)]

修改参数

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zs0xfK6Y-1640943853247)(音频数据的Flash读取与DAC播放/image-20211231163939493.png)]

点击如下,输出文件

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MLjtM5UD-1640943853248)(音频数据的Flash读取与DAC播放/image-20211231164009000.png)]

点开UltraEdit ,打开刚才au输出的wav文件

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kBHLBYnz-1640943853248)(音频数据的Flash读取与DAC播放/image-20211231164325246.png)]

点击Ctrl+a 全选,鼠标右键,16进制复制选定视图,将其复制到新的文件下

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-J9DLFlg8-1640943853248)(音频数据的Flash读取与DAC播放/image-20211231165646926.png)]

Ctrl+a,鼠标右键,选择范围,输入起始列号和结束列号

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LseK4QDU-1640943853248)(音频数据的Flash读取与DAC播放/image-20211231165306629.png)]

复制到notepad++

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kTFA1IcO-1640943853249)(音频数据的Flash读取与DAC播放/image-20211231165337482.png)]

在野火提供的样例程序——DAC 输出正弦波中添加数据

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GZK2cHKe-1640943853250)(音频数据的Flash读取与DAC播放/image-20211231173034809.png)]

编译无误,即可烧录,用示波器得到波形

使用 DAC 输出数字音频歌曲数据转换为模拟音频波形输出

将歌曲转化为wav后,在au中打开,选择存储选区,完成后,步骤和上面一样用示波器得到波形

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BLhVBHrO-1640943853250)(音频数据的Flash读取与DAC播放/image-20211231173810268.png)]

总结

本次学习对内部flash和DAC有了更多的了解,同时对声音的处理也有了粗略的了解。

  嵌入式 最新文章
基于高精度单片机开发红外测温仪方案
89C51单片机与DAC0832
基于51单片机宠物自动投料喂食器控制系统仿
《痞子衡嵌入式半月刊》 第 68 期
多思计组实验实验七 简单模型机实验
CSC7720
启明智显分享| ESP32学习笔记参考--PWM(脉冲
STM32初探
STM32 总结
【STM32】CubeMX例程四---定时器中断(附工
上一篇文章      下一篇文章      查看所有文章
加:2022-01-01 14:06:15  更:2022-01-01 14:07:07 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/26 12:32:53-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码