| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 嵌入式 -> STM32 音频数据的Flash读取与DAC播放 -> 正文阅读 |
|
[嵌入式]STM32 音频数据的Flash读取与DAC播放 |
STM32 音频数据的Flash读取与DAC播放STM32 音频数据的Flash读取与DAC播放一、题目内容
基于片内Flash的提示音播放程序。 二、Flash地址空间数据读取1、原理不同型号的 STM32,其 FLASH 容量也有所不同,最小的只有 16K 字节,最大的则达到了 1024K 字节。市面上 STM32F1 开发板使用的芯片是 STM32F103系列,其 FLASH 容量一般为 512K 字节,属于大容量芯片。 Flash的编程原理都是只能将1写为0,而不能将0写为1,所以在进行Flash编程前,必须将对应的块擦除,即将该块的每一位都变为1,块内所有字节变为0xFF。 STM32F1 的闪存(Flash)模块:主存储器、信息块、闪存存储器接口寄存器。 2、工程这里可以放上别人的网盘flash工程下载链接:https://pan.baidu.com/s/11Tn8TocHT8qithneDyKFIQ
3、STlink调试说明接线: 4、修改在电脑上下载好响应的ST-Link驱动,上电,可以看到STLink在电脑上显示出来。 可以说明ST-Link 驱动已经安装完成。接下来只需要在 mdk 工程里面配置一下 ST-Link即可。 JTAG 模式和 SWD 模式使用方法都是一样的,不同的是,SWD 接口调试更加节省端口,一般情况下,为了节省更多的资源,建议大家使用 SWD 模式仿真。 5、调试进入debug,如果是仿真调试的话,实际操作发现数组没有产生变化。 View->memory windows->memory 1打开内存观察窗口,并在地址栏中输入:0x800c000,观察将要修改的flash区间区容: 通过内部flash的学习,以后基于STM32开发就可以省去一些外部flash或EEPROM了。 此次操作Flash使用的MCU是STM32F103C8T6,以该型号MCU为例进行描述: 在数据手册中,可以看到STM32F103C8T6的flash起始地址是0x0800 0000(如下图所示),而STM32F103C8T6的Flash大小为64K,可以计算出STM32F103C8T6的Flash地址范围是:0x0800 0000——0x0800 FFFF(计算方法参考另一篇博客:STM32内存大小与地址的对应关系以及计算方法)。这里选取0x0800 F000作为读写操作的起始地址,对于C8T6这款MCU,操作这个起始地址应该算是很安全的范围了。 三、基于片内Flash的提示音播放程序简介: STM32具有片上DAC外设,它的分辨率可配置为8位或12位的数字输入信号,具有两个DAC输出通道,这两个通道互不影响,每个通道都可以使用DMA功能,都具有出错检测能力,可外部触发。 1、用DAC输出周期2KHZ的正弦波建议先用单音音频(比如2000Hz的正弦波)的wav数据进行实验,通过DAC或PCM音频模块能够基本还原出原始正弦波声音后,再用语言/音乐信号进行实验。 这里借用DAC生成正弦波的例程代码 2、用DAC输出数字音频歌曲数据转换为模拟音频波形输出采样率修改 四、实验总结通过这次实验,我们可以了解到很多关于flash的相关知识,学到了许多课本上没有的东西,明白了要能够将理论运用到实践上去,而不是仅仅只是会理论。总之收获很大。 五、参考https://blog.csdn.net/zhanglifu3601881/article/details/96632971 |
|
嵌入式 最新文章 |
基于高精度单片机开发红外测温仪方案 |
89C51单片机与DAC0832 |
基于51单片机宠物自动投料喂食器控制系统仿 |
《痞子衡嵌入式半月刊》 第 68 期 |
多思计组实验实验七 简单模型机实验 |
CSC7720 |
启明智显分享| ESP32学习笔记参考--PWM(脉冲 |
STM32初探 |
STM32 总结 |
【STM32】CubeMX例程四---定时器中断(附工 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年1日历 | -2025/1/9 3:33:47- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |