
1. 资源扩展板介绍 1.1. 硬件介绍 ![]() 1.1. 资源扩展板可开发项目 ![]() 2.扩展板蜂鸣器控制 2.1实验原理 打开扩展板原理图对照扩展板可以看到扩展板有1个蜂鸣器SP1,如下图: ![]() 由上图可见通过TIM4_CH1电平改变控制电路的通断从而驱动蜂鸣器。 ![]() 扩展板与底板接口对照图 查看原理图可知TIM4_CH1对应PB6,查看芯片手册可知PB6可以作为PWM TIMER4的通道1使用,本文实现如何通过PWM驱动蜂鸣器: ![]() 2.2.实验目的 了解蜂鸣器工作原理 学习TIM中PWM的使用方法,掌握如何利用STM32MP157A芯片输出PWM波控制蜂鸣器 2.3.实验环境 FS-MP1A开发平台 ST-Link仿真器 STM32CubeIDE开发软件 PC机 XP、Window7/10 (32/64bit) 2.4.实验步骤 MX配置 根据原理图,配置PB6引脚设置为TIM4_CH1。切换到TIM4标签,勾选给“M4”,“Channel1”选择“PWM Generation CH1”,所有配置如下图所示。 ![]() ![]() 上述为新建工程配置过程,可参考12.3.2章节进行导入已有工程,工程存放路径【华清远见-FS-MP1A开发资料\02-程序源码\ARM体系结构与接口技术\Cortex-M4\10_EX_PWM_BEEP】 代码设计 找到创建的工程,打开main.c,完善定时器中断回调函数,在该函数里,使用“__HAL_TIM_SET_COMPARE()” 可以修改寄存器CCR,实现不同的占空比。 将定时器中断启动函数“HAL_TIM_Base_Start_IT()”和定时器PWM输出开始函数“HAL_TIM_PWM_Start()”封装在一起。 ![]() 最后主函数调用“TIM_PWM_Start()”即可启动TIM中断,通过改变pulse的数值可以输出不同占空比的PWM,可以控制蜂鸣器发出不同频率的声音。 ———————————————— 版权声明:本文为CSDN博主「华清远见IT开放实验室 |
为什么学了几天STM32一脸茫然?
STM32 不同时钟频率有什么不同的影响
STM32入门指南:从零开始,如何为你的首个项目选择最合适的MCU?
STM32MP157D-DK1-编译并运行第一个程序hello world
STM32MP157D-DK1-SDK包安装
STM32MP157D-DK1-ssh连接方式
STM32MP157D-DK1-stlink串口进入终端
STM32MP157D-DK1-先烧录demo镜像
STM32MP157D-DK1-开始学linux了求各位大佬指点
更新STM32MP135-Openwrt镜像