stm32f103zet6高级,通用,基本定时器功能汇总:1普通定时,2输入捕获,3输出比较,4PWM,5单脉冲模式输出,6标...

2019-07-21 02:22发布

本帖最后由 nashui_sx 于 2019-7-15 09:06 编辑

修正一个错误,输出比较的时候,两个定时器共用CH1_Flag造成干扰,前面分别加上定时器标记 TIM1_CH1_Flag,别的还未发现错误,已经重新上传
//每个功能都在stm32f103zet6上测试通过
// 1普通定时               2输入捕获                     3输出比较                          4PWM                5单脉冲输出
//TIMx_Time_Init   TIMx_InputCapture_Init   TIMx_OutputCompare_Init    TIMx_Pwm_Init   TIMx_OnePulseOutput_Init
//基本定时器TIM6,7只有1定时的功能,剩余的4个功能分别用高级TIM1 通用TIM2进行测试,便于大家移植
在time.h 中切换功能
#define  TIMx_Time_Init_Test                  0
#define  TIMx_InputCapture_Init_Test       0
#define  TIMx_OutputCompare_Init_Test   0
#define  TIMx_Pwm_Init_Test                 0
#define  TIMx_OnePulseOutput_Init_Test  0
定时器5种模式实验.rar (314.4 KB, 下载次数: 1166) 4 天前 上传 点击文件名下载附件 具体细节参考程序内部说明
例如输出比较可以产生特殊波形
QQ截图20190715083707.jpg
增加两个定时器功能:6标志量触发单脉冲输出             7定时器主从模式产生准确脉冲个数
添加2功能 定时器5种模式实验.rar (315.12 KB, 下载次数: 1104) 4 天前 上传 点击文件名下载附件
1普通定时    : 基本定时
2输入捕获   :一个通道捕获高电平,测量占空比,一个通道测量两个上升沿间隔测量周期
3输出比较   :一个定时器可以产生4中周期不同占空比的pwm,还可以翻转任意io实现任意引脚输出pwm
                  (还可以实现一个定时器实现4种基本定时,大家自己扩展吧)                 
4PWM        :一个定时器产生一种周期的4种占空比pwm
5单脉冲输出:通道2检测到上升沿后,通道1延时设定时间后输出一个设定时间的高电平脉冲

6标志量触发单脉冲输出            
7定时器主从模式产生准确脉冲个数
8 TIM计数模式c8t6做的 TIM 计数模式.rar (3.28 MB, 下载次数: 675) 2017-12-5 20:12 上传 点击文件名下载附件   TIM1在43楼
单脉冲输出的现象:
1.png



























友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。