SysTick—系统定时器.pdf

上传人:紫竹语嫣 文档编号:5529825 上传时间:2020-06-01 格式:PDF 页数:14 大小:483.74KB
返回 下载 相关 举报
SysTick—系统定时器.pdf_第1页
第1页 / 共14页
SysTick—系统定时器.pdf_第2页
第2页 / 共14页
SysTick—系统定时器.pdf_第3页
第3页 / 共14页
SysTick—系统定时器.pdf_第4页
第4页 / 共14页
SysTick—系统定时器.pdf_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《SysTick—系统定时器.pdf》由会员分享,可在线阅读,更多相关《SysTick—系统定时器.pdf(14页珍藏版)》请在三一文库上搜索。

1、SysTick系统定时器 零死角玩转STM32M3系列 淘宝: 论坛: 扫描进入淘宝店铺 主讲内容 01 SysTick简介 02 SysTick功能框图讲解 参考资料:零死角玩转STM32 “SysTick系统定时器”章节 03 SysTick定时实验讲解 SysTick简介 SysTick:系统定时器,24位,只能递减,存在 于内核,嵌套在NVIC中,所有的Cortex-M内 核的单片机都具有这个定时器。 SysTick功能框图 重装载寄存器 递减计数器 STK_CLK STK_LOAD STK_VAL 72M或者9M U counter在时钟的驱动下,从reload初值开始往下递减计数

2、 到0,产生中断和置位COUNTFLAG标志。然后又从reload 值开始重新递减计数,如此循环。 SysTick寄存器 SysTick定时时间计算 1-t:一个计数循环的时间,跟reload和CLK有关 2-CLK:72M或者9M,由CTRL寄存器配置 3-RELOAD:24位,用户自己配置 SysTick定时时间计算 t = reload * ( 1/clk ) Clk = 72M时,t = (72) *(1/ 72 M )= 1US Clk = 72M时,t = (72000) *(1/ 72 M )= 1MS 时间单位换算: 1s = 1000ms = 1000 000 us = 10

3、00 000 000ns SysTick寄存器 SysTick寄存器结构体 在固件库文件:core_cm3.h中定义 SysTick库函数 SysTick配置库函数 在固件库文件:core_cm3.h中定义 SysTick库函数 SysTick配置库函数 在固件库文件:core_cm3.h中定义 SysTick中断优先级 1-SysTick属于内核里面的外设,他的中断优先级跟 片上的外设的中断优先级相比,哪个高? 2-systick中断优先级配置的是scb-shprx寄存器; 而外设的中断优先级配置的是nvic-iprx,有优先级 分组,有抢占优先级和子优先级的说法。 SysTick中断优先级 1-STM32里面无论是内核还是外设都是使用4个二迚 制位来表示中断优先级。 2-中断优先级的分组对内核和外设同样适用。当比较 的时候,只需要把内核外设的中断优先级的四个位按 照外设的中断优先级来分组来解析即可,即人为的分 出抢占优先级和子优先级。 实验设计 实验设计 1-编写一个微秒延时函数 2-编写一个毫秒延时函数 THANKS 零死角玩转STM32M3系列 论坛: 淘宝: 扫描进入淘宝店铺

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/环境 > 建筑资料


经营许可证编号:宁ICP备18001539号-1