国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

C51單片機(jī)中斷系統(tǒng)與定時器/計時器(理論部分)

這篇具有很好參考價值的文章主要介紹了C51單片機(jī)中斷系統(tǒng)與定時器/計時器(理論部分)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

前言

文章的開始,有人可能會問,我們在前幾節(jié)課學(xué)了延時函數(shù),為什么不用延時函數(shù)來取代定時器,而必須學(xué)定時器呢?這里,有如下幾個理由:

1.使用delay函數(shù)時,單片機(jī)的cpu做不了其他事情,只能等待延時結(jié)束。

2.用了定時器cpu就可以做其他的事情,只要定時器溢出時,執(zhí)行一下中斷即可。

3.這就相當(dāng)于原來用delay的時候cpu得自己數(shù)數(shù)計時,有了定時器就相當(dāng)于cpu有了一個鬧鐘,時間一到就響了,提醒你做該做的事情。

一.定時器的工作模式

STC89C52的定時器1和定時器2有如下四種工作模式

C51單片機(jī)中斷系統(tǒng)與定時器/計時器(理論部分)

?我們通常使用的是工作模式1,即16位定時器/計數(shù)器,本文所使用的也是工作模式1,所以其他工作模式便不再過多介紹。有興趣的小伙伴可以自行了解。

下面的配圖即為工作模式1的流程圖

C51單片機(jī)中斷系統(tǒng)與定時器/計時器(理論部分)流程圖詳解:

定時器分為三大部分: 從左到右的圈圈里分別是時鐘、計數(shù)系統(tǒng)、中斷系統(tǒng)

1.我們先來看時鐘部分,首先,我們所使用的單片機(jī)在時鐘部分接入的是12T mode,往下走,遇到一個C/T開關(guān),C->counter 計數(shù)器,當(dāng)這個開關(guān)選1時,則為計數(shù)器模式。 T->timer 定時器,當(dāng)這個開關(guān)選0時即為定時器,也就是我們本節(jié)課所需要使用到的。當(dāng)定時器\計數(shù)器 模式開啟時,時鐘系統(tǒng)會在固定的時間間隔內(nèi)向計數(shù)系統(tǒng)發(fā)送一次脈沖,當(dāng)計數(shù)系統(tǒng)的寄存器(TH0,TH1)溢出時

便將中斷標(biāo)志位TF0置1,標(biāo)志著中斷信號的傳遞。

2.我們再來看計數(shù)系統(tǒng)部分,這部分包括上下兩部分,我們先來講下面部分。下面部分是一個開關(guān)的控制系統(tǒng),也就是上半部分的那個開關(guān),這個開關(guān)決定著定時器0是否開啟,時鐘的脈沖信號是否能傳輸?shù)接嫈?shù)系統(tǒng)中。這個開關(guān)有兩種控制模式。

1.GATE門控端置0,由TR0單獨控制,若TR0為1,則開關(guān)閉合,反之開關(guān)則斷開。

2.GATE門控端置1,由外部引腳INT0和TR0共同控制,這種情況下下,INT0和TR0必須都為1才可以實現(xiàn)開關(guān)的閉合,否則開關(guān)都是斷開。

原因:GATE門控端出來的那個三角形是一個“非門”,如果給GATE賦值0,則出來是1,如果給GATE賦值1,則出來是0。三角形出來的又遇到一個圖形,這個圖形是“或門”。最后一個圖形是“與門”,這里的“非門、或門、與門”與C語言中的與或非完全相同。這就解釋了上面的兩種情況。

3.最后我們再來看看中斷系統(tǒng):

C51單片機(jī)中斷系統(tǒng)與定時器/計時器(理論部分)

?當(dāng)計數(shù)系統(tǒng)溢出時,中斷標(biāo)志位TF0置1,向中斷系統(tǒng)請求中斷,我們本次使用的是定時器0,所以配置T0中斷即可,ET0為定時器0的中斷寄存器,置1開啟即可,EA為總使能,相當(dāng)于總開關(guān),也置1開啟即可,最后就是PT0優(yōu)先級寄存器,系統(tǒng)默認(rèn)定時器0為低優(yōu)先級,所以配置0即可。

