# PWM **Repository Path**: kmsmg/PWM ## Basic Information - **Project Name**: PWM - **Description**: 该仓用于存储以STM32Cube生成的STM32F767IGTx的PWM项目,适用于正点原子阿波罗STM32F7开发板。 - **Primary Language**: C - **License**: LGPL-2.1 - **Default Branch**: master - **Homepage**: https://blog.csdn.net/ASWaterbenben/article/details/93364476 - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2020-03-28 - **Last Updated**: 2023-01-10 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # PWM_Code #### 介绍 该仓库代码托管内容为以STM32Cube配置的STM32F767IGTx的PWM相关的代码; 主要是通过按键来调节定时器输出的PWM波占空比,通过LED的亮度变化来体现PWM占空比大小; 适用于正点原子阿波罗STM32F7开发板。 #### 硬件架构 该仓代码使用了一组定时器以及4个按键,一个LED,一个MCU; 1.定时器3的PWM通道3接到LED,LED闪烁频率达到50Hz,人眼基本无法识别从而可以通过LED亮度直观展示PWM占空比大小; 2.按键函数直接控制PWM占空比的大小,KEY2可加大占空比,KEY0可减小占空比。 #### 使用教程 1. 下载代码库; 2. 将代码库解压后放在纯英文目录下(否则会导致uvprojx项目打不开); 3. 在确保电脑安装完成Keil后打开PWM-->MDK_ARM-->PWM.uvprojx; 4. 打开工程项目后按F7编译,提示"PWM\PWM.axf" - 0 Error(s), 0 Warning(s).即可; 5. 如果使用ST-Link下载程序则连接好ST-link和直接按下F8下载即可,用串口下载的选择PWM-->MDK_ARM-->PWM-->PWM.hex文件下载即可。 #### 代码构成 1. 主程序main.c,处理按键和占空比的逻辑关系; 2. 定时器程序tim.c,定时器初始化程序,由STM32Cube启用定时器即可生成,在其中可以调整定时器相关参数; 3. 标准输入输出程序gpio.c,按键的端口定义和按键基本逻辑。 #### 实验现象及观察方法 1. 程序下载完成后按下开发板RESET键复位,DS1亮起则表示程序启动; 2. 连续按下KEY2,DS1的亮度不断变高; 3. 连续按下KEY0,DS1的亮度不断变低。 #### 参与贡献 1. Li_Huahui 2. kmsmg