0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

關(guān)于單片機(jī)延時程序的具體分析

j4AI_wujianying ? 來源:未知 ? 作者:伍文輝 ? 2018-04-30 15:35 ? 次閱讀

前面我們介紹了延時程序,但這還不完善,因為,我們只知道DJNZ R6,D2這句話會被執(zhí)行62500次,但是執(zhí)行這么多次需要多長時間呢?是否滿足我們的要求呢?我們還不知道,所以下面要來解決這個問題。

先提一個問題:我們學(xué)校里什么是最重要的。(鈴聲)校長可以出差,老師可以休息,但學(xué)校一日無鈴聲必定大亂。整個學(xué)校就是在鈴聲的統(tǒng)一指揮下,步調(diào)一致,統(tǒng)一協(xié)調(diào)地工作著。這個鈴是按一定的時間安排來響的,我們可以稱之為“時序��時間的順序”。一個由人組成的單位尚且要有一定的時序,計算機(jī)當(dāng)然更要有嚴(yán)格的時序。事實上,計算機(jī)更象一個大鐘,什么時候分針動,什么時候秒針動,什么時候時針動,都有嚴(yán)格的規(guī)定,一點也不能亂。計算機(jī)要完成的事更復(fù)雜,所以它的時序也更復(fù)雜。

我們已知,計算機(jī)工作時,是一條一條地從ROM中取指令,然后一步一步地執(zhí)行,我們規(guī)定:計算機(jī)訪問一次存儲器的時間,稱之為一個機(jī)器周期。這是一個時間基準(zhǔn),好象我們?nèi)擞谩懊搿弊鳛槲覀兊臅r間基準(zhǔn)一樣,為什么不干脆用“秒”,多好,很習(xí)慣,學(xué)下去我們就會知道用“秒”反而不習(xí)慣。

一個機(jī)器周期包括12個時鐘周期。下面讓我們算一下一個機(jī)器周期是多長時間吧。設(shè)一個單片機(jī)工作于12M晶振,它的時鐘周期是1/12(微秒)。它的一個機(jī)器周期是12*(1/12)也就是1微秒。(請計算一個工作于6M晶振的單片機(jī),它的機(jī)器周期是多少)。

MCS-51單片機(jī)的所有指令中,有一些完成得比較快,只要一個機(jī)器周期就行了,有一些完成得比較慢,得要2個機(jī)器周期,還有兩條指令要4個機(jī)器周期才行。這也不難再解,不是嗎?我讓你掃地的執(zhí)行要完成總得比要你完成擦黑板的指令時間要長。為了恒量指令執(zhí)行時間的長短,又引入一個新的概念:指令周期。所謂指令周期就是指執(zhí)行一條指令的時間。INTEL對每一條指令都給出了它的指令周期數(shù),這些數(shù)據(jù),大部份不需要我們?nèi)ビ洃?,但是有一些指令是需要記住的,如DJNZ指令是雙周期指令。

下面讓我們來計算剛才的延時。首先必須要知道晶振的頻率,我們設(shè)所用晶振為12M,則一個機(jī)器周期就是1微秒。而DJNZ指令是雙周期指令,所以執(zhí)行一次要2個微秒。一共執(zhí)行62500次,正好125000微秒,也就是125毫秒。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 延時程序
    +關(guān)注

    關(guān)注

    1

    文章

    16

    瀏覽量

    9418
  • MCS-51
    +關(guān)注

    關(guān)注

    2

    文章

    126

    瀏覽量

    28998

原文標(biāo)題:單片機(jī)時序分析

