STM32F103的DAC功能实现音频输出


本次实验主要内容:用Adobe audition或goldwave等音频编辑软件录制“您好欢迎光临!”的几秒钟的声音(8khz采样、8bit量化编码的单声道wav格式),确保音频数据尽量小(最大不超64KB)。然后编程将其分批次写入stm32f103c8t6芯片内部flash区域。


一、DAC简介

数模转换器,又称D/A转换器,简称DAC,它是把数字量转变成模拟的器件。D/A转换器基本上由4个部分组成,即权电阻网络、运算放大器、基准电源和模拟开关。模数转换器中一般都要用到数模转换器,模数转换器即A/D转换器,简称ADC,它是把连续的模拟信号转变为离散的数字信号的器件。(数模转换器_百度百科 (baidu.com)

单个DAC通道的框图如下图所示:

在这里插入图片描述

图 1-1

更多内容请参考STM32参考手册

二、录制音频

1. 生成wav文件

打开AU软件,点击录制按钮

在这里插入图片描述

图 2.1-1

接下来弹出窗口,设置参数:采样率:8000Hz,声道:单声道,位深度:8位

在这里插入图片描述

图 2.1-2

或者也可以在网上生成电子音(导入AU后配置导出参数后导出),最后得到wav文件。为了得到16进制数字文件,这里我们有两种方式。

2. 使用Ultra Edit软件

使用Ultra Edit软件打开wav文件

在这里插入图片描述

图 2.2-1

使用Ctrl+A命令全选,然后右键十六进制复制选定视图

在这里插入图片描述

图 2.2-2

然后新建文件,将内容粘贴到该文件中

在这里插入图片描述

图 2.2-3

然后全选,选择范围

在这里插入图片描述

图 2.2-4

选择范围

在这里插入图片描述

图 2.2-5

打开NotePad++软件,将复制的内容粘贴到这里

在这里插入图片描述

图 2.2-6

按照下图操作为数字加上前缀0x,从第一列开始使用列编辑操作为每一列前加上0x

在这里插入图片描述

图 2.2-7

3. 使用 WavToC软件

打开WavToC软件,选择文件后打开,点击生成代码

在这里插入图片描述

图 2.3-1

得到数字文件后,点击保存即可

在这里插入图片描述

图 2.3-2

三、修改代码

在野火官网可以下载程序代码,然后修改bsp_dac.c数组中的内容

在这里插入图片描述

图 3-1

由于条件限制,这里就无法进行下去了。感兴趣的读者可以自行购买设备进行实验。

四、总结

本次实验主要是对于音频文件的处理过程,由于硬件部分的限制,这里无法展示实验结果。对于代码部分,需要理解的东西比较多,可以在网络上查看相关学习视频学习。

五、参考资料

使用STM32F103的DAC功能实现音频输出_咩咩叫的闲鱼的博客-CSDN博客_stm32f103有dac

版权声明:本文为CSDN博主「江南烟浓雨」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_41675500/article/details/122247341


本次实验主要内容:用Adobe audition或goldwave等音频编辑软件录制“您好欢迎光临!”的几秒钟的声音(8khz采样、8bit量化编码的单声道wav格式),确保音频数据尽量小(最大不超64KB)。然后编程将其分批次写入stm32f103c8t6芯片内部flash区域。


一、DAC简介

数模转换器,又称D/A转换器,简称DAC,它是把数字量转变成模拟的器件。D/A转换器基本上由4个部分组成,即权电阻网络、运算放大器、基准电源和模拟开关。模数转换器中一般都要用到数模转换器,模数转换器即A/D转换器,简称ADC,它是把连续的模拟信号转变为离散的数字信号的器件。(数模转换器_百度百科 (baidu.com)

单个DAC通道的框图如下图所示:

在这里插入图片描述

图 1-1

更多内容请参考STM32参考手册

二、录制音频

1. 生成wav文件

打开AU软件,点击录制按钮

在这里插入图片描述

图 2.1-1

接下来弹出窗口,设置参数:采样率:8000Hz,声道:单声道,位深度:8位

在这里插入图片描述

图 2.1-2

或者也可以在网上生成电子音(导入AU后配置导出参数后导出),最后得到wav文件。为了得到16进制数字文件,这里我们有两种方式。

2. 使用Ultra Edit软件

使用Ultra Edit软件打开wav文件

在这里插入图片描述

图 2.2-1

使用Ctrl+A命令全选,然后右键十六进制复制选定视图

在这里插入图片描述

图 2.2-2

然后新建文件,将内容粘贴到该文件中

在这里插入图片描述

图 2.2-3

然后全选,选择范围

在这里插入图片描述

图 2.2-4

选择范围

在这里插入图片描述

图 2.2-5

打开NotePad++软件,将复制的内容粘贴到这里

在这里插入图片描述

图 2.2-6

按照下图操作为数字加上前缀0x,从第一列开始使用列编辑操作为每一列前加上0x

在这里插入图片描述

图 2.2-7

3. 使用 WavToC软件

打开WavToC软件,选择文件后打开,点击生成代码

在这里插入图片描述

图 2.3-1

得到数字文件后,点击保存即可

在这里插入图片描述

图 2.3-2

三、修改代码

在野火官网可以下载程序代码,然后修改bsp_dac.c数组中的内容

在这里插入图片描述

图 3-1

由于条件限制,这里就无法进行下去了。感兴趣的读者可以自行购买设备进行实验。

四、总结

本次实验主要是对于音频文件的处理过程,由于硬件部分的限制,这里无法展示实验结果。对于代码部分,需要理解的东西比较多,可以在网络上查看相关学习视频学习。

五、参考资料

使用STM32F103的DAC功能实现音频输出_咩咩叫的闲鱼的博客-CSDN博客_stm32f103有dac

版权声明:本文为CSDN博主「江南烟浓雨」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_41675500/article/details/122247341

生成海报
点赞 0

江南烟浓雨

我还没有学会写个人说明!

暂无评论

相关推荐

STM32F103的DAC功能实现音频输出

本次实验主要内容:用Adobe audition或goldwave等音频编辑软件录制“您好欢迎光临!”的几秒钟的声音(8khz采样、8bit量化编码的单声道wav格式),确保

将音频编解码器添加到嵌入式系统的 5 个技巧

嵌入式系统播放音频的能力正在成为一个相当普遍的功能。音频为用户提供了很好的反馈,但如今有如此多的高保真音频可用,使用哔哔声和啁啾声不再削减它。开发人员当然可以使用分立组件和 DAC 从系统中获得不错的音频&#xff0