第一步; 打开STM32cubeMX软件(我使用的版本是4.18),新建项目,选择STM32F103R6Tx;第二步:然后对TIM1或者TIM2进行设置,本次我们使用TIM1做PWM实验,选择内部时钟作为定时器时钟; 208e16a09fc04aafb30afe8fcb5509f7~noop.image?_iz=58558&from=article.jpg
TIM2定时器的内部时钟

第三步、STM32时钟配置保持默认不变,因为我们用proteus仿真来验证本次实验;第四步、然后对TIM1进行定时中断时间的设置 ,如下图所示: 02e75f89feed4871b37e4d66d6b57d79~noop.image?_iz=58558&from=article.jpg
第五步:生成代码第六步:在keil中,修改代码。
473b3a90bbce492796780f6140bfc103~noop.image?_iz=58558&from=article.jpg
添加两个变量

2708a2d23e1a4d95adec86093cc1215c~noop.image?_iz=58558&from=article.jpg
主函数中的代码

第七步:在虚拟仿真软件proteus 8.8 版本,绘制出stm32f103的图纸,然后添加刚刚产生的hex文件;然后观察实验现象。