目录

  • 一、DAC的简要介绍
    • 1.数据格式
    • 2.双通道模式
    • 3.专用定时器
  • 二、准备工作
    • 1.音频编辑软件GoldWave的安装
    • 2.UltraEdit的安装
    • 3.Notepad++的安装
  • 三、音频文件的准备
  • 四、DAC输出周期为2kHz的正弦波
  • 五、DAC输出指定的音频

一、DAC的简要介绍

1.数据格式

数据格式DAC 可以使用以下三种整型格式的数据:8 位右对齐、12 位右对齐以及 12 位左对齐。12 位值的范围在 0x000 到 0xFFF 之间,其中 0x000 为最小值,而 0xFFF 为最大值。

2.双通道模式

双通道模式DAC 有两个输出通道,每个通道各有一个转换器。在双 DAC 通道模式下,转换可以单独进行,也可以同时进行。当 DAC 通道由同一个触发源触发后,两个通道将组合在一起同步执行更新操作,转换也会
同时进行。

3.专用定时器

专用定时器除了通过软件和外部触发器触发 DAC 转换之外,还可以通过不同的定时器触发 DAC 转换。TIM6 和 TIM7 是两个基本定时器,主要用于 DAC 触发。每当 DAC 接口在所选的定时器触发输出 (TIMx_TRGO) 上检测到上升沿时,DAC_DHRx 寄存器中存储的最后一个数据即会转移到 DAC_DORx 寄存器中。图 2.STM32F100x DAC 触发器通道ai183008 位右对齐12 位左对齐12 位右对齐ai18301DAC 通道 x触发器

二、准备工作

1.音频编辑软件GoldWave的安装

点击下载GoldWave

下载完成后按照提示安装即可

2.UltraEdit的安装

参考博客:UE中文版(UltraEdit)的安装、激活

3.Notepad++的安装

下载地址:官网下载

下载完成后按照步骤安装即可

三、音频文件的准备

首先从网上下载一个格式为MP3的音乐文件,我这里下的是水星记.MP3
然后打开GoldWave软件,进入后点击打开,选中我们的音频文件打开

打开后,我们首先对音频文件进行修剪,可以在左右两边拖动括号选中我们想要的片段,然后点击上面的修剪

修剪完成后,我们开始对音频文件的格式进行配置,点击上方的选项,找到文件格式,进入设置,如图所示


点击OK后,退出GoldWave,打开UE,打开后在UE中,打开我们刚另存为的文件,选中中间部分,复制粘贴到新文件中

用notepad++打开上面保存文件,编辑–列块编辑–插入文本 ,生成如下文件

至此,音频文件准备完毕

四、DAC输出周期为2kHz的正弦波

示例程序采用于野火的STM32F103指南者DAC输出正弦波的示例程序

将模拟好的数据放入下图所示文件里的数组中


烧录程序,示波器的效果为

五、DAC输出指定的音频

打开我们准备好的wav文件


ctrl+a全选复制所有,粘贴进上个指定的数组中

编译、烧入后,示波器的效果为

