新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > MCS-51單片機(jī)特殊功能寄存器詳解

MCS-51單片機(jī)特殊功能寄存器詳解

作者: 時(shí)間:2016-11-29 來(lái)源:網(wǎng)絡(luò) 收藏
1、 定時(shí)器/計(jì)數(shù)器的方式寄存器TMOD

TMOD是一個(gè)8位的特殊功能寄存器,對(duì)應(yīng)的地址是89H,不可位尋址。A 主要完成三個(gè)功能:
*確定選擇定時(shí)器還是計(jì)數(shù)器;
*選擇何種工作方式;
*是否借用外中斷控制定時(shí)器和計(jì)數(shù)器的啟停;
B TMOD的低4位是控制T0的字段(T0--P3.4 定時(shí)器/計(jì)數(shù)器0外部事件脈沖輸入端)

TMOD的高4位是控制T1的字段(T1--P3.5定時(shí)器/計(jì)數(shù)器1外部事件脈沖輸入端)
C 控制字的格式和含義

a、 GATE(TMOD.7)
分為兩種情況:GATE=0,定時(shí)器的啟停和INT1無(wú)關(guān),只取決于TR0;
GATE=1,定時(shí)器的啟停不僅要由TR0來(lái)控制,而且要INT1引腳的控制,只有二者
都為高電平時(shí)定時(shí)器 才開(kāi)始工作;

b、 C/T(TMOD.6)

分為兩種情況:C/T=0,用作定時(shí)器;
C/T=1,用作計(jì)數(shù)器;

d、 M1(TMOD.5),M0(TMOD.4)
用M1,M0來(lái)控制定時(shí)器/計(jì)數(shù)器的4種工作方式:
*方式0:M1=0,M0=0.13位定時(shí)/計(jì)數(shù)方式
*方式1:M1=0,M0=1.16位定時(shí)/計(jì)數(shù)器
*方式2,M1=1,M0=0.8位初值自動(dòng)重新裝入的8位定時(shí)/計(jì)數(shù)器
*方式3,M1=1,M0=1.僅適用于T0,分為兩個(gè)8位計(jì)數(shù)器,T1停止計(jì)數(shù)

2、定時(shí)器/計(jì)數(shù)器控制寄存器TCON
TCON是一個(gè)8位的特殊功能寄存器,對(duì)應(yīng)的地址為88H,可為尋址。
A 控制字的格式和含義
a、TF1(TCON.7),TF0(TCON.5)----T1、T0計(jì)數(shù)溢出標(biāo)志位
當(dāng)計(jì)數(shù)器計(jì)數(shù)溢出時(shí),該位置“1”。使用查詢方式時(shí),此位作為狀態(tài)位供cpu
查詢,但應(yīng)注意在查詢?cè)撐挥行Ш髴?yīng)以軟件方法及時(shí)將該位清“0”。使用中斷
方式時(shí),此位作為中斷申請(qǐng)標(biāo)志位,進(jìn)入中斷服務(wù)程序后由硬件自動(dòng)清0.
b、TR1(TCON.6),TR0(TCON.4)----計(jì)數(shù)運(yùn)行控制位
TR1(TR0)=1,啟動(dòng)定時(shí)/計(jì)數(shù)器工作的必要條件,還與GATE位的狀態(tài)有關(guān)。
TR1(TR0)=0,停止定時(shí)/計(jì)數(shù)器工作。
該位可由軟件置1或清0.
C、 IE1(TCON.3),IE0(TCON.1)----外部中斷INT1(P3.3)、INT0(P3.2)的中斷請(qǐng)求標(biāo)志位
當(dāng)有外部的中斷請(qǐng)求時(shí),INT1(INT0)=1(有硬件完成),在cpu響應(yīng)中斷后,由硬件將
IE1(IE0)清0.
d、 IT1(TCON.2),IT0(TCON.0)----INT1(INT0)觸發(fā)方式控制位
可由軟件進(jìn)行置位和復(fù)位。IT0(IT1)=0,INT0(INT1)為低電平觸發(fā)方式;
IT0(IT1)=1,INT0(INT1)為負(fù)跳變觸發(fā)方式;

3、中斷允許寄存器IE
在51中斷系統(tǒng)中,中斷的允許或禁止是由片內(nèi)可進(jìn)行位尋址的8位中斷允許寄存器IE來(lái)
控制的

