这一节的程序所涉及到的硬件是比较简单,主要是考察对stm32时钟的应用
原理性质的东西我就不多说了,参考书目为:
《STM32库开发实战指南》 刘火良,杨森著
《STM32开发指南(库函数版本)》 正点原子著
使用定时器来控制I/O口输出PWM波形,从而驱动LED灯出现类似呼吸频率一般的亮灭。
硬件电路图:
我的收获:
1
这是STM32数据手册上对TIM3通用定时器复用功能重映象的描述,假设让PA6作为PWM输出,从图中可以看出PA6对应TIM3的通道1,
使能TIM3通道1的函数为
TIM_OC1Init();
同样的,如果想要使能PA7,它对应的是TIM3的通道2,那么使能通道2的函数便是:
TIM_OC2Init()
以此类推,需要注意,使能不同相同定时器不同通道的函数是有一点小差别的,防止在程序中调用TIM_OC1Init()函数来使能TIM3通道2这种情况的发生。
2
注意看这里,假设使用的是TIM3的通道1,那么这里就要写成
TIM3->CCR1
类似的如果用TIM3定时器的通道2,这里就要相应的改为
TIM3->CCR2
这同样是为了防止本来计划使用的是TIM3的通道1,反而在这里自摆乌龙写为了TIM->CCR2的情况,这样的错误一般很隐蔽,不容易查找。
相应的程序已经上传,但是不知道为什么在这里无法显示程序的下载地址,需要下载可以去我的资源里下载。
工程文件为
Progect–>RVMDK(uv4)–>iSO_STM32
时间: 2024-10-11 15:53:01