单片机延时程序的设计思想

单片机编程中,延时程序使用比较多,根据其延时方式不同可分为两类:
      一》阻塞式延时;
      二》非阻塞式延时;
     阻塞式延时,最常用,通常是在原地循环若干次,通过消耗机器周期来实现。此时,CPU再不能干别的事(CT0/CT1/CT2/串口仍可工作,延时可被中断暂时打断,会使延时加长),实时性比较差。
     非阻塞式延时是在延时期间CPU仍可干别的事,不会在哪儿等,实时性比较好。
     打个比方,你在环形操场跑步,相当于CPU的PC指针在主程序中循环(多数程序都是这样)。有个延时程序要求你等100毫秒把手举起来一下(用此表示CPU处理一个事件):当是阻塞式延时方式时,你就在原地踏步跑,等100毫秒后,你把手举起来一下再接着跑;当是非阻塞式延时方式时,你只是在一个地方放个秒表,并启动它,但你并不停下而是继续跑。每次跑到这个地方,你只要看一下秒表,看是否到100毫秒,若到了,你就把手举起来一下,若没到,你就继续沿跑道跑。
     从上边的例子可清楚看出,阻塞式延时,影响主程序循环一次的执行时间(影响实时性!);非阻塞式延时,基本不影响主程序循环周期(CPU只是多执行一两条指令判断一下时间是否到),但需要有个“秒表”。这个“秒表”可用一个定时器完成,并作为整个系统的时基,供需要时基的部分使用;如单片机控制系统的人机界面,显示闪烁时就需要。比如,将定时器0设定为5毫秒,由此可产生10毫秒,25毫秒,50毫秒,100毫秒,250毫秒和500毫秒等等时钟信号。
     现在分析影响延时精度的因素:
      影响阻塞式延时的因素有:
        1)设计程序时计算执行机器周期数的偏差;
        2)中断处理程序的额外时延;
      影响非阻塞式延时的因素有:
        1)所用定时器基本时基的精度(如上例:5毫秒);
        2)主程序的循环周期;这是随机的,比如,当看秒表时,时间还没到,
           在下次看表之前时间却到了,最坏情况是差一个主程序循环周期;
        3)其他中断处理程序的额外时延;这是随机的,比如,在看表之前时间已到,
          这时有个中断也被响应,就要加上中断处理程序的时间延迟;
      在实际使用中,我们根据具体情况选择不同的延时方式。
     这种非阻塞式延时的思想,我们成功用在许多单片机控制系统中,效果很好。

(0)

相关推荐

  • 自学单片机第七十九篇:综合应用制作秒表代码介绍

    上一篇我们做了一个大致的全部的简介,说明了制作的过程和源代码,然后还有仿真用的硬件电路,这篇文章,将会对代码的使用作一个大致的介绍. 首先说一下思路.秒表,就是既可以计时,也可以用作跑表,记录短暂的时 ...

  • 西门子OB组织块介绍

    OB组织块 ● 什么是组织块? 组织块是操作系统和用户程序之间的接口.OB 用于执行具体的程序: 在 CPU 启动时 循环程序处理 在循环或延时时间到达时 当发生外部条件触发时 当发生故障.错误时 O ...

  • 远程升级单片机程序怎么设计?

        之前的文章中介绍过串口和U盘的IAP程序设计.在物联网应用中,远程IAP升级MCU的程序是一项非常有用的功能.当设备出现程序问题或者需要更新程序时,只需要在服务器上对设备进行升级,不需要在有专 ...

  • MCU固件的''驱动分离式''设计思想

    今天跟大家找了一种常见的应用与驱动分离设计的方式,对于目前一些高性能MCU还是值得使用一下的,不过对于原本主频不够高.性能不太强的MCU不建议使用,毕竟这样的设计还是牺牲了一定的性能. 在正规的项目开 ...

  • 破产企业强制接管程序的设计|审判研究

    郝一徽 辽宁法大律师事务所 根据<企业破产法>的规定,债务人在进入破产程序后,管理人的首要职责便是接管债务人的财产.印章和账簿.文书等资料.但在实践中,债务人的法定代表人.实际控制人或其他 ...

  • “铁穹”这次被累瘫了?深度解读“铁穹”设计思想

    5月10日以来,以色列与巴勒斯坦紧张局势急剧升级.巴勒斯坦武装向以色列发射了过千枚火箭弹.在以色列特拉维夫上空,再次上演了"铁穹"大战火箭弹的场景.有消息称,高强度的拦截作业甚至让 ...

  • 你的单片机裸机程序框架是怎样的?

    前言 前不久,我有位做测试的朋友转去做开发的工作,面试遇到了一个问题,他没明白,打电话问了我.题目大概就是: 在单片机裸机开发时,单片机要处理多个任务,此时你的程序框架是怎样的呢? 这其实是个经典面试 ...

  • 医用加速器差异化设计思想的探讨(PPT版)

    本文是我在中国生物医学工程协会第17届中国医学物理会议(武汉)上的演讲稿,也是我发表在<中国医疗器械杂志>2020年V44(02.04)上的文章<医用加速器差异化设计思想的探讨> ...

  • 博易大师-机构K线设计思想剔除骗线干扰,真实揭示K线背后的秘密

    博易大师-机构K线设计思想剔除骗线干扰,真实揭示K线背后的秘密

  • 宁波舰卡什坦近防系统打击空中目标,采用弹炮合一体制,设计思想独到

    近日,我军海军舰艇编队在东海海域进行了多课目训练,在特情敌情处置演练中检验官兵技战术水平,其中出现了我军装备的两艘956EM型现代级驱逐舰138泰州舰和139宁波舰,两者还进行了主副炮射击训练,卡什坦 ...

  • 设计思想太落伍?俞孔坚:那是你没看我的杂志!【第98期】

    最快的学习捷径 莫过于看一本好书 导读 北大院长,美国院士,土人老总,期刊总编 名头如此之大的俞孔坚 在业内怎么就不受待见 这十年老孔到底都写了些什么? 即使反对他的各大院校设计院都争相订阅 一次次地 ...