總結(jié):1.定時器原理:系統(tǒng)時鐘每隔一段時間向計數(shù)系統(tǒng)發(fā)送脈沖,計數(shù)系統(tǒng)由TR0直接控制或者TR0和GATE門控端共同控制,當(dāng)定時器開關(guān)被打開后,脈沖發(fā)送到計數(shù)系統(tǒng),當(dāng)計數(shù)系統(tǒng)溢出時,中斷標(biāo)志位TF0被置1,向中斷系統(tǒng)發(fā)送中斷請求,中斷系統(tǒng)通過配置中斷寄存器從而產(chǎn)生中斷。

2.定時器0所用的16位定時器是由兩個八位寄存器拼接在一起的,每次中斷結(jié)束后都置0,所以需要賦初值,而后面所講的串口用的是8位重裝定時器,和這個有所差別

3.高優(yōu)先級的中斷可以打斷低優(yōu)先級的中斷。

4.單片機(jī)通過配置寄存器來控制內(nèi)部電路的連接

5.TCON是定時器控制寄存器,也就是TR0,TF0,TR1,TF1等寄存器

6.TMOD是定時器模式寄存器,控制單片機(jī)位定時器1或者定時器0,其中,高4位配0,低四位中的最后兩位M1、M0分別配置為0 1,則為定時器0的工作模式1(常用),若低四位配置為0,高四位中的M1、M0分別配置為0 1則為定時器1的工作模式1。(常用)

C51單片機(jī)中斷系統(tǒng)與定時器/計時器(理論部分)

?7.可位尋址就是可以單獨賦值,如LED,可以單獨對每個燈進(jìn)行配置。

8.不可位尋址只能整體賦值,TMOD就是不可位尋址,只能整體賦值,下節(jié)我們會講到TMOD的具體賦值方法。文章來源地址http://www.zghlxwxcb.cn/news/detail-414054.html

