RS-232標准接口(又稱EIA RS-232)是常用的串行通信接口標准之一。
·串口介紹:,串口是“串行接口”的簡稱,即采用串行通信方式的接口。串行通信將數據字節分成一位一位的形式在一條數據線上逐個傳送,其特點是通信線路簡單,但傳輸速度較慢。因此串口廣泛應用於嵌入式、工業控制等領域中對數據傳輸速度要求不高的場合。
串行通信分為兩種方式:同步串行通信和異步串行通信。同步串行通信需要通信雙方在同一時鍾的控制下,同步傳輸數據;。異步串行通信是指通信雙方使用各自的時鍾控制數據的發送和接收過程。
sUART是一種采用異步串行通信方式的通用異步收發傳輸器( universal asynchronous receiver-transmitter),它在發送數據時將並行數據轉換成串行數據來傳輸,在接收數據時將接收到的串行數據轉換成並行數據。
UART串口通信需要兩根信號線來實現,一根用於串口發送,另外一根負責串口接收。UART在發送或接收過程中的一幀數據由4部分組成,起始位、數據位、奇偶校驗位和停止位,如下圖所示。其中,起始位標志着一幀數據的開始,停止位標志着一幀數據的結束,數據位是一幀數據中的有效數據。校驗位分為奇校驗和偶校驗,用於檢驗數據在傳輸過程中是否出錯。奇校驗時,發送方應使數據位中1的個數與校驗位中1的個數之和為奇數;接收方在接收數據時,對1的個數進行檢查,若不為奇數,則說明數據在傳輸過程中出了差錯。同樣,偶校驗則檢查1的個數是否為偶數。+
UART通信過程中的數據格式及傳輸速率是可設置的,為了正確的通信,收發雙方應約定並遵循同樣的設置。數據位可選擇為5、6、7、8位,其中8位數據位是最常用的,在實際應用中一般都選擇8位數據位;校驗位可選擇奇校驗、偶校驗或者無校驗位;停止位可選擇1位(默認),1.5或2位。串口通信的速率用波特率表示,它表示每秒傳輸二進制數據的位數,單位是bps(位/秒),常用的波特率有9600、19200、38400、57600以及115200等。RS-232規定的標准傳送速率有50b/s、75b/s、110b/s、150b/s、300b/s、600b/s、1200b/s、2400b/s、4800b/s、9600b/s、19200b/s
在設置好數據格式及傳輸速率之后,UART負責完成數據的串並轉換,而信號的傳輸則由外部驅動電路實現。電信號的傳輸過程有着不同的電平標准和接口規范,針對異步串行通信的接口標准有RS232、RS422、RS485等,它們定義了接口不同的電氣特性,如 RS-232是單端輸入輸出,而RS-422/485 為差分輸入輸出等。
針對異步串行通信的接口標准有RS232、RS422、RS485等其對比區別如下:
各引腳作用:
連線分3種:
1、九個pin都連接
2、連接5個pin
3、連接3pin
注:3線連接中,DTE使用TXD和RXD兩條數據線,無法實現硬件流控功能,在做大量數據傳輸應用時,建議使用5線或9線連接方式。
開發板與PC機進行通信:
SP3232的作用:ZYNQ PL端串口輸入輸出引腳為TTL電平,用3.3V代表邏輯“1”,0V代表邏輯“O”﹔而計算機串口采用RS-232電平,它是負邏輯電平,即-15V~-5V代表邏輯“1”,+5V~+15V代表邏輯“0”。因此當計算機與ZYNQ通信時,需要加電平轉換芯片SP3232,實現RS232電平與TTL電平的轉換。
P1的座子的作用:SP3232芯片端口的U2_RX和 U2_TX並沒有直接和ZYNQ的引腳相連接,而是連接到了P1排針上。RS232串口和 RS485串口共用P1排針的UART2_TX和 UART2_RX,而UART2_TX和 UART2_RX是直接和ZYNQ 的引腳相連接的。在使用時,使用跳線帽選擇與ZYNQ相連接的串口類型,這樣的設計方式實現了有限IO的復用。因此,在做RS232的通信實驗時,需要使用杜邦線或者跳線帽將.U2_RX和UART2_TX連接在一起,U2_TX和UART2_RX連接在一起。
原理說明:
P1端子的3腳是連接FPGA的發送端,4腳是連接FPGA的接收端。COM2的2腳是接收數據端,3腳是發送數據端。
發送數據的過程:
如果我們想實現 FPGA與外部的串口設備進行通信。那我們就需要將串口的發送端與外部設備串口的接收端進行連接。所以用跳線帽把P1的3腳和P1的1腳連接。另外,我們還需要把串口的接收端與外部的發送端連接,即把P1的2腳和P1的4腳連接。·
U1 的11腳在芯片的內部與14管腳連接,在這個過程中,完成了TTL電平到RS232電平的轉換。通過第14管腳連接到DB9的第二個管腳。DB9的2腳是接收數據端。DB9通過串口線與外部的串口設備進行連接。
接收數據的過程:
外部的串口設備會發送數據通過串口線連接到DB9的第3管腳,數據通過SP3232管腳的13管腳,再連接到12管腳,在這個過程中,完成電平轉換的過程。最終數據會通過P2的2腳和4腳連接,送到FPGA的接收端。
C1+和C1-之間的電容稱為:電荷泵電容
C2+和C2-之間的電容稱為:電荷泵電容
V+和V-接到地的電容是去藕電容。
//232的輸出的差分電壓是比VCC的電壓要高不少的,要用較低的電壓產生較高的電壓,比較常見的方法是Boost升壓,這個一般電源上用的,要用電感,或者用並關電容法,就是用電荷泵給電容充電,達到升壓的目的。所以電容是內部升壓電荷泵用的//