STM32的PWM和DAC练习

STM32的PWM和DAC练习

  • 一、所需软件安装
  • 二、操作
    • 2.1 PWM
    • 2.2 DAC
      • 1)输出一个周期2khz的正弦波(循环)。此波形驱动作用至蜂鸣器或喇叭,会呈现一个“滴...”的单音。
      • 2)将一段数字音频歌曲数据转换为模拟音频波形输出(循环)。
  • 参考资料

一、所需软件安装

1、UltraEdit
STM32的PWM和DAC练习_第1张图片
右键运行uedi32.exet即可使用,无需安装步骤。

二、操作

2.1 PWM

1、打开野火配套的试验例程野火指南者103\A盘(资料盘)\1-程序源码_教程文档\1-[野火]《STM32库开发实战指南》(标准库源码)【优先学习】\32-TIM—通用定时器\2-TIM—通用定时器-4路PWM输出
在这里插入图片描述
2、编译后烧录进stm32板中
3、进行仿真配置
STM32的PWM和DAC练习_第2张图片
STM32的PWM和DAC练习_第3张图片

STM32的PWM和DAC练习_第4张图片
STM32的PWM和DAC练习_第5张图片
4、点击全速运行在这里插入图片描述,随后再停止在这里插入图片描述,即可看到波形如下。
STM32的PWM和DAC练习_第6张图片
STM32的PWM和DAC练习_第7张图片

2.2 DAC

1)输出一个周期2khz的正弦波(循环)。此波形驱动作用至蜂鸣器或喇叭,会呈现一个“滴…”的单音。

1、打开野火配套资料里的 38-DAC—输出正弦波工程文件,用matlab打开其中的sinWave.m文件
在这里插入图片描述
2、修改代码
在这里插入图片描述
在这里插入图片描述
3、运行
STM32的PWM和DAC练习_第8张图片
4、打开.c文件
STM32的PWM和DAC练习_第9张图片
STM32的PWM和DAC练习_第10张图片
5、复制的全部粘贴到 uint16_t Sine12bit 数组中:
在这里插入图片描述
6、编译生成hex文件烧录到板子中,将板子PA4或PA5端连接示波器,打开示波器便可观察到正弦波形。

2)将一段数字音频歌曲数据转换为模拟音频波形输出(循环)。

1、打开Audition,在Audition中打开一首音乐,选取片段新建一个音频文件。
STM32的PWM和DAC练习_第11张图片2、保存所截取的片段。
格式为WAV,采样频率8000Hz,单声道,16bit。
STM32的PWM和DAC练习_第12张图片
3、将剪辑完成的WAM音频文件用UltraEdit打开。
STM32的PWM和DAC练习_第13张图片
4、选择复制内容,此处只需要中间一块的内容。

找到最后一个所选数字,在下方查看列数,右键选择 选择范围,如下图选择所需要的部分,粘贴到txt文本文档中。
STM32的PWM和DAC练习_第14张图片
5、用UltraEdit打开该文本文档,选择列模式,选择插入,逐列插入0x
STM32的PWM和DAC练习_第15张图片
STM32的PWM和DAC练习_第16张图片
6、然后将文本复制进uint16_t Sine12bit[]数组中去,并删掉中括号里面的数据:
STM32的PWM和DAC练习_第17张图片
7、编译生成hex文件烧录到板子中,将板子PA4或PA5端连接示波器,打开示波器便可观察到所截取音乐片段的模拟音频波形。
由于后序实验操作为私下完成,因此还未来得急用示波器验证。

参考资料

1、STM32F103使用TIM DMA DAC实现播放WAV音乐
2、(stm32f103学习总结)—stm32 PMW输出实验
3、使用STM32微控制器系列中的DAC生成音频和波形.pdf

你可能感兴趣的:(嵌入式系统开发作业,stm32,嵌入式)