STM32F407基本定时器6学习

#include “timer.h”
#include “stdio.h”
#include “led.h”
/********************************************************************************************
*函数名: TIM6_Init
*功 能: 初始化定时器6
*参 数: 无
*返 回: 无
备 注: 1.步骤:1.使能时钟 2.调用定时器初始化函数 3.允许更新中断(映射) 4.NVIC相关设置
2.RCC_AHB1时钟频率 42MHz(168/4)
3.基本定时器 (TIM6和TIM7)的特性:16 位自动重装载值递增计数器
4.举例:IM6_Int_Init(8000-1,5000-1); 定时器时钟42
2M,分频系数8400,所以84M/8400=10Khz的计数频率,计数5000次为500ms
********************************************************************************************/
void TIM6_Init(u16 psc, u16 arr)
{
NVIC_InitTypeDef NVIC_InitStructure;
TIM_TimeBaseInitTypeDef TIM_TimeBaseInitStruct;

RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM6 , ENABLE);			//使能时钟
TIM_TimeBaseInitStruct.TIM_CounterMode = TIM_CounterMode_Up;	//计数模式
TIM_TimeBaseInitStruct.TIM_Period = arr - 1;					//自动重装载值,范围0~65535,
TIM_TimeBaseInitStruct.TIM_Prescaler = psc - 1;					//分频系数,不为1时,定时器频率挂载总线的两倍(看时钟树得出),所以42000000/42000 
TIM_TimeBaseInit(TIM6, &TIM_TimeBaseInitStruct);				//初始化
TIM_Cmd(TIM6, ENABLE);											//使能定时器6

TIM_ITConfig(TIM6,TIM_IT_Update,ENABLE); 						//允许定时器6更新中断
NVIC_InitStructure.NVIC_IRQChannel = TIM6_DAC_IRQn;			
NVIC_EnableIRQ(TIM6_DAC_IRQn );									//使能TIM6中断
NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE;
NVIC_Init(&NVIC_InitStructure);

}

/********************************************************************************************
*函数名: TIM6_IRQHandler
*功 能: 定时器6中断服务函数
*参 数: 无
*返 回: 无
*备 注: 1.步骤:设置当发生中断溢出才进入事件,然后清除标志位。
********************************************************************************************/
void TIM6_DAC_IRQHandler(void)//曾经的错误:void TIM6_DAC_IRQn (void),TIM6_IRQHandler
{
if(TIM_GetITStatus(TIM6,TIM_IT_Update)==SET) //溢出中断
{
printf(“进入定时器中断6\r\n”); //需放在发生中断溢出后才执行,不然会一直产生。
LED1 = !LED1;
}
TIM_ClearITPendingBit(TIM6,TIM_IT_Update); //清除中断标志位
}

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值