STM32F103的DAC功能实现音频输出
本次实验主要内容:用Adobe audition或goldwave等音频编辑软件录制“您好欢迎光临!”的几秒钟的声音(8khz采样、8bit量化编码的单声道wav格式),确保音频数据尽量小(最大不超64KB)。然后编程将其分批次写入stm32f103c8t6芯片内部flash区域。
文章目录
- 一、DAC简介
- 二、录制音频
- 1. 生成wav文件
- 2. 使用Ultra Edit软件
- 3. 使用 WavToC软件
- 三、修改代码
- 四、总结
- 五、参考资料
一、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
STM32F103的DAC功能实现音频输出相关推荐
- 嵌入式实验(四):用STM32输出PWM波形/DAC功能完成波形输出
0 实验目标 用STM32F103输出一路PWM波形,建议采用定时器方法.野火和网上大多数资源采用此方法,有完整源码.用示波器观察输出波形. 用STM32F103的DAC功能完成以下波形输出,用示波器 ...
- STM32F103使用DAC功能输出正弦波
在DAC的主要特征中可以看出,DAC内部带有波形发生器. DAC 主要特征 2个DAC转换器:每个转换器对应1个输出通道 8位或者12位单调输出 12位模式下数据左对齐或者右对齐 同步更新功能 噪声波 ...
- STM32F103使用DAC功能输出三角波
在DAC的主要特征中可以看出,DAC内部还带有波形发生器. DAC 主要特征 2个DAC转换器:每个转换器对应1个输出通道 8位或者12位单调输出 12位模式下数据左对齐或者右对齐 同步更新功能 噪声 ...
- STM32实现DAC功能输出音频波形
目录 一.DAC简介 二.输出周期为2kHz的正弦波 三.音频信号输出 四.参考资料 一.DAC简介 DAC 为数字/模拟转换模块,故名思议,它的作用就是把输入的数字编码,转换成对应的模拟电压输出,它 ...
- STM32F103的DAC音频输出
目录 一.DAC输出周期2khz的正弦波 1.使用Audition输出一个周期2khz的正弦波 2.使用UltraEdit得到相关数据 3.使用notepad++添加相关内容 4.添加数据 5.波形观 ...
- STM32F103的DAC——实现音频输出
文章目录 一.DAC 1. DAC简介 2.DAC功能框图剖析 二.使用DAC输出周期2kHz的正弦波 三.使用DAC将数字音频歌曲数据转换为模拟音频波形输出 四.小结 五.参考链接 一.DAC 1. ...
- 基于STM32的DAC音频输出
基于STM32的DAC音频输出 一.DAC 1.1 DAC简介 1.2 DAC功能框图剖析 二.使用DAC输出周期2kHz的正弦波 2.1 使用Adobe Audition输出一个周期2khz的正弦波 ...
- 解析音频输出调节音量的原理以及调节的方法
简述 通常,音量调整可以在音频流水线的两个主要阶段进行:数字域和模拟域.当我们在系统设置中调整音量时,通常是在模拟域(即音频设备)进行调整.在这种情况下,所有的音频输出(包括来自不同应用的音频)都会受 ...
- 【转】随身HiFi 安卓OTG功能在音频上的妙用
原文网址:http://article.pchome.net/content-1745467.html 随身HiFi 安卓OTG功能在音频上的妙用 [PChome电脑之家音频频道原创]说起Androi ...
最新文章
- Ubuntu 系统 启动报错 /: UNEXPECTED INCONSISTENCY; RUN FSCK MANUALLY
- 中国科学家将绘制最精细人脑三维“地图”
- QT实现音乐的大小可视化为动画条
- vuepress 代码高亮支持的语言
- android icu4c 7.1编译报错,android4.0编译系统时候遇到的错误集
- Android中用OpenGL ES Tracer分析绘制过程
- python简单命令语句_python基础教程之[基础学习]MySQL常用语句命令总结|python基础教程|python入门|python教程...
- 计算机与交互式白板通过USB数据线,选购交互式电子白板注意哪些事项【详细介绍】...
- cheat engine 将选中目标的函数_EXCEL函数与公式剖析:IF
- iOS开发--添加定位功能
- linux资源限制函数getrlimit,setrlimit(转载)【转】
- 使用Mac命令别名,提升工作效率
- 终于将win7的basic主题改成黑色了!
- 人工神经网络与遗传算法,遗传算法和神经算法
- 0704第五讲异常处理
- PAT 1037 在霍沃茨找零钱
- MPEG2-PS格式分析实例
- 五款轻量级的办公软件,界面简洁且无广告
- 惠普服务器做linux系统安装系统教程,HP刀片服务器安装系统步骤
- php file_put_contents 根目录权限,php – Composer:file_put_contents(./ composer.json):无法打开流:权限被拒绝...