MCS-51單片機(jī)控制字詳解
寄存器地址D0H,位尋址D7H~D0H。
位地址 | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
位符號(hào) | CY | AC | F0 | RS1 | RS0 | OV | - | P |
CY——進(jìn)位標(biāo)記
AC——半進(jìn)位標(biāo)記
F0——用戶設(shè)定標(biāo)記
RS1、RS0——4個(gè)工作寄存器區(qū)的選擇位。
VO——溢出標(biāo)記
P——奇偶校驗(yàn)標(biāo)記
PCON:電源控制器及波特率選擇寄存器
字節(jié)地址=87H,不可位尋址
SMOD | - | - | POF | GF1 | GF0 | PD | IDL |
SMOD——波特率倍增位
GF1、GF0——用戶通用標(biāo)記
PD——掉電方式控制位,PD=1時(shí)進(jìn)入掉電模式
IDL——空閑方式控制位,IDL=1時(shí)進(jìn)入空閑方式
在AT89S51中PCON.4是電源斷電標(biāo)記位POF,上電是為1
SCON:串行口控制寄存器
寄存器地址98H,位尋址9FH~98H。
位地址 | 9F | 9E | 9D | 9C | 9B | 9A | 99 | 98 |
位符號(hào) | SM0 | SM1 | SM2 | REN | TB8 | RB8 | TI | RI |
SM0、SM1:串行口工作方式選擇位
SM2:多機(jī)通信控制位
REN:允許/禁止串行口接收的控制位
TB8:在方式2和方式3中,是被發(fā)送的第9位數(shù)據(jù),可根據(jù)需要由軟件置1或清零,也可以作為奇偶校驗(yàn)位,在方式1中是停止位。
RB8:在方式2和方式3中,是被接收的第9位數(shù)據(jù)(來自第TB8位);在方式1中,RB8收到的是停止位,在方式0中不用。
TI——串行口發(fā)送中斷請求標(biāo)志位
當(dāng)發(fā)送完一幀串行數(shù)據(jù)后,由硬件置1;在轉(zhuǎn)向中斷服務(wù)程序后,用軟件清0。
RI——串行口接收中斷請求標(biāo)志位
當(dāng)接收完一幀串行數(shù)據(jù)后,由硬件置1;在轉(zhuǎn)向中斷服務(wù)程序后,用軟件清0。
TMOD:工作方式控制寄存器
寄存器地址89H,不可位尋址。
位序 | B7 | B6 | B5 | B4 | B3 | B2 | B1 | B0 |
位符號(hào) | GATE | C/T | M1 | M0 | GATE | C/T | M1 | M0 |
GATE——門控位
當(dāng)=0時(shí),以TR0(或TR1)狀態(tài)決定定時(shí)器/計(jì)數(shù)器的啟動(dòng)或禁止
當(dāng)=1時(shí),以TR0與INT0(或TR1與INT1)狀態(tài)決定定時(shí)器/計(jì)數(shù)器的啟動(dòng)或禁止
C/T=0 定時(shí)/計(jì)數(shù)工作方式選擇位 0為定時(shí)器 1為計(jì)數(shù)器。
M1M0——工作方式選擇位
M1M0=00 方式0:是13位計(jì)數(shù)結(jié)構(gòu)的工作方式,其計(jì)數(shù)器由TH全部8位和TL的低5位構(gòu)成。
M1M0=01 方式1:是16位計(jì)數(shù)結(jié)構(gòu)的工作方式,計(jì)數(shù)器由TH全部8位和TL全部8位構(gòu)成。
M1M0=10 方式2:自動(dòng)裝入8位計(jì)數(shù)器。
M1M0=11 方式3:定時(shí)器/計(jì)數(shù)器0被拆成兩個(gè)獨(dú)立的8位計(jì)數(shù)器TL0和TH0。其中TL0既可以計(jì)數(shù)使用,又可以定時(shí)使用,定時(shí)器/計(jì)數(shù)器0的各控制位和引腳信號(hào)全歸它使用。
T2MOD:工作方式控制寄存器
寄存器地址0C9H,不可位尋址
- | - | - | - | - | - | T2OE | DCEN |
T2OE:定時(shí)器2輸出允許位,當(dāng)=1時(shí),P1.0/T2引腳輸出連續(xù)脈沖信號(hào)
DCEN:當(dāng)=1時(shí),T2配置成向上向下計(jì)數(shù)器
P3口的代替功能
寄存器地址B0H,位尋址B7H~B0H。
引腳 | P3.0 | P3.1 | P3.2 | P3.3 | P3.4 | P3.5 | P3.6 | P3.7 |
代替功能 | RXD | TXD | /INT0 | /INT1 | T0 | T1 | /WR | /RD |
TCON:定時(shí)器控制寄存器
寄存器地址88H,位尋址8FH~88H。
位地址 | 8F | 8E | 8D | 8C | 8B | 8A | 89 | 88 |
位符號(hào) | TF1 | TR1 | TF0 | TR0 | IE1 | IT1 | IE0 | IT0 |
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)——外中斷請求標(biāo)志位
當(dāng)CPU采樣到P3.2(P3.3)出現(xiàn)有效中斷請求時(shí),此位由硬件置1。在中斷響應(yīng)完成后轉(zhuǎn)向中斷服務(wù)時(shí),再由硬件自動(dòng)清0。
IT0(IT1)——外中斷請求信號(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í),作中斷請求標(biāo)志位來使用;采用查詢方式時(shí),作查詢狀態(tài)位來使用。
T2CON:定時(shí)器控制寄存器
寄存器地址0C8H,位尋址0C8H~0CFH。
位地址 | CF | CE | CD | CC | CB | CA | C9 | C8 |
位符號(hào) | TF2 | EXF2 | RCLK | TCLK | EXEN2 | TR2 | C/T2 | CP/RL2 |
TF2:T2溢出標(biāo)記
當(dāng)T2溢出時(shí)TF2=1,TD2只能用軟件清除
當(dāng)RCLK=1或TCLK=1時(shí),TF2將不置位
EXF2:T2外部標(biāo)記
當(dāng)EXEN2=1時(shí),T2EX/P1.1引腳上的負(fù)跳變引起T2的捕捉/重裝操作,此時(shí)EXF2=1。在T2中斷允許時(shí),EXF2=1將引起中斷,EXF2只能用軟件清除。在T2的向上、向下計(jì)數(shù)模式下(DCEN=1)EXF2的置位將不引起中斷。
RCLK:接收時(shí)鐘允許
當(dāng)RCLK=1時(shí),T2的溢出脈沖可用作串行口的接收時(shí)鐘信號(hào),適于串行口模式1、3當(dāng)RCLK=0時(shí),T1的溢出脈沖用作串行口接收時(shí)鐘信號(hào)
TCLK:發(fā)送時(shí)鐘允許
EXEN2:T2外部事件(引起捕捉/重裝的外部信號(hào))允許
當(dāng)EXEN2=1時(shí),如果T2沒有作串行時(shí)鐘輸出(即RCLK+TCLK=0),則在T2EX/P1.1引腳跳變將引起T2的捕捉/重裝操作;
當(dāng)EXEN2=0時(shí),在T2EX引腳的負(fù)跳變將不起作用
TR2:T2的啟動(dòng)/停止控制
C/T2:計(jì)數(shù)定時(shí)
CP/RL2:捕捉/重裝選擇
當(dāng)CP/RL2=1且EXEN2=1時(shí),T2EX/P1.1引腳的負(fù)跳變將引起捕捉操作
當(dāng)CP/RL2=0且EXEN2=1時(shí),T2EX/P1.1引腳的負(fù)跳變將引起重裝操作
當(dāng)CP/RL2=0且EXEN2=0時(shí),T2的溢出將引起T2的自動(dòng)重裝操作
當(dāng)RCLK+TCLK=1時(shí),CP/RL2控制位不起作用,T2被強(qiáng)制工作于重裝方式。重裝方式發(fā)生于T2溢出時(shí),常用來作波特率發(fā)生器。
IE:中斷允許控制寄存器
寄存器地址A8H,位尋址AFH~A8H。
位地址 | AF | AE | AD | AC | AB | AA | A9 | A8 |
位符號(hào) | EA | / | ET2 | ES | ET1 | EX1 | ET0 | EX0 |
EA:中斷允許總控制位
當(dāng)EA=0時(shí),中斷總禁止。
當(dāng)EA=1時(shí),中斷總允許后中斷的禁止與允許由各中斷源的中斷允許控制位進(jìn)行設(shè)置。
EX0( EX1):外部中斷允許控制位
當(dāng)EX0( EX1)=0 禁止外中斷
當(dāng)EX0( EX1)=1 允許外中斷
ET0(EX1):定時(shí)/計(jì)數(shù)中斷允許控制位
當(dāng)ET0(ET1)=0禁止定時(shí)(或計(jì)數(shù))中斷
當(dāng)ET0(ET1)=1允許定時(shí)(或計(jì)數(shù))中斷
ET2:定時(shí)器2中斷允許控制位,在AT89S52、AT89C52中
ES:串行中斷允許控制位
當(dāng)ES=0禁止串行中斷
當(dāng)ES=1允許串行中斷
IP:中斷優(yōu)先級控制寄存器
寄存器地址B8H,位尋址BFH~B8H。
位地址 | BF | BE | BD | BC | BB | BA | B9 | B8 |
位符號(hào) | / | / | PT2 | PS | PT1 | PX1 | PT0 | PX0 |
PX0——外部中斷0優(yōu)先級設(shè)定位
PT0——定時(shí)中斷0優(yōu)先級設(shè)定位
PX1——外部中斷1優(yōu)先級設(shè)定位
PT1——定時(shí)中斷1優(yōu)先級設(shè)定位
PS——串口中斷優(yōu)先級設(shè)定位
PT2——定時(shí)器2優(yōu)先級設(shè)定位
AUXR:輔助寄存器
字節(jié)地址=8EH,不可位尋址
- | - | - | WDIDLE | DISRTO | - | - | DISALE |
WDIDLE:WTD在空閑模式下的禁止/允許位
當(dāng)WDIDLE=0時(shí),WDT在空閑模式下繼續(xù)計(jì)數(shù)
當(dāng)WDIDLE=1時(shí),WDT在空閑模式下暫停計(jì)數(shù)
DISRTO:禁止/允許WDT溢出時(shí)的復(fù)位輸出
當(dāng)DISRTO=0時(shí),WDT定時(shí)器溢出時(shí),在RST引腳輸出一個(gè)高電平脈沖
當(dāng)DISRT0=1時(shí),RST引腳為輸入腳
DISALE :ALE禁止/允許位
當(dāng)DISALE=0時(shí),ALE有效,發(fā)出恒定頻率脈沖
當(dāng)DISALE=1時(shí),ALE僅在CPU執(zhí)行MOVC和MOVX類指令時(shí)有效,不訪問外寄存器時(shí),ALE不輸出脈沖信號(hào)
AUXR1:輔助寄存器1
字節(jié)地址=A2H,不可位尋址
- | - | - | - | - | - | - | DPS |
DPS:數(shù)據(jù)指針寄存器選擇位
當(dāng)DPS=0時(shí),選擇數(shù)據(jù)指針寄存器DPRT0
當(dāng)DPS=1時(shí),選擇數(shù)據(jù)指針寄存器DPRT
評論