精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

51單片機1s延時程序設計的詳細資料說明

2oON_changxuemc ? 來源:未知 ? 2019-03-03 10:49 ? 次閱讀

#include

sbit P1_0 = P1^0;

void Delay(); // 下面引用時一定要和這里的大小寫一致否則會有警告或錯誤

void Main()

{

while (1) // 開始一直循環(huán)

{

P1_0 = 0;

Delay(); // 沒有參數(shù)也要加 () 否則會有Warning

P1_0 = 1;

Delay();

}

}

void Delay() // 12M晶振1s延時

{

unsigned char h, i, j, k;

for (h = 5; h 》 0; h--)

for (i = 4; i 》 0; i--)

for (j = 116; j 》 0; j--)

for (k = 214; k 》 0; k--); // 最后個要有 ; 號

}

//=======以下非代碼==========//

原理,利用h,i,j,k循環(huán)指令消耗掉一定時間來達到延時,為什么利用循環(huán)延時的做法,在12M晶振延時1秒中需要h,i,j,k四個變量,且各變量的值是上面代碼中那樣呢?這要從單片機的周期說起,單片機有指令周期,機器周期,狀態(tài)周期,時鐘周期;

時鐘周期:也就晶振的振蕩周期,以12MHz為例,時鐘周期為 1/ 12000000 = 1/12us;

機器周期:1個機器周期=6個狀態(tài)周期=12個時鐘周期=1us;

指令周期:單片機執(zhí)行一條指令所需要的時間稱為指令周期,指令周期是以機器周期為單位的,不同的指令所需要的機器周期不一定相同(1-4個),單片機執(zhí)行一條單周期指令需要1us,執(zhí)行一條雙周期指令需要2us,for循環(huán)需要8個指令周期;

具體執(zhí)行for循環(huán)消耗的時間,可以在Keil里通過代碼測量:

#include

sbit P1_0 = P1^0;

void Delay();

void Main()

{

while (1)// 開始一直循環(huán)

{

P1_0 = 0;

Delay();

P1_0 = 1;

Delay();

}

}

void Delay()

{

unsigned char h;

for (h = 1000; h 》 0; h--); // 此處下斷點

}

循環(huán)1000次執(zhí)行完后的時間點

1000次循環(huán)耗時 0.00042850s - 0.00019600s = 0.00023250s = 232.5us;1次循環(huán)耗時約 0.2us,

1s = 1000000us,1000000us / 0.2us = 500000次,而5 * 4 * 116 * 214 = 496480;因為無符號字符型unsigned char 大小為1 byte,范圍為0~255,所以只能通過循環(huán)嵌套,近似的得到一個1s延時。

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

    關注

    34

    文章

    2824

    瀏覽量

    67901
  • 51單片機
    +關注

    關注

    273

    文章

    5697

    瀏覽量

    123186
  • 程序
    +關注

    關注

    116

    文章

    3776

    瀏覽量

    80848

原文標題:51單片機1s延時程序設計

