第五章-PWM控制电机
5.1-认识PWM
参数如何描述PWM
5.2-PWM配置
根据我们小车原理图我们知道是 PA11和PA8两个引脚要设置为PWM输出
这里为什么小车原理图要这样设计那?
- 根据A4950的使用要求
- 根据STM32F103C8T6的定时器复用功能重映射
我们这先介绍原因:
原因1:介绍电机驱动后,我们会说明
原因2: 因为STM32中文参考手册介绍了,TIM1_CH1和TIM1_CH4可以复用功能重映射到PA8和PA11
我们使用软件配置 PA11和PA8这里配置
然后我们生成代码
PWM输出的配置就已经完成了,但是不能输出产生PWM波,因为Cube在生成代码时,有很多外设初始化完后默认是关闭的,需要我们手动开启。
HAL_TIM_PWM_Start(&htim1,TIM_CHANNEL_1);//开启定时器1 通道1 PWM输出
HAL_TIM_PWM_Start(&htim1,TIM_CHANNEL_4);//开启定时器1 通道4 PWM输出
我们软件仿真一下、查看PA11与PA8波形
那么频率就是 1/0.002 = 500HZ
这就是我们要设置的
我们可以使用这个宏来修改占空比
__HAL_TIM_SET_COMPARE(&htim1, TIM_CHANNEL_1, 40);
5.3-PWM测试方法
上面我们生成了PWM下面我们测试一下
KEIL软件仿真方法:
软件模拟仿真不需要任何硬件-下面是官方介绍
选择软件仿真
DARMSTM.DLL
-pSTM32F103C8
设置时钟频率-板子外部晶振8Mhz 这里我们选择8Mhz
(新版的keil5里没有那个设置频率的功能)
开启仿真
打开逻辑分析仪器
添加要观察的引脚
点击全速运行
使用仿真器硬件仿真
一样的可以开启仿真
但是硬件仿真好像目前还不能使用过逻辑分析仪、但是硬件仿真是在硬件上跑的,可以向硬件输入数据或者由硬件输出数据、比如按键仿真的时候就可以使用硬件仿真。
使用示波器工具测量波形(非重点)
这章我们先讲到这里,下章我们说如何做电机驱动。
联系:Q,1930299709