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

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

3天内不再提示

关于单片机延时程序的具体分析

j4AI_wujianying 来源:未知 作者:伍文辉 2018-04-30 15:35 次阅读

前面我们介绍了延时程序,但这还不完善,因为,我们只知道DJNZ R6,D2这句话会被执行62500次,但是执行这么多次需要多长时间呢?是否满足我们的要求呢?我们还不知道,所以下面要来解决这个问题。

先提一个问题:我们学校里什么是最重要的。(铃声)校长可以出差,老师可以休息,但学校一日无铃声必定大乱。整个学校就是在铃声的统一指挥下,步调一致,统一协调地工作着。这个铃是按一定的时间安排来响的,我们可以称之为“时序��时间的顺序”。一个由人组成的单位尚且要有一定的时序,计算机当然更要有严格的时序。事实上,计算机更象一个大钟,什么时候分针动,什么时候秒针动,什么时候时针动,都有严格的规定,一点也不能乱。计算机要完成的事更复杂,所以它的时序也更复杂。

我们已知,计算机工作时,是一条一条地从ROM中取指令,然后一步一步地执行,我们规定:计算机访问一次存储器的时间,称之为一个机器周期。这是一个时间基准,好象我们人用“秒”作为我们的时间基准一样,为什么不干脆用“秒”,多好,很习惯,学下去我们就会知道用“秒”反而不习惯。

一个机器周期包括12个时钟周期。下面让我们算一下一个机器周期是多长时间吧。设一个单片机工作于12M晶振,它的时钟周期是1/12(微秒)。它的一个机器周期是12*(1/12)也就是1微秒。(请计算一个工作于6M晶振的单片机,它的机器周期是多少)。

MCS-51单片机的所有指令中,有一些完成得比较快,只要一个机器周期就行了,有一些完成得比较慢,得要2个机器周期,还有两条指令要4个机器周期才行。这也不难再解,不是吗?我让你扫地的执行要完成总得比要你完成擦黑板的指令时间要长。为了恒量指令执行时间的长短,又引入一个新的概念:指令周期。所谓指令周期就是指执行一条指令的时间。INTEL对每一条指令都给出了它的指令周期数,这些数据,大部份不需要我们去记忆,但是有一些指令是需要记住的,如DJNZ指令是双周期指令。

下面让我们来计算刚才的延时。首先必须要知道晶振的频率,我们设所用晶振为12M,则一个机器周期就是1微秒。而DJNZ指令是双周期指令,所以执行一次要2个微秒。一共执行62500次,正好125000微秒,也就是125毫秒。

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

    关注

    1

    文章

    16

    浏览量

    9426
  • MCS-51
    +关注

    关注

    2

    文章

    126

    浏览量

    29227

原文标题:单片机时序分析

文章出处:【微信号:wujianying_danpianji,微信公众号:单片机精讲吴鉴鹰】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    STM32单片机延时原理和延时函数方法

    当涉及到单片机编程时,延时是一项常见但关键的任务。在许多应用中,我们需要控制程序暂停一段时间,以实现精确的时间控制或协调不同设备之间的操作。本文将以STM32为例,介绍关于
    发表于 08-09 09:13 1.7w次阅读

    单片机C 语言的精确延时程序设计

    单片机C 语言的精确延时程序设计
    发表于 05-16 14:50 47次下载

    单片机教程五:单片机延时程序分析

    单片机教程五:单片机延时程序分析 上一次课中,我们已经知道,程序中的符号R7、R6是代表了一个
    发表于 05-15 23:00 1056次阅读
    <b class='flag-5'>单片机</b>教程五:<b class='flag-5'>单片机</b><b class='flag-5'>延时</b><b class='flag-5'>程序</b><b class='flag-5'>分析</b>

    单片机延时程序图解分析

    单片机延时程序图解分析 上一次课中,我们已经知道,程序中的符号R7、R6是代表了一个个的RAM单元,是用来放一些数据的,下面我们再来看
    发表于 03-11 09:18 612次阅读
    <b class='flag-5'>单片机</b><b class='flag-5'>延时</b><b class='flag-5'>程序</b>图解<b class='flag-5'>分析</b>

    单片机延时计算小程序

    电子发烧友网站提供《单片机延时计算小程序.zip》资料免费下载
    发表于 09-17 17:24 6次下载

    51单片机汇编语言教程_单片机延时程序分析

    51单片机汇编语言教程:5课单片机延时程序分析
    发表于 01-19 15:26 0次下载

    单片机延时计算小程序

    单片机延时计算小程序
    发表于 12-01 16:44 2次下载

    单片机延时计算小程序

    单片机延时计算小程序
    发表于 12-28 11:07 6次下载

    单片机延时程序基本知识汇总

    下面几个是单片机延时程序(包括asm和C程序,都是我在学单片机的过程中用到的),在单片机
    的头像 发表于 03-05 18:40 2w次阅读

    AVR单片机延时函数程序免费下载

    本文档的主要内容详细介绍的是AVR单片机延时函数程序免费下载
    发表于 11-16 08:00 7次下载
    AVR<b class='flag-5'>单片机</b>的<b class='flag-5'>延时</b>函数<b class='flag-5'>程序</b>免费下载

    51单片机的汇编延时程序免费下载

    本文档的主要内容详细介绍的是51单片机的汇编延时程序免费下载。用6MHz晶振,51单片机,一个机器周期为2us。延时10s子
    发表于 08-05 17:34 4次下载
    51<b class='flag-5'>单片机</b>的汇编<b class='flag-5'>延时</b><b class='flag-5'>程序</b>免费下载

    单片机有哪些品牌和单片机软件延时10ms的程序及有哪些排序算法

    本文档的主要内容详细介绍的是单片机有哪些品牌和单片机软件延时10ms的程序及有哪些排序算法。
    发表于 07-10 17:40 5次下载
    <b class='flag-5'>单片机</b>有哪些品牌和<b class='flag-5'>单片机</b>软件<b class='flag-5'>延时</b>10ms的<b class='flag-5'>程序</b>及有哪些排序算法

    单片机延时问题20问

    、STC89C52、PIC单片机…..在内的各种单片机常见的延时与中断问题及解决方法,希望对单片机新手们,有所帮助!1、单片机
    发表于 11-13 21:06 6次下载
    <b class='flag-5'>单片机</b><b class='flag-5'>延时</b>问题20问

    5课:单片机延时程序分析 2020/11/15

    5课:单片机延时程序分析 2020/11/15
    发表于 11-20 11:51 8次下载
    5课:<b class='flag-5'>单片机</b><b class='flag-5'>延时</b><b class='flag-5'>程序</b><b class='flag-5'>分析</b> 2020/11/15

    51单片机实战教程(四 延时程序

    延时程序单片机系统开发中是必不可少的。如我们常用蜂鸣器声的长短来表示系统开机自检结果,蜂鸣器声的长短就离不开延时程序
    发表于 11-23 16:51 13次下载
    51<b class='flag-5'>单片机</b>实战教程(四 <b class='flag-5'>延时</b><b class='flag-5'>程序</b>)