文章出處:【微信號:changxuemcu,微信公眾號:暢學單片機】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    單片機C語言程序設計的20例基礎程序設計詳細資料概述

    本文檔介紹的主要內容是20例基于單片機C語言的基礎程序設計詳細資料概述
    發(fā)表于 06-08 08:00 ?87次下載
    <b class='flag-5'>單片機</b>C語言<b class='flag-5'>程序設計</b>的20例基礎<b class='flag-5'>程序設計</b><b class='flag-5'>詳細資料</b>概述

    51單片機教程之指令系統(tǒng)及程序設計詳細資料概述

    本文檔的主要內容詳細介紹的是51單片機教程之指令系統(tǒng)及程序設計詳細資料概述。內容包括了:一MCS51
    發(fā)表于 10-23 11:00 ?8次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機</b>教程之指令系統(tǒng)及<b class='flag-5'>程序設計</b>的<b class='flag-5'>詳細資料</b>概述

    51單片機教程之51單片機IO端口應用的詳細資料概述

    本文檔的主要內容詳細介紹的是51單片機教程之51單片機IO端口應用的詳細資料概述主要內容包括了:
    發(fā)表于 10-24 16:22 ?19次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機</b>教程之<b class='flag-5'>51</b><b class='flag-5'>單片機</b>IO端口應用的<b class='flag-5'>詳細資料</b>概述

    51單片機教程之MCS51單片機C程序設計詳細資料概述

    本文檔的主要內容詳細介紹的是51單片機教程之MCS51單片機C程序設計
    發(fā)表于 10-24 16:22 ?11次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機</b>教程之MCS<b class='flag-5'>51</b><b class='flag-5'>單片機</b>C<b class='flag-5'>程序設計</b>的<b class='flag-5'>詳細資料</b>概述

    51單片機經(jīng)典項目及仿真程序及原理的詳細資料詳解

    本文檔的主要內容詳細介紹的是51單片機經(jīng)典項目及仿真程序及原理的詳細資料詳解主要內容包括了:1
    發(fā)表于 12-13 17:08 ?58次下載

    單片機基礎教程之匯編語言程序設計知識的詳細資料說明

    本文檔的主要內容詳細介紹的是單片機基礎教程之匯編語言程序設計知識的詳細資料說明包括了:1 編程的
    發(fā)表于 01-28 16:47 ?10次下載
    <b class='flag-5'>單片機</b>基礎教程之匯編語言<b class='flag-5'>程序設計</b>知識的<b class='flag-5'>詳細資料</b><b class='flag-5'>說明</b>

    多個51單片機C語言程序設計源代碼的詳細資料合集

    本文檔的主要內容詳細介紹的是多個51單片機C語言程序設計源代碼的詳細資料合集。
    發(fā)表于 03-11 08:00 ?20次下載
    多個<b class='flag-5'>51</b><b class='flag-5'>單片機</b>C語言<b class='flag-5'>程序設計</b>源代碼的<b class='flag-5'>詳細資料</b>合集

    51單片機延時函數(shù)計算問題以及如何準確延時詳細資料說明

    本文檔的主要內容詳細介紹的是51單片機延時函數(shù)計算問題以及如何準確延時詳細資料
    發(fā)表于 04-15 18:24 ?2次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機</b><b class='flag-5'>延時</b>函數(shù)計算問題以及如何準確<b class='flag-5'>延時</b>的<b class='flag-5'>詳細資料</b><b class='flag-5'>說明</b>

    51單片機的匯編指令詳細資料說明

    本文檔的主要內容詳細介紹的是51單片機的匯編指令詳細資料說明
    發(fā)表于 08-30 17:28 ?14次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機</b>的匯編指令<b class='flag-5'>詳細資料</b><b class='flag-5'>說明</b>

    51單片機例函數(shù)的詳細資料說明

    本文檔的主要內容詳細介紹的是51單片機例函數(shù)的詳細資料說明
    發(fā)表于 08-28 17:29 ?8次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機</b>例函數(shù)的<b class='flag-5'>詳細資料</b><b class='flag-5'>說明</b>

    51單片機的中斷系統(tǒng)詳細資料說明

    本文檔的主要內容詳細介紹的是51單片機的中斷系統(tǒng)詳細資料說明
    發(fā)表于 06-14 17:45 ?3次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機</b>的中斷系統(tǒng)<b class='flag-5'>詳細資料</b><b class='flag-5'>說明</b>

    51單片機匯編語言教程之單片機鍵盤接口程序設計詳細資料說明

    本文檔的主要內容詳細介紹的是51單片機匯編語言教程之單片機鍵盤接口程序設計詳細資料
    發(fā)表于 06-05 16:30 ?19次下載
    <b class='flag-5'>51</b><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>

    單片機原理及應用的詳細資料說明

    本文檔的主要內容詳細介紹的是單片機原理及應用的詳細資料說明包括了:單片機芯片的硬件結構, MCS-51
    發(fā)表于 12-26 10:34 ?20次下載
    <b class='flag-5'>單片機</b>原理及應用的<b class='flag-5'>詳細資料</b><b class='flag-5'>說明</b>

    51單片機1s延時程序設計資料下載

    電子發(fā)燒友網(wǎng)為你提供51單片機1s延時程序設計資料下載的電子
    發(fā)表于 04-23 08:47 ?5次下載
    <b class='flag-5'>51</b><b class='flag-5'>單片機</b><b class='flag-5'>1s</b><b class='flag-5'>延時</b><b class='flag-5'>程序設計</b><b class='flag-5'>資料</b>下載

    【Practical】51單片機軟件延時1S

    51單片機軟件延時1S
    發(fā)表于 11-12 14:51 ?13次下載
    【Practical】<b class='flag-5'>51</b><b class='flag-5'>單片機</b>軟件<b class='flag-5'>延時</b><b class='flag-5'>1S</b>