⑴ 單片機串列口與普通IO口區別
單片機串列口與普通IO口區別如下:
1、串口用作串列通信,通信包括IIC,RS485,RS232等,它也是輸出是定速度的0-1-0-之類變
化。
2、I/O口是指來關量的輸入或輸出,輸入就是在該腳加高電平,即為1,低電平為0,輸出也是如此。
簡單來說:指I/O口是輸入\輸出介面,串列口是通訊介面。
I/O介面是一電子電路(以IC晶元或介面板形式出現 ),其內有若干專用寄存器和相應的控制邏輯電路構成。它是CPU和I/O設備之間交換信息的媒介和橋梁。CPU與外部設備、存儲器的連接和數據交換都需要通過介面設備來實現,前者被稱為I/O介面,而後者則被稱為存儲器介面。
⑵ C51單片機串列介面的結構是怎樣的
C51系列單片機內部有一個功能很強的全雙工串列非同步通信介面(UART)。如圖所示為C51單片機的串列口結構框圖。它主要由兩個串列數據緩沖器(SBUF)、發送控制、發送埠、接收控制、接收埠和波特率控制等組成。
C51系列單片機串列介面結構框圖
⑶ 51單片機串口是什麼工作方式
51 單片機內部有一個全雙工串列介面。什麼叫全雙工串口呢?一般來說,只能接受或只能發送的稱為單工串列;既可接收又可發送,但不能同時進行的稱為半雙工;能同時接收和發送的串列口稱為全雙工串列口。串列通信是指數據一位一位地按順序傳送的通信方式,其突出優點是只需一根傳輸線,可大大降低硬體成本,適合遠距離通信。其缺點是傳輸速度較低。
串口可以有底下四種工作方式
1、方式0
串列介面的工作方式0為移位寄存器I/O方式。在串列口外接移位寄存器以擴展I/O介面,也可以外接串列同步I/O的設備。
(1)方式0輸出
串列口以方式0發送時,數據以RXD端串列輸出,TXD端輸出同步信號。當一個數據寫入串列口發送緩沖器以後,就啟動串列口發送器以振盪頻率的十二分之一的波特率,將數據從RXD端串列輸出。
(2)方式0輸入
當串列口定義為方式0並置位REN後,便啟動串列口以方式0接收數據,此時RXD端為數據輸入端,TXD端為同步脈沖信號輸出端。接收器以振盪率的十二分之一的波特率接收RXD端輸入的數據信息。但接收器接收到8位數據時,置1中斷標志RI。
2、方式1
串列介面定義為工作方式1時,則被控制為8位的非同步通訊介面,傳送一幀信息為10位,其中1位為起始位,8位數據位(先低位後高位),1位停止位。
(1)方式1輸出
串列介面以方式1發送時,數據由TXD端輸出。CPU執行一條數據寫入發送緩沖
器SBUF的指令(例如,MOVSBUF,A),數據位元組寫入SBUF後,便啟動串列口發送器發送,發送完一幀信息,置1放送中斷標志TI。
(2)方式1輸入
串列口以方式1接收時,數據從RXD端輸入。在REN置1以後,就允許接收器接收。接收器以所建立的波特率的16倍分頻計數器,以便實現時間同步。計數器的16個狀態把一位的時間等分成16份,在每位時間的第7、8和9個計數狀態,位檢測器采樣RXD的值,接收的值是3次采樣中取至少二次相同的值,以排除雜訊的干擾。如果在起始接收的值不是0,則起始位無效,復位接收電路。在檢測到另一個1到0的跳變時,再重新啟動接收器。如果接收到值為0,起始位有效,則開始接收本幀的其餘信息。當RI=0並且接收到的停止位為1(或SM2=0)時,停止位進入RB8,接收到的8位數據進入接收緩沖器SBUF,置位RI中斷標志。接著接收便搜索另一幀信息的起始位。
3、方式2和方式3
串列介面工作方式2和方式3時,則被定義為9位的非同步通信介面。傳送一幀信息為11位,其中1位起始位,8位數據位(從低位至高位),1位是附加的可程式控制為1或0的第9位數據,1位停止位。
方式2和方式3的差別僅僅在於波特率不一樣,方式2的波特率是固定的,波特率為2SMOD/64(振盪頻率);方式3的波特率是可變的,波特率=2SMOD/32(T1的溢出率)。
方式2和方式3在發送和接收時唯一的區別就是波特率不同。
(1)方式2和方式3發送
方式2或方式3發送時,數據由TXD端輸出,發出一幀信息為11位,附加的第9位數據是SCON中的TB8,CPU執行一條數據寫入發送緩沖器SBUF的指令,就啟動發送器發送,發送完一幀信息,置「1」TI中斷標志。
(2)方式2和方式3接收
串列口被定義為方式2或方式3接收時,數據從RXD端輸入,置REN=1以後,開始接收過程。當檢測到RXD端從高到低的負跳變時,確認起始位有效,開始接收本幀的其餘信息。在接收完一幀信息後,在RI=0、SM2=0時,或接收到第9位數據為「1」時,8位數據裝入接收緩沖器,第9位數據裝入SCON中RB8,並置RI=1。若不滿足上述的兩個條件,接收到的信息將會丟失,也不置位RI
⑷ 單片機的串列介面有哪些種類
單片機常見的串列介面有:標准UART介面、增強型UART介面、I2C匯流排介面、CAN匯流排介面、SPI介面、USB介面等。
大部分單片機都提供了UART介面,也有部分單片機沒有串列介面。在沒有特別說明的情況下我們常說的串列介面,簡稱串口,指的就是UART。
如果系統只用一個單片機晶元時,UART介面或USB介面通常用來和計算機通信,不需要和計算機通信時可以不用。
SPI介面可用來進行ISP編程,當你沒有編程器時,盡量選用帶這種介面的單片機,當然SPI介面也能用來和其他外設進行高速串列通信。
I2C匯流排是一種兩線、雙向、可多主機操作的同步匯流排,I2C匯流排是一種工業標准,被廣泛應用在各種電子產品中,如現在的彩色電視機就採用I2C匯流排進行參數的設置。具有I2C匯流排介面的單片機在使用AT24C01等串列EEPROM時可以簡化程序設計。