- 1、本文档被系统程序自动判定探测到侵权嫌疑,本站暂时做下架处理。
- 2、如果您确认为侵权,可联系本站左侧在线QQ客服请求删除。我们会保证在24小时内做出处理,应急电话:400-050-0827。
- 3、此文档由网友上传,因疑似侵权的原因,本站不提供该文档下载,只提供部分内容试读。如果您是出版社/作者,看到后可认领文档,您也可以联系本站进行批量认领。
查看更多
零死角玩转stm32-初级篇6、Systick(操作系统的心脏)
0、友情提示
《零死角玩转STM32》系列教程由初级篇、中级篇、高级篇、系统篇、
四个部分组成,根据野火STM32 开发板旧版教程升级而来,且经过重新深入编
写,重新排版,更适合初学者,步步为营,从入门到精通,从裸奔到系统,让
您零死角玩转STM32。M3 的世界,与野火同行,乐意惬无边。
另外,野火团队历时一年精心打造的 《STM32 库开发实战指南》将于今
年10 月份由机械工业出版社出版,该书的排版更适于纸质书本阅读以及更有利
于查阅资料。内容上会给你带来更多的惊喜。是一本学习STM32 必备的工具
书。敬请期待!
-第 2 页-
6、Sysstick (系统滴答定时器)
6.1 SysTick——操作系统的心跳
SysTick 定时器被捆绑在NVIC 中,用于产生SysTick 异常(异常号:
15)。在以前,操作系统和有所有使用了时基的系统,都必须要一个硬件定时
器来产生需要的“滴答”中断,作为整个系统的时基。滴答中断对操作系统尤
其重要。例如,操作系统可以为多个任务许以不同数目的时间片,确保没有一
个任务能霸占系统;或者把每个定时器周期的某个时间范围赐予特定的任务
等,还有操作系统提供的各种定时功能,都与这个滴答定时器有关。因此,需
要一个定时器来产生周期性的中断,而且最好还让用户程序不能随意访问它的
寄存器,以维持操作系统“心跳”的节律。
Cortex-M3 在内核部分包含了一个简单的定时器——SysTick timer 。因
为所有的CM3 芯片都带有这个定时器,软件在不同芯片生产厂商的CM3 器件
间的移植工作就得以化简。该定时器的时钟源可以是内部时钟(FCLK,CM3 上
的自由运行时钟),或者是外部时钟(CM3 处理器上的STCLK 信号)。不
过,STCLK 的具体来源则由芯片设计者决定,因此不同产品之间的时钟频率可
能会大不相同。因此,需要阅读芯片的使用手册来确定选择什么作为时钟源。
在STM32 中SysTick 以 HCLK(AHB 时钟)或HCLK/8 作为运行时钟。见图
6-1。
-第 3 页-
图6-1 时钟树(部分)-SysTick timer 时钟来源
SysTick 定时器能产生中断,CM3 为它专门开出一个异常类型,并且在向
量表中有它的一席之地。它使操作系统和其它系统软件在CM3 器件间的移植变
得简单多了,因为在所有CM3 产品间,SysTick 的处理方式都是相同的。
SysTick 定时器除了能服务于操作系统之外,还能用于其它目的:如作为一个闹
铃,用于测量时间等。
Systick 定时器属于cortex 内核部件,可以参考《CortexM3 权威指南》或
《STM32xxx-Cortex 编程手册》来了解
6.2 SysTick timer 工作分析
SysTick 是一个24 位的定时器,即一次最多可以计数224 个时钟脉冲,这
个脉冲计数值被保存到 当前计数值寄存器STK_VAL (SysTick current value
-第 4 页-
register) 中,只能向下计数,每接收到一个时钟脉冲STK_VAL 的值就向下减
1,直至0,当STK_VAL 的值被减至0 时,由硬件自动把重载寄存器
STK_LOAD (SysTick reload value register)中保存的数据加载到STK_VAL ,重
新向下计数。当STK_VAL 的值被计数至0 时,触发异常,就可以在中断服务函
数中处理定时事件了。
当然,要使SysTick 进行以上工作必须要进行SysTick 进行配置。它的控制
配置很简单,只有三个控制位和一个标志位,都位于寄存器STK_CTRL
(SysTick control and status register )中,见图6-。
图6-2 Systick CTRL 寄存器
Bit0: ENABLE
为SysTick tim
您可能关注的文档
- 阿特金斯2009年酒店地产开发案例.pdf
- 阿里巴巴云安全体系介绍.pdf
- 阿坝州汶川县龙溪乡阿尔村羌族文化调研.pdf
- 阶段质量控制(保利地产).pdf
- 阿里旺芝麻饼开发项目商业策划书.pdf
- 附录1 800-MODBUS通讯协议(107-122).pdf
- 阿里云-飞天系统-总体框架.pdf
- 阿里巴巴金融并购战略及其产业链的构建.pdf
- 附录A 平面图形的几何性质(2015版).pdf
- 阿黛勒·芬迪旅行箱拉杆箱的市场调研报告.pdf
- 多点监督与特征融合校准:目标检测算法的创新与突破.docx
- 南宁市门诊HIV_AIDS患者抑郁状况剖析与影响因素探究.docx
- 医疗过失犯罪中客观归责理论的精准适用与深度解析.docx
- 南宁市低碳经济发展研究.docx
- 清解瘀毒胶囊对脑出血大鼠血红蛋白毒性作用及机制探究.docx
- 内蒙古赤峰市元宝山区农村小学教师培训:现状、问题与突破路径.docx
- 泉州开发区国有资产投资经营有限公司发展战略研究:基于区域经济与市场环境的分析.docx
- 能源利用效率与经济增长方式的深度耦合及中国战略抉择.docx
- 分布式信号波达方向 - 时延联合估计算法的深度剖析与创新探索.docx
- 新媒体环境下大学校园精神传播的创新变革.docx
最近下载
- 临床思维能力的培养与提高PPT讲解课件.ppt VIP
- 运用PDCA降低留置尿管相关尿路感染.pptx VIP
- 课题申报书:数智时代生成式人工智能赋能高等教育教学研究.docx VIP
- 初中生语文新课标必读模拟训练.doc VIP
- 消化道穿孔术后的护理查房.pptx VIP
- 佳能 5D3 _ 5d mark iii-中文手册.pdf VIP
- 儿童读物 神奇树屋 30 - Haunted Castle on Hallows Eve.doc VIP
- 《宁夏闽宁镇:昔日干沙滩,今日金沙滩》-中职语文高二同步课件精选(高教版2023·职业模块).pptx VIP
- 红楼梦.ppt VIP
- 消化道穿孔术后护理查房.pptx VIP
文档评论(0)