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

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

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

各類寄存器的計(jì)算以及中斷

電子設(shè)計(jì) ? 來源:電子設(shè)計(jì) ? 作者:電子設(shè)計(jì) ? 2020-10-30 11:02 ? 次閱讀

一、定時(shí)器 / 計(jì)數(shù)器簡(jiǎn)介

設(shè)置等待時(shí)間,到達(dá)等待時(shí)間之后執(zhí)行指定的硬件操作。

定時(shí)器最基本的功能就是定時(shí),比如說定時(shí)發(fā)送串口數(shù)據(jù),定時(shí)采集 AD 數(shù)據(jù),如果將定時(shí)器和 IO 結(jié)合起來就可以實(shí)現(xiàn)非常豐富的功能,可以測(cè)量輸入信號(hào)的脈沖寬度,可以產(chǎn)生 PWM 方波,定時(shí)器產(chǎn)生 PWM 控制電機(jī)狀態(tài)是工業(yè)控制的普通。

二、定時(shí)器 / 計(jì)數(shù)器相關(guān)寄存器介紹

1、計(jì)數(shù)寄存器 TH 和 HL

T/C 是 16 位的,計(jì)數(shù)寄存器由 TH 高 8 位和 TL 低 8 位構(gòu)成。

對(duì)應(yīng) T/C0 為 TH0 和 TL0, 對(duì)應(yīng) T/C1 為 TH1 和 TL1,定時(shí)器 / 計(jì)數(shù)器的初始值通過 TH0/TL0 和 TH1/TL1 設(shè)置。

2、定時(shí)器 / 計(jì)數(shù)器控制寄存器 TCON

3、T/C 的方式控制寄存器 TMOD


三、定時(shí)器的計(jì)數(shù)初始值計(jì)算

四、中斷源及中斷信號(hào)

五、參考代碼

/******************************************************


功能描述:LED 會(huì)循環(huán)點(diǎn)亮 1 秒,熄滅 1 秒。


使用單片機(jī)內(nèi)部定時(shí)器可實(shí)現(xiàn)準(zhǔn)確延時(shí)


******************************************************/


#include "reg52.h"


// 此文件中定義了單片機(jī)的一些特殊功能寄存器


typedef unsigned int u16; // 對(duì)數(shù)據(jù)類型進(jìn)行聲明定義


typedef unsigned char u8;


sbit led=P2^0; // 定義 P20 口是 led

void Timer0Init()


{


TMOD|=0X01; // 選擇為定時(shí)器 0 模式,工作方式 1(16 位),僅用 TR0 打開啟動(dòng)


TH0=0XFC; // 給定時(shí)器賦初值,定時(shí) 1ms 高 8 位


TL0=0X18; // 低 8 位(可用軟件計(jì)算,公司參考上面)


ET0=1; // 允許定時(shí)器 0 中斷


EA=1; // 打開總中斷


TR0=1; // 打開定時(shí)器 0,啟動(dòng) T/C0 運(yùn)行


}


void main()


{


Timer0Init();


while(1);


}

void Timer0() interrupt 1 //1 是中斷號(hào)


{


static u16 i;


TH0=0XFC; // 計(jì)數(shù)器寄存高 8 位重新載入


TL0=0X18; // 計(jì)數(shù)器寄存低 8 位重新載入


i++;


if(i==1000)


{


i=0;


led=~led;


}


}


