1. 串口介紹
串口是“串行接口”的簡稱,即采用串行通信方式的接口。串行通信將數(shù)據(jù)字節(jié)分成一位一位的形式在一條數(shù)據(jù)線上逐個傳送,其特點(diǎn)是通信線路簡單,但傳輸速度較慢。因此串口廣泛應(yīng)用于嵌入式、工業(yè)控制等領(lǐng)域中對數(shù)據(jù)傳輸速度要求不高的場合。串行通信分為兩種方式:同步串行通信和異步串行通信。同步串行通信需要通信雙方在同一時鐘的控制下,同步傳輸數(shù)據(jù);異步串行通信是指通信雙方使用各自的時鐘控制數(shù)據(jù)的發(fā)送和接收過程。UART是一種采用異步串行通信方式的通用異步收發(fā)傳輸器(universal asynchronous receiver-transmitter),它在發(fā)送數(shù)據(jù)時將并行數(shù)據(jù)轉(zhuǎn)換成串行數(shù)據(jù)來傳輸,在接收數(shù)據(jù)時將接收到的串行數(shù)據(jù)轉(zhuǎn)換成并行數(shù)據(jù)。UART串口通信需要兩根信號線來實(shí)現(xiàn),一根用于串口發(fā)送,另外一根負(fù)責(zé)串口接收。UART在發(fā)送或接收過程中的一幀數(shù)據(jù)由4部分組成,起始位、數(shù)據(jù)位、奇偶校驗(yàn)位和停止位,如下圖所示。其中,起始位標(biāo)志著一幀數(shù)據(jù)的開始,停止位標(biāo)志著一幀數(shù)據(jù)的結(jié)束,數(shù)據(jù)位是一幀數(shù)據(jù)中的有效數(shù)據(jù)。校驗(yàn)位分為奇校驗(yàn)和偶校驗(yàn),用于檢驗(yàn)數(shù)據(jù)在傳輸過程中是否出錯。奇校驗(yàn)時,發(fā)送方應(yīng)使數(shù)據(jù)位中1的個數(shù)與校驗(yàn)位中1的個數(shù)之和為奇數(shù);接收方在接收數(shù)據(jù)時,對1的個數(shù)進(jìn)行檢查,若不為奇數(shù),則說明數(shù)據(jù)在傳輸過程中出了差錯。同樣,偶校驗(yàn)則檢查1的個數(shù)是否為偶數(shù)。



5. RS232基礎(chǔ)介紹
RS232 接口標(biāo)準(zhǔn)出現(xiàn)較早,可實(shí)現(xiàn)全雙工工作方式,即數(shù)據(jù)發(fā)送和接收可以同時進(jìn)行。在傳輸距離較短時(不超過15m),RS232是串行通信最常用的接口標(biāo)準(zhǔn)。RS-232標(biāo)準(zhǔn)的串口最常見的接口類型為DB9(如下圖1所示),工業(yè)控制領(lǐng)域中用到的工控機(jī)一般都配備多個串口,很多老式臺式機(jī)也都配有串口。但是筆記本電腦以及較新一點(diǎn)的臺式機(jī)都沒有串口,它們一般通過USB轉(zhuǎn)串口線來實(shí)現(xiàn)與外部設(shè)備的串口通信(如下圖2所示)。


6. 典型硬件電路設(shè)計

P1端子的3腳是連接FPGA的發(fā)送端,4腳是連接FPGA的接收端。COM2的2腳是接收數(shù)據(jù)端,3腳是發(fā)送數(shù)據(jù)端。發(fā)送數(shù)據(jù)的過程:如果我們想實(shí)現(xiàn)FPGA與外部的串口設(shè)備進(jìn)行通信。那我們就需要將串口的發(fā)送端與外部設(shè)備串口的接收端進(jìn)行連接。所以用跳線帽把P1的3腳和P1的1腳連接。另外,我們還需要把串口的接收端與外部的發(fā)送端連接,即把P1的2腳和P1的4腳連接。U1的11腳在芯片的內(nèi)部與14管腳連接,在這個過程中,完成了TTL電平到RS232電平的轉(zhuǎn)換。通過第14管腳連接到DB9的第二個管腳。DB9的2腳是接收數(shù)據(jù)端。DB9通過串口線與外部的串口設(shè)備進(jìn)行連接。接收數(shù)據(jù)的過程:外部的串口設(shè)備會發(fā)送數(shù)據(jù)通過串口線連接到DB9的第3管腳,數(shù)據(jù)通過SP3232管腳的13管腳,再連接到12管腳,在這個過程中,完成電平轉(zhuǎn)換的過程。最終數(shù)據(jù)會通過P2的2腳和4腳連接,送到FPGA的接收端。7. MAX232與MAX3232常用232電平轉(zhuǎn)換芯片的區(qū)別
- MAX232是5V電壓供電的,而max3232是5v或3.3V電壓供電的。
- MAX232功耗較大,供電電壓5V時,耗電5mA;而MAX3232功耗較小,供電電壓5V或3.3V時,耗電 0.3mA。
- MAX232外接4個1uF電容;而MAX3232外接4個0.1uF電容。
- MAX232一般民用產(chǎn)品應(yīng)用;而MAX3232一般軍用(如航天等對功耗要求苛刻的地方)。
- 價格上略有差別。