STM32F103的DAC实现播放WAV音乐相关推荐

  1. arduino下载库出错_【arduino】DIY音乐播放器,arduino播放wav音乐,TRMpcm库测试及使用...

    微信关注 "DLGG创客DIY"设为"星标",重磅干货,第一时间送达. arduino特点库超多,想必大家都领教了,今天来分享一下之前玩过的TRMpcm库. 这 ...

  2. 【arduino】DIY音乐播放器,arduino播放wav音乐,TRMpcm库测试及使用

    微信关注 "DLGG创客DIY" 设为"星标",重磅干货,第一时间送达. arduino特点库超多,想必大家都领教了,今天来分享一下之前玩过的TRMpcm库. ...

  3. 【arduino】DIY音乐播放器,arduino音箱播放wav音乐

    目标:给儿子做一个音乐播放器玩具. 材料: Arduino USB供电音箱 Micro SD卡模块 SD卡 3.5mm音频座模块 模块连接: 测试程序: 步骤: 将音乐转换成对应格式(MP3文件转换成 ...

  4. STM32F103的DAC音频输出

    目录 一.DAC输出周期2khz的正弦波 1.使用Audition输出一个周期2khz的正弦波 2.使用UltraEdit得到相关数据 3.使用notepad++添加相关内容 4.添加数据 5.波形观 ...

  5. 使用pyaudio播放无损音乐(wav)

    安装pyaudio sudo apt-get install python-pyaudio python3-pyaudio pip3 install pyaudio 执行第二步可能会遇到如下错误: 根 ...

  6. java wav文件_java播放wav文件

    STM32播放WAV程序_计算机软件及应用_IT/计算机_专业资料.此程序配置的采样率为16k,PWM频率144k; 此代码可以实现16位单声道的WAV文件解码,通过PWM 或者DAC输出音频.... ...

  7. android java 打开snd,使用SndPlaySound从内存中播放WAV

    有些时候,我们写的程序需要播放音乐,一般大家会采用以下几种方式:1.把音乐文件放置在某个特定的目录,例如Sound,WAV,Music供程序读取播放:2.使用资源来存放音乐.有些人估计也是使用这个方法 ...

  8. stm32 pwm播放wav格式音乐移植遇到的问题

    前言 初识pwm的时候就想做音乐播放器,奈何51单片机速度慢,现在入手stm32,可玩性一下提高了很多,重拾当年挖的坑.既然要造轮子,那肯定先看看大牛是怎么做的.传送门:https://github. ...

  9. YDOOK:Python 通过系统直接播放音频音乐的各种方式 mp3 wav

    YDOOK:Python 通过系统直接播放音频音乐的各种方式 mp3 wav © YDOOK Jinwei Lin, shiye.work http://www.ydook.com https://o ...

  10. html中怎么写播放音乐格式,HTML+CSS入门 如何实现多浏览器播放wav格式的音频文件...

    本篇教程介绍了HTML+CSS入门 如何实现多浏览器播放wav格式的音频文件,希望阅读本篇文章以后大家有所收获,帮助大家HTML+CSS入门. < 使用audioplayer.js 基本上能支持 ...

最新文章

  1. ansible组件-playbook学习笔记
  2. 关于计算机视觉(随谈)
  3. iperf3 测速跑不满的解决办法
  4. seg显示时间——51程序
  5. C#图解教程 第二十一章 命名空间和程序集
  6. Xamarin效果第八篇之视频监控
  7. 不懂这25个名词,好意思说你懂大数据?
  8. 文本溢出text-overflow和文本阴影text-shadow
  9. ecshop程序设置伪静态简单三步骤
  10. mysql insert 二进制_MYSQL 插入二进制数的 2 种方法。
  11. leetcode算法—无重复字符的最长子串 Longest Substring Without Repeating Characters
  12. java # 折叠_如何在Java中实现列表折叠
  13. easymock_EasyMock注释– JUnit 4
  14. DIV布局美丽家乡网站设计——美丽家乡-含论文(4页) HTML+CSS+JavaScript web前端设计与开发期末作品_期末大作业
  15. 成语接龙、歇后语 js JavaScript html web nodejs成语接龙离线js库
  16. ListView控件的使用
  17. 2022-2028年中国网络直播行业商业模式创新与投资机会深度研究报告
  18. c#录音和放音,超简单!不用DirectX
  19. HTML+CSS制作人物介绍卡片效果
  20. 破解魔术的秘密(一)——直面秘密的角落

热门文章

  1. grafana text panel配置说明
  2. 图画日记怎么画_画画提高的一个方法: 绘画日记!
  3. 【杂学笔记-表观遗传学-updating】
  4. 如何使用计算机对文件修改密码,文件夹怎么设置密码?怎么给文件夹设置密码?...
  5. win10系统服务器怎样设置密码,win10系统的电脑如何给普通文件夹设置密码
  6. BZOJ4200: [Noi2015]小园丁与老司机
  7. 【励志】比风水厉害100倍的宇宙定律
  8. 动力节点—Java黄埔军校是怎样炼成的
  9. Java十二平均律判断
  10. 【雕爷学编程】Arduino动手做(59)---RS232转TTL串口模块