如何使用STM32实现systick的精确延时

发布时间:2024-02-27  

SYSTICK寄存器初始化

void SysTick_Configuration(void)


{

if (SysTick_Config(SystemCoreClock / 100))

{

while (1);

}

NVIC_SetPriority(SysTick_IRQn, 0x0);

}

SysTick_Config默认时钟为SysTick_CLKSource_HCLK,所以在这之前使用SysTick_CLKSourceConfig()选择系统时钟不会改变systick的时钟

static __INLINE uint32_t SysTick_Config(uint32_t ticks)


{

if (ticks 》 SysTick_LOAD_RELOAD_Msk)return (1);

SysTick-》LOAD= (ticks & SysTick_LOAD_RELOAD_Msk) - 1;

NVIC_SetPriority (SysTick_IRQn, (1《《__NVIC_PRIO_BITS) - 1);

SysTick-》VAL= 0;

SysTick-》CTRL=SysTick_CTRL_CLKSOURCE_Msk |

SysTick_CTRL_TICKINT_Msk|

SysTick_CTRL_ENABLE_Msk;

return (0);

}

systick中断服务程序

void SysTick_Handler(void)

{

systime ++;

}

延时程序

void delay_ms(unsigned int ms)

{

unsigned int temp;

temp = systime;

while((systime - temp) 《 ms);

}

void SysTick_CLKSourceConfig(uint32_t SysTick_CLKSource)在misc.c文件中定义

static __INLINE uint32_t SysTick_Config(uint32_t ticks)在core_cm3.h中定义


文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

相关文章

    我们来完成软件编程设计,这里我们没有采用高深的编程技巧,而是用了最笨、最直接的向端口送数的办法来实现,一来程序比较简单,没必要玩深沉,而且初学者看起来直观易懂。ORG 0000HSTART:MOV P1......
    OTM2800同步性能分析仪的功能特点及应用范围;OTM2800(ETS-300-2)同步性能分析仪内置GPS或者北斗驯服的原子钟,提供高精度时间时钟信息,既能支持传统TDM网络定时技......
    设置",然后选择好我们的单片机型号,点击“将所选目标单片机设置位仿真芯片” 在Keil软件端仿真,我们先在while循环中下个断点,由于串口的通讯速度不高,延时时间太长仿真很容易崩溃,我这里将延时改成1ms......
    解读电动机控制电路图工作方式和识图技巧;电路图识读能力是电气专业必备技能之一,控制电路图,是继电控制回路在安装、调试、维修、维护等过程中,需熟练掌握的基础知识。 电路图就像我们熟悉的地图一样,通过......
    1分钟掌握PLC输入输出程序编写技巧; 本文将带你快速了解输入输出程序的设计思路,助你......
    选目标单片机设置位仿真芯片” 在Keil软件端仿真,我们先在while循环中下个断点,由于串口的通讯速度不高,延时时间太长仿真很容易崩溃,我这里将延时改成1ms,大家可以尝试将串口通信速度提高试下 在线......
    电器一定要知道的知识点 33.ABB变频器的接线图 34.电磁阀延时控制接线方法 35.电线......
    三相异步电动机正、反转控制电路 这7个电气图都看懂了才算入门;电气图就是电气原理图是用来表明设备电气的工作原理及各电器元件的作用,相互之间的关系的一种表示方式。运用电气原理图的方法和技巧,对于......
    图就像我们熟悉的地图一样,通过电路图,我们可以了解控制电路的工作原理、接线顺序、控制逻辑等内容。为我们对控制电路熟悉,提供了重要指引信息。 本文从识图必备基础,对电路图符号与控制状态、七种常见继电控制方式、继电控制识图技巧......
    8051系列单片机软件精确延时研究(二);  由前篇可知,在DelayX10us()函数中用for循环延时会产生10个机器周期的固定误差,其中X传值、调用函数、子函数返回共5个机器周期,这是......

我们与500+贴片厂合作,完美满足客户的定制需求。为品牌提供定制化的推广方案、专属产品特色页,多渠道推广,SEM/SEO精准营销以及与公众号的联合推广...详细>>

利用葫芦芯平台的卓越技术服务和新产品推广能力,原厂代理能轻松打入消费物联网(IOT)、信息与通信(ICT)、汽车及新能源汽车、工业自动化及工业物联网、装备及功率电子...详细>>

充分利用其强大的电子元器件采购流量,创新性地为这些物料提供了一个全新的窗口。我们的高效数字营销技术,不仅可以助你轻松识别与连接到需求方,更能够极大地提高“闲置物料”的处理能力,通过葫芦芯平台...详细>>

我们的目标很明确:构建一个全方位的半导体产业生态系统。成为一家全球领先的半导体互联网生态公司。目前,我们已成功打造了智能汽车、智能家居、大健康医疗、机器人和材料等五大生态领域。更为重要的是...详细>>

我们深知加工与定制类服务商的价值和重要性,因此,我们倾力为您提供最顶尖的营销资源。在我们的平台上,您可以直接接触到100万的研发工程师和采购工程师,以及10万的活跃客户群体...详细>>

凭借我们强大的专业流量和尖端的互联网数字营销技术,我们承诺为原厂提供免费的产品资料推广服务。无论是最新的资讯、技术动态还是创新产品,都可以通过我们的平台迅速传达给目标客户...详细>>

我们不止于将线索转化为潜在客户。葫芦芯平台致力于形成业务闭环,从引流、宣传到最终销售,全程跟进,确保每一个potential lead都得到妥善处理,从而大幅提高转化率。不仅如此...详细>>