EA(IE.7):總開(kāi)關(guān),如果它等于0,則所有中斷都不允許;
ES(IE.4):串行口中斷允許;
ET1:定時(shí)器1中斷允許;
EX1:外中斷1中斷允許;
ET0:定時(shí)器0中斷允許;
EX0;外中斷0中斷允許;
4、5個(gè)中斷源的優(yōu)先級(jí)
單片機(jī)的中斷服務(wù)入口地址如下,它們的自然優(yōu)先級(jí)由高到低排列。
外中斷0:0003H;
定時(shí)器0:000BH;
外中斷1:0013H;
定時(shí)器1:001BH;
串口:0023H;
采用c51的編程語(yǔ)言,該語(yǔ)言中斷服務(wù)函數(shù)的完整語(yǔ)法如下:
返回值 函數(shù)名稱(【參數(shù)】)【模式】【重入】interrupt n 【using n】
interrupt對(duì)應(yīng)的是中斷源的編號(hào),而【using】決定了使用寄存器的組號(hào)。這里,需要對(duì)
寄存器的組號(hào)進(jìn)行簡(jiǎn)單的解釋。51系統(tǒng)中有4個(gè)寄存器組,具體的位置取決于psw(程序狀態(tài)字)
的兩位RS0、RS1的設(shè)置。當(dāng)運(yùn)行一個(gè)中斷任務(wù)時(shí),采用不同的寄存器組。在c51
中,寄存器組的選擇就取決于using后的變量的指定,變量位0~3的整數(shù)。
在這里給出不同中斷服務(wù)程序的c51程序?qū)懛ǎ?br />*外中斷INT0--------void intsvr0(void) interrupt 0 using 1
*定時(shí)/計(jì)數(shù)器T0-----void timer0(void) interrupt 1 using 1
*外中斷INT1--------void intsvr0(void) interrupt 2 using 1
*定時(shí)/計(jì)數(shù)器T1-----void timer0(void) interrupt 3 using 1
*串口中斷----------void serial0 interrupt 4 using 1
P3口的代替功能
寄存器地址B0H,位尋址B7H~B0H。
引腳P3.0P3.1P3.2P3.3P3.4P3.5P3.6P3.7
代替功能RXDTXD/INT0/INT1T0T1/WR/RD

TCON:定時(shí)器控制寄存器
寄存器地址88H,位尋址8FH~88H。
位地址8F8E8D8C8B8A8988
位符號(hào)TF1TR1TF0TR0IE1IT1IE0IT0
TF0(TF1)——計(jì)數(shù)溢出標(biāo)志位,當(dāng)計(jì)數(shù)器計(jì)數(shù)溢出時(shí),該位置1。
TR0(TR1)——定時(shí)器運(yùn)行控制位
當(dāng)TR0(TR1)=0 停止定時(shí)器/計(jì)數(shù)器工作
當(dāng)TR0(TR1)=1 啟動(dòng)定時(shí)器/計(jì)數(shù)器工作
IE0(IE1)——外中斷請(qǐng)求標(biāo)志位
當(dāng)CPU采樣到P3.2(P3.3)出現(xiàn)有效中斷請(qǐng)求時(shí),此位由硬件置1。在中斷響應(yīng)完成后轉(zhuǎn)向中斷服務(wù)時(shí),再由硬件自動(dòng)清0。
IT0(IT1)——外中斷請(qǐng)求信號(hào)方式控制位
當(dāng)IT0(IT1)=1 脈沖方式(后沿負(fù)跳有效)
當(dāng)IT0(IT1)=0 電平方式(低電平有效)此位由軟件置1或清0。
TF0(TF1)——計(jì)數(shù)溢出標(biāo)志位
當(dāng)計(jì)數(shù)器產(chǎn)生計(jì)數(shù)溢出時(shí),此位由硬件置1。當(dāng)轉(zhuǎn)向中斷服務(wù)時(shí),再有硬件自動(dòng)清0。計(jì)數(shù)溢出的標(biāo)志位的使用有兩種情況:采用中斷方式時(shí),作中斷請(qǐng)求標(biāo)志位來(lái)使用;采用查詢方式時(shí),作查詢狀態(tài)位來(lái)使用。
上一頁(yè) 1 2 下一頁(yè)

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