MCS-51單片機(jī)的串行I/O口及控制寄存器
1、串行口的結(jié)構(gòu)
MCS-51串行口結(jié)構(gòu)框圖示于圖。由圖可見(jiàn) MCS-51單片機(jī)串行口主要由兩個(gè)物理上獨(dú)立的串行數(shù)據(jù)緩沖寄存器SBUF、發(fā)送控制器、接收控制器、輸入移位寄存器和輸出控制門(mén)組成。兩個(gè)特殊功能寄存器SCON和PCON用來(lái)控制串行口的工作方式和波特率。發(fā)送緩沖寄存器SBUF只能寫(xiě),不能讀;接收緩沖寄存器SBUF只能讀,不能寫(xiě)。兩個(gè)緩沖寄存器共用一個(gè)地址99H,可以用讀/寫(xiě)指令區(qū)分。
串行發(fā)送時(shí),通過(guò)"MOV SBUF,A”寫(xiě)指令,CPU把累加器A的內(nèi)容寫(xiě)入發(fā)送的SBUF(99H),再由TxD引腳一位一位地向外發(fā)送;串行接收時(shí),接收端從RxD一位一位地接收數(shù)據(jù),直到收到一個(gè)完整的字符數(shù)據(jù)后通知CPU,再通過(guò)"MOV A,SBUF"讀指令,CPU從接收的SBUF(99H)讀出數(shù)據(jù),送到累加器A中。發(fā)送和接收的過(guò)程可以采用中斷方式,從而可以大大提高CPU的效率。
2、串行口的控制寄存器
在MCS-51的SFR中,與串行口有關(guān)的控制寄存器有四個(gè)。其中最重要的是串行口控制寄存器SCON,在使用串行口時(shí),必須首先對(duì)它初始化。
SCON是MCS-51的一個(gè)可位尋址的SFR,串行數(shù)據(jù)通信的方式選擇、接收和發(fā)送控制以及串行口的狀態(tài)標(biāo)志均由專(zhuān)用寄存器SCON控制和指示。復(fù)位時(shí)所有位被清0。SCON的格式如下:
3、電源控制寄存器PCON
PCON主要是為CHMOS型單片機(jī)的電源控制而設(shè)置的專(zhuān)用寄存器,地址為87H。PCON的最高位SMOD是串行口波特率倍增位。當(dāng)SMOD=1時(shí),波特率加倍,復(fù)位時(shí),SMOD=0。PCON的格式如下:
其中,ES為串行口中斷允許控制位,ES=1允許RI/T1中斷,ES=0,禁止RI/TI中斷。
5、中斷優(yōu)先級(jí)寄存器IP(B8H)
其中,PS為串行口中斷優(yōu)先級(jí)控制位,該位為“1”,串行口設(shè)定為高優(yōu)先級(jí)。
編輯:admin 最后修改時(shí)間:2018-05-08