说明
本封装代码是基于正点原子STM32F407最小系统板库函数版本的部分函数封装,适用于同一个功能被多次调用时使用,该种代码封装是以空间换时间。
示例
二话不说上例子,这里我们已单片机输出PWM波来说,下载https://download.csdn.net/download/xuewu0zhijing/16016087.h文件加入到工程下。打开工程,先找到你想使用的引脚、定时器及其通道,假设我现在想调用GPIOA0TIM2channel1、GPIOA1TIM2channel2两路PWM输出,在头文件中写入
PWM(GPIO,PIN,TIM,channel);
GPIOPINPWM_Init(1000-1,84-1);
#include "stm32f4xx.h"
#include "usart.h"
#include "delay.h"
#include "pwm.h"
PWM(A,0,2,1);
PWM(A,1,2,2);
int main(void)
{
A0PWM_Init(1000-1,84-1);
A1PWM_Init(1000-1,84-1);
while(1)
{
TIM_SetCompare1(TIM2,500);
TIM_SetCompare2(TIM2,500);
}
}
这个时候可能会报错,这是因为pwm.h头文件没引入工程
点击这个魔术棒,会弹出一个对话框,点击C/C++,添加头文件路径,一直点确定。
再编译工程就好了。
基于STM32F407的封装
PWM波输出https://download.csdn.net/download/xuewu0zhijing/16016087.
输入捕获https://download.csdn.net/download/xuewu0zhijing/16188785.
捕获中断
https://download.csdn.net/download/xuewu0zhijing/16188814.
结语
博主会不定期的更新封装的代码,希望得到各位的支持,如果有侵正点原子版权,联系删。