0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

STM32延时函数的方法

ss 来源:CSDN的沐白001、ZJE_ANDY 作者:CSDN的沐白001、ZJ 2021-10-02 16:13 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

STM32延时函数的方法

1.普通延时法

这个比较简单,让单片机做一些无关紧要的工作来打发时间,经常用循环来实现,不过要做的比较精准还是要下一番功夫。

2.SysTick 定时器延时

CM3 内核的处理器,内部包含了一个SysTick 定时器,SysTick 是一个24 位的倒计数定时器,当计到0 时,将从RELOAD寄存器中自动重装载定时初值。

延时函数delay的编写

原理:3层for循环,循环次数是 NUM = 4X5X248 = 4960次,由每次循环都有条件判断(如 i 》0)和自减语句(如 i--),因此每次循环又耗费两个机器周期

所以,总耗费的机器周期为 SUM = NUM x 2 = 9920个。

整合自:CSDN的沐白001、ZJE_ANDY

编辑:jq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 处理器
    +关注

    关注

    68

    文章

    20377

    浏览量

    255583
  • STM32
    +关注

    关注

    2313

    文章

    11206

    浏览量

    375189
  • 延时函数
    +关注

    关注

    0

    文章

    25

    浏览量

    10409
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    探索Cebek I - 36延时定时器:设计与应用指南

    探索Cebek I - 36延时定时器:设计与应用指南 在电子工程师的日常工作中,延时定时器是一种常见且实用的设备。今天,我们就来深入了解Cebek I - 36延时定时器,从其特性、安装到操作
    的头像 发表于 05-11 14:40 128次阅读

    CW32L012与STM32G431的CORDIC三角函数运算性能对比

    本文对比均为作者实测,结果仅供参考,可附代码供有意者评估~ STM32G431是STM32家族中较新的产品。CW32L012也是武汉芯源半导体最新推出的混合信号MCU,让我们深入分析基于各自芯片
    的头像 发表于 12-29 15:55 2925次阅读
    CW32L012与<b class='flag-5'>STM32</b>G431的CORDIC三角<b class='flag-5'>函数</b>运算性能对比

    如何在Zephyr RTOS中实现延时和计时函数

    多种延时与计时实现方案,满足不同应用场景的需求。那么,大家平时都是怎么在MCU程序中实现计时函数、实现延时的呢?
    的头像 发表于 12-26 10:32 6353次阅读
    如何在Zephyr RTOS中实现<b class='flag-5'>延时</b>和计时<b class='flag-5'>函数</b>

    交流延时电源

    交流延时电源
    的头像 发表于 12-25 12:57 615次阅读
    交流<b class='flag-5'>延时</b>电源

    西门子PLC中函数FC的使用方法

    函数函数块作为模块化编程的重要组成部分,在PLC 用户程序中有着相当频繁的应用。两者在生成与使用的过程中都有一定的相似,且都不能单独使用。而需要赋予特定的功能,由组织块(OB)直接或者间接进行调用。
    的头像 发表于 12-19 11:26 4726次阅读
    西门子PLC中<b class='flag-5'>函数</b>FC的使用<b class='flag-5'>方法</b>

    Cortex-M内核中的精确延时方法

    为什么要学习这种延时方法? 很多时候我们跑操作系统,就一般会占用一个硬件定时器——SysTick,而我们一般操作系统的时钟节拍一般是设置100-1000HZ,也就是1ms——10ms产生一次中断
    发表于 11-21 07:51

    使用系统定时器SysTick来实现精确延时微秒和毫秒函数

    内核MCU之间,可以很方便的实现。而东芝的这款TT_M3HQ开发板使用的TMPM3HQFDFG芯片,正好是ARM Cortex-M3内核,所以以前使用的延时函数,可以直接拿过来使用,无需任何修改
    发表于 11-20 07:12

    第4章 C语言基础以及流水灯的实现(4.7 4.8)

    的范围值来改变延时时间,但是循环的执行时间都是不能通过程序看出来的。 精确延时有两个方法,一个方法是用定时器来延时,这个
    的头像 发表于 11-19 17:20 1089次阅读
    第4章 C语言基础以及流水灯的实现(4.7 4.8)

    感知再进化,新增“触发延时”功能!

    ——「触发延时」正式上线!这不仅是一个功能的增加,更是对产品稳定性和场景适用性的一次深刻优化。一、亮点速览什么是“触发延时”功能?简单来说,“触发延时”是指在雷达检测到
    的头像 发表于 11-10 11:05 1103次阅读
    感知再进化,新增“触发<b class='flag-5'>延时</b>”功能!

    使用函数块实现三相电机正反转控制

    在使用西门子S1200PLC,所使用的软件是博途软件,在这个软件里运用了块的概念。比如我们常见的组织块(OB)、函数块(FB)、数据块(DB)以及函数FC等。今天我们来具体交流一下这个函数块(FB)的具体使用
    的头像 发表于 10-15 14:40 2999次阅读
    使用<b class='flag-5'>函数</b>块实现三相电机正反转控制

    探头的延时介绍

    探头的延时是指信号从被测点传输到示波器输入端的时间间隔,即信号经过探头的探针、传输电缆、内部电路等路径后,到达示波器采样系统的总时间延迟,(以下讨论低速信号情景,忽略示波器通道间ps级的延时误差)。不同型号的探头延时存在差异,尤
    的头像 发表于 09-17 17:32 1041次阅读
    探头的<b class='flag-5'>延时</b>介绍

    在rtthread的main函数里用HAL_Delay函数不起作用是哪里的问题?

    在rtthread的main函数里用HAL_Delay函数无效,我设置延时500ms打印一次,但是实际上,一秒打印了几百次,很显然是HAL_Delay出现了问题。用RT_thread_mdelay
    发表于 09-15 07:53

    认识探头的延时

    探头的延时是指信号从被测点传输到示波器输入端的时间间隔,即信号经过探头的探针、传输电缆、内部电路等路径后,到达示波器采样系统的总时间延迟,(以下讨论低速信号情景,忽略示波器通道间ps级的延时误差
    的头像 发表于 08-26 17:04 950次阅读
    认识探头的<b class='flag-5'>延时</b>

    详解hal_entry入口函数

    当使用RTOS时,程序从main函数开始进行线程调度;当没有使用RTOS时,C语言程序的入口函数main函数调用了hal_entry函数。由于我们新建的工程是没有选用RTOS的,因此,
    的头像 发表于 07-25 15:34 2310次阅读

    Linux修改uboot启动延时方法详细攻略,触觉智能RK3568开发板演示

    本文介绍Linux系统修改uboot启动延时方法,使用触觉智能EVB3568鸿蒙开发板演示,搭载瑞芯微RK3568,四核A55处理器,主频2.0Ghz,1T算力NPU;支持开源鸿蒙
    的头像 发表于 06-06 18:07 1211次阅读
    Linux修改uboot启动<b class='flag-5'>延时方法</b>详细攻略,触觉智能RK3568开发板演示