您现在的位置: 主页 > MCU > 单片机技术应用 > STM32--基本定时器的应用 -
本文所属标签:
为本文创立个标签吧:

STM32--基本定时器的应用 -

来源: 网络用户发布,如有版权联系网管删除 2018-09-07 

[导读]实验目的:使用基本定时器TIM6控制LED的亮灭。void GPIO_Config(void){GPIO_InitTypeDef GPIO_InitStructure;GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1;GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;GPIO_Init

实验目的:使用基本定时器TIM6控制LED的亮灭。

本文引用地址: http://www.21ic.com/app/mcu/201808/779342.htm

void GPIO_Config(void)

{

GPIO_InitTypeDef GPIO_InitStructure;

GPIO_InitStructure.GPIO_Pin = GPIO_Pin_1;

GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;

GPIO_InitStructure.GPIO_Speed = GPIO_Speed_50MHz;

GPIO_Init(GPIOC, &GPIO_InitStructure);

}

void TIM6_Init(void)

{

TIM_TimeBaseInitTypeDef TIMBASE6;

TIM_DeInit(TIM6);

TIMBASE6.TIM_Period=10000-1; //设置计数溢出大小 10KHZ/10000=1HZ; ARR

TIMBASE6.TIM_Prescaler=800-1; //预分频系数 8M/800=10KHZ; PSC

TIMBASE6.TIM_ClockDivision = 0x00; //设置时钟分割 0x00 不分割

TIMBASE6.TIM_CounterMode=TIM_CounterMode_Up; //设置计数器模式为向上计数模式

TIM_TimeBaseInit(TIM6, &TIMBASE6); //初始化TIM6

TIM_ITConfig(TIM6, TIM_IT_Update, ENABLE); //将更新事件设置为中断源

TIM_Cmd(TIM6,ENABLE); //设置CEN位,使能TIM6

}

void RCC_Init(void)

{

RCC_DeInit();

RCC_HSEConfig(RCC_HSE_ON);

while(RCC_WaitForHSEStartUp()==ERROR);

RCC_HCLKConfig(RCC_SYSCLK_Div1);

RCC_PCLK2Config(RCC_HCLK_Div16);

RCC_PCLK1Config(RCC_HCLK_Div16);

RCC_PLLConfig(RCC_PLLSource_HSE_Div1, RCC_PLLMul_8);

RCC_PLLCmd(ENABLE);

while(RCC_GetFlagStatus(RCC_FLAG_PLLRDY)==RESET); //等待PLL工作

RCC_SYSCLKConfig(RCC_SYSCLKSource_PLLCLK);

while(RCC_GetSYSCLKSource()!=0x08); //判断是否PLL是系统时钟

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC|RCC_APB2Periph_GPIOA|RCC_APB2Periph_USART1,ENABLE);

RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM6,ENABLE);

}

void TIM6_INTERRUPT(void)

{

while(TIM_GetFlagStatus (TIM6,TIM_FLAG_Update )!=RESET)

{

TIM_ClearFlag (TIM6,TIM_FLAG_Update);

GPIO_WriteBit(GPIOC,GPIO_Pin_1, (BitAction) (1- GPIO_ReadOutputDataBit(GPIOC,GPIO_Pin_1))); //LED亮灭反转

}

}

int main(void)

{

GPIO_Config();

TIM6_Init();

RCC_Init();

while(1)

{

TIM6_INTERRUPT();

}

}




              查看评论 回复



嵌入式交流网主页 > MCU > 单片机技术应用 > STM32--基本定时器的应用 -
 

"STM32--基本定时器的应用 -"的相关文章

网站地图

围观()