STM32
直播中

飞毛腿452

8年用户 861经验值
擅长:电源/新能源
私信 关注
[问答]

怎样使用STM32F103去输出一路PWM波形呢

脉宽调制(PWM)的基本原理是什么?
[sup]怎样使用STM32F103去输出一路PWM波形呢?

回帖(1)

王岩

2021-11-15 15:45:02
  一、任务要求
  1、用STM32F103输出一路PWM波形,建议采用定时器方法。野火和网上大多数资源采用此方法,有完整源码。用示波器观察输出波形。
  2、用STM32F103的DAC功能完成以下波形输出,用示波器观察波形,并用蜂鸣器或手机耳机收听输出声音效果、感受歌曲的音质差异。
  1)输出一个周期2khz的正弦波(循环)。此波形驱动作用至蜂鸣器或喇叭,会呈现一个“滴…”的单音;
  2)将一段数字音频歌曲数据转换为模拟音频波形输出(循环)。
  二、用STM32F103输出PWM波形
  1、PWN简介
  脉宽调制(PWM)基本原理:控制方式就是对逆变威廉希尔官方网站 开关器件的通断进行控制,使输出端得到一系列幅值相等的脉冲,用这些脉冲来代替正弦波或所需要的波形。也就是在输出波形的半个周期中产生多个脉冲,使各脉冲的等值电压为正弦波形,所获得的输出平滑且低次谐波少。按一定的规则对各脉冲的宽度进行调制,即可改变逆变威廉希尔官方网站 输出电压的大小,也可改变输出频率。
  2、实验过程
  (1)在野火的资料库里找到4路PWM
  
  (2)修改配置
  
  (3)找到setup
  
  
  (4)烧录程序之后,全速运行。
  
  三、用STM32F103的DAC功能
  1、音频处理
  (1)使用Audition剪辑一段音频,采样8khz,量化16bit,单通道,时长仅仅5~10秒。并保存为wav格式。
  
  
  (2)将保存的音频用UltraEdit打开,得到下图。
  注:UltraEdit需要自行下载软件。
  
  (3)先全选,然后十六进制复制选定视图。
  
  (4)新建文本文件。将复制的内容放入,然后保存,再把新建的文本用UltraEdit打开,就可以根据给出的行列号,选取范围,然后复制,放在另一个新建的文本文件中。
  
  
  (5)将其用UltraEdit打开,然后生成下列文件。
  
  2、代码设置
  将上述生成的文本文件的内容粘贴到uint16_t Sine12bit 数组中。
  
  注:这里没有显示完全。。
  3、结果显示
  将生成hex文件烧录到板子中,将板子PA4或PA5端连接示波器,打开示波器便可观察到正弦波形。
  
  四、用STM32的DAC功能(2)
  1、实验要求
  输出一个周期2khz的正弦波(循环)。此波形驱动作用至蜂鸣器或喇叭,会呈现一个“滴…”的单音;
  2、代码处理
  (1)打开文件
  
  (2)修改代码
  
  (3)在MATLAB中运行
  
  (4)将生成的.c文件中的内容复制粘贴到uint16_t Sine12bit 数组中。
  
  (5)烧录
  
举报

更多回帖

发帖
×
20
完善资料,
赚取积分