STM32之SysTick原理
一、STM32的SysTick简介
SysTick是一个24位的系统节拍定时器system tick timer,SysTick,具有自动重载和溢出中断功能,所有基于Cortex_M3处理器的微控制器都可以由这个定时器获得一定的时间间隔。
systick的作用:
在单任务引用程序中,因为其架构就决定了它执行任务的串行性,这就引出一个问题:当某个任务出现问题时,就会牵连到后续的任务,进而导致整个系统崩溃。要解决这个问题,可以使用实时操作系统(RTOS).
因为RTOS以并行的架构处理任务,单一任务的崩溃并不会牵连到整个系统。这样用户出于可靠性的考虑可能就会基于RTOS来设计自己的应用程序。这样SYSTICK存在的意义就是提供必要的时钟节拍,为RTOS的任务调度提供一个有节奏的“心跳”。
微控制器的定时器资源一般比较丰富,比如STM32存在8个定时器,为啥还要再提供一个SYSTICK?原因就是所有基于ARM Cortex_M3内核的控制器都带有SysTick定时器,这样就方便了程序在不同的器件之间的移植。而使用RTOS的第一项工作往往就是将其移植到开发人员的硬件平台上,由于SYSTICK的存在无疑降低了移植的难度。
SysTick定时器除了能服务于操作系统之外,还能用于其它目的:如作为一个闹铃,用于测量时间等。要注意的是,当处理器在调试期间被喊停(halt)时,则SysTick定时器亦将暂停运作。
systick的时钟选择:
二、SYSTICK的寄存器
STM32之SysTick原理相关推荐
- stm32实现Systick的毫秒级延时和微妙级延时
学习目标: stm32实现Systick的毫秒级延时和微妙级延时 学习内容: 1.Systick 工作原理 Systick(系统定时器)是ARM Cortex M3/M4 内核的一个外设,因为所有的C ...
- STM32 FSMC/FMC原理保姆级讲解(二)
上一话我们说了FSMC的基本原理及控制逻辑,这一讲我们来说下FSMC如何通过HAL库来进行配置,及具体参数 STM32 FSMC/FMC原理保姆级讲解(一) FSMC的初始化 在使用SRAM之前,我们 ...
- STM32 FSMC/FMC原理保姆级讲解(一)
FSMC通俗讲解 FSMC 框图 FMC引脚说明 FMC地址映射 FSMC不同位宽操作 FSMC寄存器 FSMC时钟 FSMC 四种模式 FSMC参数设置 FSMC 控制异步 NOR FLASH 的时 ...
- STM32 中 SysTick时钟的配置
SysTick_Config(SystemFrequency / 10) 函数的形参就是systick重装定时器的值. systck计数频率为每秒72000000次,所以7200000次就是1/1 ...
- STM32 GPIO工作原理
STM32 GPIO工作原理 STM32引脚说明 STM32F103ZET6: 共有7组IO口,每组IO口有16个IO--共16X7=112个IO 编号为:GPIOA,GPIOB--GPIOG,从A到 ...
- STM32学习——TFTLCD原理
STM32学习--TFTLCD原理 一.TFTLCD 简介 TFT-LCD 即薄膜晶体管液晶显示器(Thin Film Transistor-Liquid Crystal Display) TFT-L ...
- STM32的SysTick定时器记录一篇
CSDN博客主页 ID : Eterlove 一笔一画,记录我的学习生活!站在巨人的肩上Standing on Shoulders of Giants! 该文章为原创,转载请注明出处和作者! 前言 我 ...
- STM32使用Systick 实现精确定时
实实在在学会使用Systick请看: 这篇学习笔记,完全是基于<STM32不完全手册>而言的,我没有买Alientek的开发板,买的是ARMFly的,其实都差不多,只不过安福莱的板载资源非 ...
- STM32 GPIO的原理、特性、选型和配置
目录 1.基本结构 2.4种输入模式 3.4种输出模式 4.GPIO选型和配置 1.基本结构 STM32 GPIO是通用输入/输出端口的英文简称,其可实现输入.输出.驱动.通信等功能,STM32的I/ ...
最新文章
- 解决html页面闪烁,解决前端页面闪烁问题(转载)
- js 上传头像img
- 4_Tensorflow框架的使用(20181217-)
- 惠普打印机节能环保认证证书_学生在家学习 入门级喷墨打印机 300元-500元档
- Win7下VS2008升级补丁
- 关于WDM驱动开发的不错资料(来自codeproject)
- SAP Cloud Connector里点击Check按钮的可达性roundtrip实现
- linux中 /dev/null命令
- 服务器查看外网IP地址和方法
- 四个措施打造安全的DevOps流程
- sql统计表中各类型金额_各类型模具设计中“脱料结构”种类、使用范围揭秘,值得收藏...
- 【记住密码】vue项目实现记住密码功能
- ExtJS 可视化开发工具大全
- 大一新生 电脑小白如何选择电脑 电脑知识全面讲解
- html制作图片幻灯片效果代码,【JS+CSS3】实现带预览图幻灯片效果的示例代码
- 单机版传奇传奇服务端架设传奇服务器架设
- 开始启程, 你的第一行前端代码
- ftp上传文件时出现 550 Permission denied,不是用户权限问题
- 中国象棋AI实现01
- 报错提示:应用程序无法启动,因为应用程序的并行配置不正确,有关详细信息,请参阅应用程序时间日志,或使用命令行sxstrace.exe工具。有效解决方法
热门文章
- Java工作笔记-AJAX实现整体不变,局部更新(与整体刷新比较)
- STL学习笔记-multimap的基本使用
- OpenCV文档阅读笔记-cvtColor官方解析及实例
- Qt工作笔记-使用QCustomplot实现鼠标拖动数据点画曲线
- C++ STL string修改
- 清华附2021高考成绩查询,2021年高考多少分能上清华大学?附清华大学录取分数线2020全国汇总...
- mysql check table_mysql check table
- mongodb php 删除,MongoDB / PHP:从数组中删除元素
- java static method_java 中static的几种用法
- python 三维曲线拟合_基于三维数据和参数的Scipy曲线拟合