審核編輯 黃昊宇

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

    關(guān)注

    31

    文章

    5343

    瀏覽量

    120448
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    寄存器間接尋址和寄存器尋址的區(qū)別

    寄存器間接尋址和寄存器尋址是計(jì)算機(jī)體系結(jié)構(gòu)中兩種重要的尋址方式,它們?cè)谥噶顖?zhí)行過程中起著關(guān)鍵作用。下面將從定義、原理、特點(diǎn)、應(yīng)用場(chǎng)景以及區(qū)別等方面對(duì)這兩種尋址方式進(jìn)行詳細(xì)闡述。
    的頭像 發(fā)表于 10-05 17:13 ?1565次閱讀

    通用寄存器是什么意思

    計(jì)算機(jī)體系結(jié)構(gòu)中,通用寄存器是中央處理(CPU)內(nèi)部最為核心和基礎(chǔ)的組成部分之一。它們被設(shè)計(jì)為能夠存儲(chǔ)和傳輸各種類型的數(shù)據(jù)和指令,是CPU進(jìn)行數(shù)據(jù)處理和運(yùn)算的關(guān)鍵工具。通用寄存器
    的頭像 發(fā)表于 09-05 14:13 ?998次閱讀

    寄存器的類型和作用

    計(jì)算機(jī)科學(xué)中,寄存器(Register)是一種高速存儲(chǔ)單元,它位于CPU內(nèi)部,與CPU的運(yùn)算單元和邏輯控制單元緊密相連。寄存器的主要作用是暫時(shí)存儲(chǔ)指令、操作數(shù)和地址等臨時(shí)數(shù)據(jù),以便CPU快速訪問和處理。由于
    的頭像 發(fā)表于 09-05 14:11 ?1903次閱讀

    寄存器故障分析

    寄存器故障分析是計(jì)算機(jī)硬件維護(hù)與系統(tǒng)穩(wěn)定性保障中的重要環(huán)節(jié)。寄存器作為計(jì)算機(jī)中的關(guān)鍵組成部分,負(fù)責(zé)存儲(chǔ)和傳輸數(shù)據(jù),其穩(wěn)定性和可靠性直接影響到整個(gè)計(jì)算
    的頭像 發(fā)表于 08-29 11:26 ?1037次閱讀

    寄存器是什么意思?寄存器是如何構(gòu)成的?

    計(jì)算機(jī)科學(xué)中,寄存器(Register)是一個(gè)高速存儲(chǔ)單元,它位于中央處理(CPU)內(nèi)部,用于存儲(chǔ)計(jì)算機(jī)程序執(zhí)行過程中所需要的數(shù)據(jù)、指令地址或狀態(tài)信息。
    的頭像 發(fā)表于 08-02 18:23 ?4266次閱讀
    <b class='flag-5'>寄存器</b>是什么意思?<b class='flag-5'>寄存器</b>是如何構(gòu)成的?

    寄存器尋址和直接尋址的區(qū)別

    寄存器尋址和直接尋址是計(jì)算機(jī)指令系統(tǒng)中的兩種基本尋址方式。它們?cè)谥噶畹膱?zhí)行過程中起著至關(guān)重要的作用,決定了指令操作數(shù)的來源和目標(biāo)。下面我們將介紹這兩種尋址方式的特點(diǎn)、區(qū)別以及在實(shí)際應(yīng)用中的優(yōu)缺點(diǎn)
    的頭像 發(fā)表于 07-12 10:42 ?1863次閱讀

    寄存器尋址的實(shí)現(xiàn)方式

    計(jì)算機(jī)體系結(jié)構(gòu)中,寄存器尋址是一種常見的尋址方式,它允許程序直接訪問CPU內(nèi)部的寄存器。寄存器尋址可以提高程序的執(zhí)行效率,因?yàn)樗苊饬藢?duì)內(nèi)存的訪問。
    的頭像 發(fā)表于 07-12 10:36 ?685次閱讀

    寄存器有哪幾種?可以實(shí)現(xiàn)什么功能?

    寄存器計(jì)算機(jī)中用于存儲(chǔ)數(shù)據(jù)和指令的高速存儲(chǔ)設(shè)備,是計(jì)算機(jī)硬件的重要組成部分。寄存器的種類很多,不同的寄存器具有不同的功能。 通用
    的頭像 發(fā)表于 07-12 10:32 ?1184次閱讀

    寄存器分為基本寄存器和什么兩種

    寄存器計(jì)算機(jī)中用于存儲(chǔ)數(shù)據(jù)的高速存儲(chǔ)單元,它們是CPU內(nèi)部的重要組成部分。寄存器可以分為基本寄存器和擴(kuò)展寄存器兩種類型。 一、基本
    的頭像 發(fā)表于 07-12 10:31 ?1403次閱讀

    什么是寄存器?有哪些功能和應(yīng)用?

    計(jì)算機(jī)科學(xué)中,寄存器(Register)是一個(gè)高速存儲(chǔ)單元,用于存儲(chǔ)計(jì)算機(jī)程序執(zhí)行過程中所需要的數(shù)據(jù)、指令地址或狀態(tài)信息。它們是計(jì)算機(jī)體系結(jié)構(gòu)中至關(guān)重要的組成部分,對(duì)
    的頭像 發(fā)表于 05-30 17:14 ?1.3w次閱讀

    寄存器和內(nèi)存的區(qū)別

    計(jì)算機(jī)體系結(jié)構(gòu)中,寄存器和內(nèi)存是兩個(gè)至關(guān)重要的組成部分。它們各自承擔(dān)著不同的角色,共同確保計(jì)算機(jī)系統(tǒng)的正常運(yùn)行。本文將對(duì)寄存器和內(nèi)存進(jìn)行詳細(xì)的介紹,包括它們的定義、功能
    的頭像 發(fā)表于 05-12 17:11 ?2313次閱讀

    寄存器的定義和功能 寄存器的分類和工作原理

    計(jì)算機(jī)系統(tǒng)中,寄存器作為一種特殊的存儲(chǔ)設(shè)備,扮演著至關(guān)重要的角色。它是中央處理(CPU)內(nèi)部的重要組成部分,用于暫時(shí)存儲(chǔ)數(shù)據(jù)和指令,以便于CPU進(jìn)行高速的運(yùn)算和控制。本文將對(duì)寄存器
    的頭像 發(fā)表于 05-12 17:07 ?5615次閱讀

    存儲(chǔ)寄存器的區(qū)別

    計(jì)算機(jī)系統(tǒng)中,存儲(chǔ)寄存器是兩個(gè)至關(guān)重要的組成部分,它們各自承擔(dān)著不同的功能和角色。存儲(chǔ)器用于存放程序和數(shù)據(jù),是計(jì)算機(jī)系統(tǒng)的記憶設(shè)備;而寄存器
    的頭像 發(fā)表于 05-12 16:55 ?2275次閱讀

    CPU的6個(gè)主要寄存器

    CPU寄存器是中央處理內(nèi)的組成部分,是有限存貯容量的高速存貯部件。寄存器是CPU內(nèi)部的元件,包括通用寄存器、專用寄存器和控制
    的頭像 發(fā)表于 02-03 15:15 ?4379次閱讀

    s3c2410中斷控制模塊的中斷源狀態(tài)寄存器是?

    事件的寄存器。 中斷計(jì)算機(jī)系統(tǒng)中一種重要的機(jī)制,它可以中斷當(dāng)前的程序執(zhí)行,轉(zhuǎn)而執(zhí)行一個(gè)與當(dāng)前事件相關(guān)的特定程序,然后再返回原來的程序繼續(xù)執(zhí)行。S3C2410中的
    的頭像 發(fā)表于 01-05 17:28 ?754次閱讀