Page 97 -
P. 97
8-2 UART 的結構
8051 單晶片的串列埠是一組全雙工的 UART,即 8051 的 UART 可以在同一時間進
行串列資料的傳送與接收。8051 單晶片使用 P3.0 接腳做為串列傳輸的接收端(RXD),
P3.1 接腳做為串列傳輸的輸出端 (TXD),並利用特殊功能暫存器 (Special Function
Register,簡稱 SFR)中的串列埠緩衝器(Serial Port Buffer,簡稱 SBUF)執行串列傳輸的工
作。當串列傳輸工作設定完成之後,傳送端會存入一筆資料到 SBUF 中,並藉以引發資
料傳送的動作;當串列傳輸工作設定完成之後,接收端會將接收資料放入 SBUF 中。但
在 8051 單晶片的 UART 結構中,接收資料端與傳送資料端實際使用的暫存器並不是同
一個,只不過它們均對應到相同的定址位址,因此在傳送或接收資料時,8051 單晶片會
自動選擇使用不同的暫存器,所以 8051 的串列埠可以同時進行資料的傳送與接收。
8051 單晶片進行串列資料傳輸時,串列埠具有輸入緩衝的功能,即當串列埠接收到
一筆資料後,會把資料存放至 SBUF 中,然後繼續接收資料,並在接收或等待接收下一
筆資料的過程中處理 SBUF 中的資料。因此,串列埠可以持續不斷的接收資料,而不必
在接收一筆資料後等待該資料完全處理完畢才進行下一筆資料的接收。但在第二筆資料
被 UART 接收完畢前,第一筆資料須被處理完畢由程式讀入,否則會產生資料流失的問
題。