PWM实验
定时器浑身都是包其中PWM占大头,因为PWM应用太广了:呼吸灯、电机、蜂鸣器,生日火炬里的声音都是PWM干的,接下来就让我们学一下雅特力AT32F435单片机的PWM吧。
基础知识
老样子对于PWM的基础了解那肯定直接从数据手册学起,先要从头到尾过一遍。PWM是高级功能不是一般的定时器就能有的,所以第一时间就要看数据手册看看哪些定时器用PWM功能,并且确认PWM输入输出的通道和引脚,本次教学我们使用的是TMR3的通道1~4,对应的PWM输出引脚是PA6、PA7、PB0、PB1。
硬件连接
- 通过数据线连接开发板和计算机。
- 使用USB转TTL模块连接USART1(PA9,PA10)和计算机,为了查看单片机运行情况。
- 用杜邦线把GND、通道1~4引脚引出,方便接示波器和SG90舵机测试。
程序编写
- 初始化系统时钟。
- 基础外设初始化:LED灯、调试串口。
- 通道1~4引脚配置。
- 定时器配置。
- 备注详细说明请点击:定时器频率讲解
实验现象
- PWM输出频率为50Hz。
- 通道1~4的占空比分别为:50%,33%,25%,20%。
驱动SG90舵机
- 关于SG90工作原理
- STM32驱动SG90舵机方法
- 控制SG90舵机需要一个频率为50Hz的PWM,对于180度的SG90舵机来说,占空比为12.5%对应的180度,占空比为2.5%对应的是0度,在控制SG90舵机的实验中,我们通过公式计算调整通道3~4的占空比分别为12.5%和2.5%然后拿杜邦线引出,最后分别连接SG90的信号线,我们就看可以看到舵机的180度和0度的旋转效果了。