到了這里,關(guān)于C51單片機(jī)中斷系統(tǒng)與定時器/計時器(理論部分)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • C51單片機(jī)——通過使用定時器控制LED閃滅

    目錄 0 引言 1 定時的原理 1.1 生活中的定時 1.2單片機(jī)中的定時器 2 C語言程序設(shè)計 2.1 定時器的內(nèi)部功能 2.2 設(shè)置寄存器 2.3 實驗程序 3 有兩個小問題(算是延伸吧) 3.1 只能0.05s閃一次嗎? 3.2 每次都要在草稿紙手算初始值好麻煩

    2024年02月06日
    瀏覽(25)
  • 51單片機(jī) | 定時器中斷實驗

    51單片機(jī) | 定時器中斷實驗

    ??這一節(jié)介紹51單片機(jī)的定時器中斷。 STC89C5X 含有 3 個定時器:定時器 0、定時器 1、定時器 2(注意: 51 系列單片機(jī)一定有基本的 2 個定時器(定時器 0 和定時器 1),但不全有 3 個中斷,需要查看芯片手冊,通常我們使用的是基本的 2 個定時器:定時器 0/1)。本節(jié)要實現(xiàn)

    2024年02月06日
    瀏覽(43)
  • 51 單片機(jī)【外部中斷、定時器中斷、回調(diào)函數(shù)】

    51 單片機(jī)【外部中斷、定時器中斷、回調(diào)函數(shù)】

    ?這里的外部中斷類似監(jiān)聽器,時時刻刻監(jiān)視某引腳的電平變化;這里的定時器中斷類似于定時任務(wù),可以定時執(zhí)行某函數(shù);這里將回調(diào)函數(shù)和中斷結(jié)合起來,案例里有點設(shè)計模式的味道(忘了哪個了,也可能就是感覺,關(guān)于高層不能調(diào)用低層的解決),也有點函數(shù)式編程的

    2024年02月04日
    瀏覽(36)
  • 【51單片機(jī)】:定時器的詳解(包括對單片機(jī)定時解釋、各類定時方式,以及中斷方式)

    【51單片機(jī)】:定時器的詳解(包括對單片機(jī)定時解釋、各類定時方式,以及中斷方式)

    ? ? ? ? ? 51定時/計數(shù)器的詳解。 ? ? ? ? ? ? ? ? ? 碼字不易,如有幫助請收藏,點贊哦。 ? ? ? ? 前提:首先我們知道51單片機(jī)內(nèi)部有21~26個特殊功能寄存器: P.x口寄存器:P0、P1、P2、P3 數(shù)據(jù)指針寄存器:DP0H、DP0L、DP1H、DP1L 定時器: TH1、TL1、TH0、TL0、TMOD、TCON 串口:

    2024年02月07日
    瀏覽(51)
  • C51單片機(jī)定時器2實現(xiàn)SG90舵機(jī)控制

    C51單片機(jī)定時器2實現(xiàn)SG90舵機(jī)控制

    談起舵機(jī)最初的了解應(yīng)用于航模,偶然的機(jī)會在網(wǎng)上看到有牛人使用多個舵機(jī)做人形機(jī)器人的關(guān)節(jié),感覺這小東西很有趣,蒙發(fā)了買來學(xué)習(xí)學(xué)習(xí)的想法,這已經(jīng)是多年前的事了,后來由于某些原因,這個想法直到今年才落地。小東西到手后,把玩了解后,本人把學(xué)習(xí)過程記錄

    2023年04月24日
    瀏覽(24)
  • 51單片機(jī)定時器中斷TMOD

    51單片機(jī)定時器中斷TMOD

    最近在學(xué)定時器中斷TMOD,寫程序時,要對定時器進(jìn)行配置 對TMOD進(jìn)行賦值時,拌了好久。。。。 如何根據(jù)所用的? ? ? 定時器0/1 ,? 工作方式0/1/2/3 ? ? ?對TMOD賦值呢? 我們知道: 1.TMOD長這樣 : ?由八位組成,前四位是T1的參數(shù);后四位是T0的參數(shù);GATE 和 C/T\\\' 不用多講,

    2024年02月12日
    瀏覽(27)
  • 51單片機(jī)中斷定時器1用法

    51單片機(jī)中斷定時器1用法

    中斷為使單片機(jī)具有對內(nèi)部或外部隨機(jī)發(fā)生的事件實時處理而設(shè)置的。 中斷技術(shù)不僅解決了快速主機(jī)與I/O設(shè)備的數(shù)據(jù)傳送問題,而且還有具有如下的優(yōu)點: 1. 分時操作:CPU可以分時為多個I/O設(shè)備服務(wù),提高了計算機(jī)的利用率。 2. 實時操作:CPU能夠及時處理應(yīng)用系統(tǒng)的隨機(jī)事

    2024年02月06日
    瀏覽(25)
  • 51單片機(jī)定時器/計數(shù)器(定時器中斷)

    51單片機(jī)定時器/計數(shù)器(定時器中斷)

    實現(xiàn)功能 通過定時器終端控制LED燈 D1 間隔一秒閃爍 單片機(jī)型號:STC89C52 定時器介紹 1、51單片機(jī)定時器原理 定時器實質(zhì)上就是一個加1計數(shù)器。它隨著計數(shù)器的輸入脈沖進(jìn)行自加1,也就是每來一個脈沖,計數(shù)器就自動加1,,當(dāng)加到定數(shù)器滿時,再輸入一個脈沖就使定時器回零

    2024年02月06日
    瀏覽(32)
  • C51單片機(jī)按鍵控制流水燈模式(定時器版本)以及定時器時鐘

    C51單片機(jī)按鍵控制流水燈模式(定時器版本)以及定時器時鐘

    ? 上篇文章我們學(xué)了關(guān)于定時器的三大組成部分及許多寄存器的概念問題,這篇文章我們就要開始講解實操部分。 首先,我們先來看看本文最后寫成的代碼: ? ? ?以上三張是代碼的主函數(shù),此外,代碼中還需用到的獨立按鍵檢測代碼在下面: ?注意:頭文件中#ifndef和#def

    2023年04月17日
    瀏覽(26)
  • 51單片機(jī)定時器中斷按鍵消抖(無延時)

    單片機(jī)入門學(xué)習(xí)記錄(二) 在機(jī)械按鍵的觸點閉合和斷開時,都會產(chǎn)生抖動,為了保證系統(tǒng)能正確識別按鍵的開關(guān),就必須對按鍵的抖動進(jìn)行處理。按鍵的抖動對于人類來說是感覺不到的,但對單片機(jī)來說,則是完全可以感應(yīng)到的,而且還是一個很“漫長”的過程,因為單片

    2024年02月14日
    瀏覽(23)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包