首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

基于STM32的PWM音乐播放器应用设计(3)

基于STM32的PWM音乐播放器应用设计(3)

3.2.2 主程序设计
   
程序流程如图3所示。由于STM32的PWM输出引脚是PB5,所以我们采用TIM3的通道2来产生PWM输出。在GPIO设置程序中,将TIM3的通道2引脚部分重映像到PB5,GPIO模式选择为复用推挽输出。程序循环读取乐谱,根据音阶修改定时器的预分频系数,并重新设置定时器和PWM。同时,利用STM32的内部SysTick进行精确计时,根据节拍实现ms级延时,并减少内核消耗。图4为示波器测量得到的低音So的PWM输出波形。根据表1,该波形频率应为392 Hz,实测为391.549 Hz,可见本方案的PWM输出误差较小。



结语
   
STM32既可以搭载μC/OS,也可以作为单片机使用,是一款性价比较高的处理器。本文利用STM32的定时器,产生PWM音频脉冲波形,实现了音乐播放功能。这种方法可用于电机控制、电子琴以及无线报务中的电子键设计等,具有较高的实用价值。
继承事业,薪火相传
返回列表