文章出處:【微信號:wujianying_danpianji,微信公眾號:單片機(jī)精講吳鑒鷹】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    STM32單片機(jī)延時原理和延時函數(shù)方法

    當(dāng)涉及到單片機(jī)編程時,延時是一項常見但關(guān)鍵的任務(wù)。在許多應(yīng)用中,我們需要控制程序暫停一段時間,以實現(xiàn)精確的時間控制或協(xié)調(diào)不同設(shè)備之間的操作。本文將以STM32為例,介紹關(guān)于
    發(fā)表于 08-09 09:13 ?1.6w次閱讀

    單片機(jī)C 語言的精確延時程序設(shè)計

    單片機(jī)C 語言的精確延時程序設(shè)計
    發(fā)表于 05-16 14:50 ?47次下載

    單片機(jī)教程五:單片機(jī)延時程序分析

    單片機(jī)教程五:單片機(jī)延時程序分析 上一次課中,我們已經(jīng)知道,程序中的符號R7、R6是代表了一個
    發(fā)表于 05-15 23:00 ?1032次閱讀
    <b class='flag-5'>單片機(jī)</b>教程五:<b class='flag-5'>單片機(jī)</b><b class='flag-5'>延時</b><b class='flag-5'>程序</b><b class='flag-5'>分析</b>

    單片機(jī)延時程序圖解分析

    單片機(jī)延時程序圖解分析 上一次課中,我們已經(jīng)知道,程序中的符號R7、R6是代表了一個個的RAM單元,是用來放一些數(shù)據(jù)的,下面我們再來看
    發(fā)表于 03-11 09:18 ?606次閱讀
    <b class='flag-5'>單片機(jī)</b><b class='flag-5'>延時</b><b class='flag-5'>程序</b>圖解<b class='flag-5'>分析</b>

    單片機(jī)延時計算小程序

    電子發(fā)燒友網(wǎng)站提供《單片機(jī)延時計算小程序.zip》資料免費下載
    發(fā)表于 09-17 17:24 ?6次下載

    51單片機(jī)匯編語言教程_單片機(jī)延時程序分析

    51單片機(jī)匯編語言教程:5課單片機(jī)延時程序分析
    發(fā)表于 01-19 15:26 ?0次下載

    單片機(jī)延時計算小程序

    單片機(jī)延時計算小程序
    發(fā)表于 12-01 16:44 ?2次下載

    單片機(jī)延時計算小程序

    單片機(jī)延時計算小程序
    發(fā)表于 12-28 11:07 ?6次下載

    單片機(jī)延時程序基本知識匯總

    下面幾個是單片機(jī)延時程序(包括asm和C程序,都是我在學(xué)單片機(jī)的過程中用到的),在單片機(jī)
    的頭像 發(fā)表于 03-05 18:40 ?2w次閱讀

    AVR單片機(jī)延時函數(shù)程序免費下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是AVR單片機(jī)延時函數(shù)程序免費下載
    發(fā)表于 11-16 08:00 ?7次下載
    AVR<b class='flag-5'>單片機(jī)</b>的<b class='flag-5'>延時</b>函數(shù)<b class='flag-5'>程序</b>免費下載

    51單片機(jī)的匯編延時程序免費下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是51單片機(jī)的匯編延時程序免費下載。用6MHz晶振,51單片機(jī),一個機(jī)器周期為2us。延時10s子
    發(fā)表于 08-05 17:34 ?4次下載
    51<b class='flag-5'>單片機(jī)</b>的匯編<b class='flag-5'>延時</b><b class='flag-5'>程序</b>免費下載

    單片機(jī)有哪些品牌和單片機(jī)軟件延時10ms的程序及有哪些排序算法

    本文檔的主要內(nèi)容詳細(xì)介紹的是單片機(jī)有哪些品牌和單片機(jī)軟件延時10ms的程序及有哪些排序算法。
    發(fā)表于 07-10 17:40 ?5次下載
    <b class='flag-5'>單片機(jī)</b>有哪些品牌和<b class='flag-5'>單片機(jī)</b>軟件<b class='flag-5'>延時</b>10ms的<b class='flag-5'>程序</b>及有哪些排序算法

    單片機(jī)延時問題20問

    、STC89C52、PIC單片機(jī)…..在內(nèi)的各種單片機(jī)常見的延時與中斷問題及解決方法,希望對單片機(jī)新手們,有所幫助!1、單片機(jī)
    發(fā)表于 11-13 21:06 ?6次下載
    <b class='flag-5'>單片機(jī)</b><b class='flag-5'>延時</b>問題20問

    5課:單片機(jī)延時程序分析 2020/11/15

    5課:單片機(jī)延時程序分析 2020/11/15
    發(fā)表于 11-20 11:51 ?8次下載
    5課:<b class='flag-5'>單片機(jī)</b><b class='flag-5'>延時</b><b class='flag-5'>程序</b><b class='flag-5'>分析</b> 2020/11/15

    51單片機(jī)實戰(zhàn)教程(四 延時程序

    延時程序單片機(jī)系統(tǒng)開發(fā)中是必不可少的。如我們常用蜂鳴器聲的長短來表示系統(tǒng)開機(jī)自檢結(jié)果,蜂鳴器聲的長短就離不開延時程序。
    發(fā)表于 11-23 16:51 ?13次下載
    51<b class='flag-5'>單片機(jī)</b>實戰(zhàn)教程(四 <b class='flag-5'>延時</b><b class='flag-5'>程序</b>)