|
MCS-51單片機(jī)內(nèi)部有一個全雙工的異步串行通信口,即串行接收和發(fā)送緩沖器(SBUF),這兩個在物理上獨立的接收發(fā)送器,既可以接收數(shù)據(jù),也可以發(fā)送數(shù)據(jù),串行口發(fā)送的過程是:先從累加器 A 中讀入 8 位數(shù)據(jù)到 SBUF,隨后在串行口有硬件自動加入起始位和停止位,構(gòu)成一個完整的幀格式,然后在移位脈沖的控制下,由 TXD端串行輸出,一個字符幀發(fā)送完后,使 TXD輸出線維持在 1 狀態(tài)下,并將 SCON 寄存器的 TI置1,通知 CPU 可以發(fā)送下一個字符幀。串行口接收的過程是:SCON 的REN 位應(yīng)處于允許接收狀態(tài)(REN=1),在此前提下,串行口采樣 RXD端,當(dāng)采樣到從 1 向0 的狀態(tài)跳變時,就認(rèn)定是接收到起始位,隨后在移位脈沖的控制下,把通過位采樣脈沖接收到的數(shù)據(jù)位移入接收寄存器中,直到停止位到來之后把停止位送入 RB8 中,并置位中斷標(biāo)志位 RI ,通知 CPU 從SBUF 取走接收到的一個字符。
|
|