STM32初学之Sys_Tick配置

来源:互联网 发布:数据归一化后的值 编辑:程序博客网 时间:2024/06/11 04:53

在此之前学习了用GPIO点亮LED灯,使用轮询法用按键控制LED灯,使用GPIO外部触发控制LED灯,如今考虑加入系统时钟,为以后的应用打基础。

工具清单:

野火ISO-MINI开发板(STM32F103VE);JTAG调试器;MDK5.17开发环境;

学习步骤:

1.配置GPIO,通过PB0、PC3、PC4脚,点亮LED

2.配置EXTI,按键PA0脚控制LED变化

3.配置Sys_Tick,10ms定时让灯闪烁


内容:
SysTick配置函数:SysTick_Config(uint32_t ticks),在systick.c文件中,配置SystemCoreClock / 100,定时10ms。

        另,SysTick_Config(uint32_t ticks)配置的systick优先级默认为7,需使用NVIC_SetPriority (SysTick_IRQn, 0)将systick设置为比其他可屏蔽中断更高的优先级,这样才不被可屏蔽中断打断。

来源:core_cm3.h
更改分频:SysTick_CLKSourceConfig(SysTick_CLKSource_HCLK_Div8);

疑问:
    SysTick_Type     SysTick_ctrl_status;

  SysTick_ctrl_status.CTRL |= SysTick_CTRL_COUNTFLAG_Msk;  不知这个能起什么作用?


1 0
原创粉丝点击