1、关于SysTick
CH32F103/203:
CH32F103 /203 SysTick和STM32F103一样为Cortex-M3内核,是一个24位的向下递减计数器,计数器每计数一次的时间为1/SYSCLK(系统主频)。当SysTick重装载数寄存器的值递减到0的时候,产生一次中断。
CH32F系列MCU SysTick由4个寄存器控制,具体如下图。具体介绍可参考《CM3权威指南》
CH32V10x_20x_30x:
CH32V系列MCU内核为RISC-V内核,其SysTick为一个64位计数器。与Cortex-M3内核MCU不同,其SysTick可配置为向上计数或向下计数。此外还有一个64位的比较寄存器,当计数器值和比较寄存器值相同时将触发中断服务。
CH32V10x系列MCU SysTick由5个寄存器控制,如下图。具体介绍可参考CH32xRM手册。
https://www.wch.cn/downloads/CH32xRM_PDF.html
CH32V20_30x系列MCU SysTick由6个寄存器控制,如下图。具体介绍可参考CH32FV2x_V3xRM手册。
https://www.wch.cn/downloads/CH32FV2x_V3xRM_PDF.html
2、关于SysTick时基
- CH32F10x_20x系列MCU可以配置HCLK或HCLK/8作为时基
- CH32V103系列MCU只能配置HCLK/8作为时基
- CH32V20x_30x系列MCU可以配置HCLK或HCLK/8作为时基
3、关于SysTick配置
在对SysTick进行初始化配置的时候,需要先对计数模式(即位4)进行配置,再配置计数器初始值更新(位5)和系统计数器使能控制位(位0),否则第一次延时函数可能不生效。
程序配置方式如下:
4、关于STK_CTLR寄存器位31(SWIE)的作用及用法
作用:用于触发软件中断,具体用法见下图
标签:系列,CH32F,SysTick,计数器,CH32V,寄存器,HCLK,MCU From: https://www.cnblogs.com/liaigu/p/17616323.html