串口通信模块1:串口基础知识
生活随笔
收集整理的這篇文章主要介紹了
串口通信模块1:串口基础知识
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
串行接口可以將接受來(lái)自CPU的并行數(shù)據(jù)字符,轉(zhuǎn)換為連續(xù)的串行數(shù)據(jù)流發(fā)送出去。同時(shí)可將接收的串行數(shù)據(jù)流轉(zhuǎn)換為并行的數(shù)據(jù)字符供給CPU的器件。一般完成這種功能的電路,稱為串行接口電路。常用的RS-232 (ANSI-EIA-232標(biāo)準(zhǔn))是IBM-PC及其兼容機(jī)上的串行連接標(biāo)準(zhǔn)。可用于許多用途,比如連接鼠標(biāo)、打印機(jī)或者M(jìn)odem,同時(shí),也可以連接工業(yè)儀器儀表。
1.串口簡(jiǎn)介
RS-232-C也稱標(biāo)準(zhǔn)串口,是目前最常用的一種串行通信接口,我們項(xiàng)目中也采用了這一種接口。傳統(tǒng)的RS-232-C接口標(biāo)準(zhǔn)有25根信號(hào)線,采用標(biāo)準(zhǔn)25芯D型插頭座。后來(lái),PC上使用了簡(jiǎn)化了的9芯D型插座。硬件表現(xiàn)為計(jì)算機(jī)后面的9針D型接口,由于其形狀和針腳數(shù)量的原因,其接頭又被稱為DB9接頭。RS-232針腳定義如下表所示:| 針腳編號(hào) | 功能 | 說(shuō)明 |
| 1 | CD( Carrier Detect ) | 載波檢測(cè) |
| 2 | RXD( ?Received Data ) | 接收數(shù)據(jù) |
| 3 | TXD( Transmit Data ) | 發(fā)送數(shù)據(jù) |
| 4 | DTR( Data Terminal Ready ) | 數(shù)據(jù)終端就緒 |
| 5 | GND( System Ground ) | 系統(tǒng)接地 |
| 6 | DSR( Data Set Ready ) | 數(shù)據(jù)設(shè)備就緒 |
| 7 | RTS( Request To Send ) | 請(qǐng)求發(fā)送 |
| 8 | CTS( Clear To Send ) | 允許發(fā)送 |
| 9 | RI( Ring Indicator ) | 響鈴指示器 |
其實(shí),我們平常最常用的就是2/3/5這三個(gè)引腳。因?yàn)橹恍枰@三個(gè)引腳便可完成基本的通信功能。
2.串口通信簡(jiǎn)介
所謂的串口通信也非常容易理解,即串口按位(bit)發(fā)送和接受字節(jié)。雖然比按字節(jié)(byte)的秉性通信速度慢,但是串口可以在使用一根線發(fā)送數(shù)據(jù)的同時(shí)用另一根線接收數(shù)據(jù)。串口通信的實(shí)現(xiàn)很簡(jiǎn)單,而且能夠?qū)崿F(xiàn)遠(yuǎn)距離通信。比如IEEE488定義并行通信狀態(tài)時(shí),規(guī)定設(shè)備線總長(zhǎng)不得超過(guò)20米,并且任意兩個(gè)設(shè)備間的長(zhǎng)度不得超過(guò)2米;而對(duì)于串口通信而言,長(zhǎng)度可以達(dá)到1200米。 一般情況下,串口用于ASCII碼字符的傳輸。通信使用3根線完成:第5針腳的地線,第3針腳發(fā)送,第2針腳接受。由于串口通信是異步的,端口能夠在一根線上發(fā)送數(shù)據(jù)同時(shí)再領(lǐng)一根線上接收數(shù)據(jù)。其他針腳的線主要用于握手,可以不是必須的!串口通信有4個(gè)重要的參數(shù),分別是波特率、數(shù)據(jù)位、停止位和奇偶檢驗(yàn)位。對(duì)于兩個(gè)進(jìn)行通信的端口,這些參數(shù)必須匹配,否則通信將無(wú)法正常完成。下面主要討論一下這些參數(shù)的含義以及相應(yīng)的設(shè)置方法。 波特率: 這是一個(gè)衡量通信速度的參數(shù)。他表示每秒鐘傳送的bit的個(gè)數(shù)。例如,300波特表示每秒鐘發(fā)送300個(gè)bit。當(dāng)我們提到時(shí)鐘周期時(shí)就是指波特率。例如,如果協(xié)議需要4800波特率,那么時(shí)鐘是4800Hz。這意味著串口通信在數(shù)據(jù)線上的采樣率為4800Hz。通常電話線的波特率為14400、28800、36600.波特率可以遠(yuǎn)遠(yuǎn)大于這些值,但是波特率和距離成反比。高波特率常常用于放置的很近的儀器間的通信,堿性的例子就是GPIB設(shè)備的通信。 數(shù)據(jù)位: 這是衡量通信中實(shí)際數(shù)據(jù)位的參數(shù)。當(dāng)計(jì)算機(jī)發(fā)送一個(gè)信息包,實(shí)際的數(shù)據(jù)不會(huì)是8位的,標(biāo)準(zhǔn)的值是5、7和8位。如何設(shè)置取決于想要傳送的信息。比如,標(biāo)準(zhǔn)的ASCII碼是0~127(7位)。拓展的ASCII碼是0~255(8位)。如果數(shù)據(jù)使用簡(jiǎn)單的文本(標(biāo)準(zhǔn)ASCII碼),那么每個(gè)數(shù)據(jù)包使用7位數(shù)據(jù)。每個(gè)包是指一個(gè)字節(jié),包括開始/停止位,數(shù)據(jù)位和奇偶檢驗(yàn)位。由于實(shí)際數(shù)據(jù)位取決于通信協(xié)議的選取,術(shù)語(yǔ)“包”指任何通信的情況。 停止位: 用于表示單個(gè)包的最后一位。典型的值為1,1.5和2位。由于數(shù)據(jù)是在傳輸線上定時(shí)的,并且每一個(gè)設(shè)備有其自己的時(shí)鐘,很可能在通信中兩臺(tái)設(shè)備間出現(xiàn)了小小的不同步。因此停止位不僅僅是表示傳輸?shù)慕Y(jié)束,并且提供計(jì)算機(jī)校正時(shí)鐘同步的機(jī)會(huì)。適用于停止位的位數(shù)越多,不同時(shí)鐘同步的容忍程度越大,但是數(shù)據(jù)傳輸同時(shí)也越慢。 奇偶檢驗(yàn)位: 是在串口通信中一種簡(jiǎn)單的檢錯(cuò)方式。其實(shí)共包含了4中檢錯(cuò)方式,分別是偶、積、高、低。當(dāng)然沒有檢驗(yàn)位也是可以的。對(duì)于奇偶校驗(yàn)的情況,串口會(huì)設(shè)置校驗(yàn)位(數(shù)據(jù)位后面一位),用一個(gè)值確保傳輸?shù)臄?shù)據(jù)有偶數(shù)個(gè)或者奇數(shù)個(gè)邏輯高位。例如,如果數(shù)據(jù)是011,那么對(duì)于偶校驗(yàn),校驗(yàn)位為0,保證邏輯高的位數(shù)是偶數(shù)個(gè)。如果是積校驗(yàn),校驗(yàn)位為1,這樣就有3個(gè)邏輯高位。高位和低位不真正地檢查數(shù)據(jù),僅簡(jiǎn)單置位邏輯高或邏輯低校驗(yàn)。這樣使得接收設(shè)備能夠知道一個(gè)位的狀態(tài),有機(jī)會(huì)判斷是否有噪聲干擾了通信或者是否傳輸和接收數(shù)據(jù)是否同步。有點(diǎn)公事需要處理,今天先到這里,明天繼續(xù)討論串口通信編程基礎(chǔ)。 與50位技術(shù)專家面對(duì)面20年技術(shù)見證,附贈(zèng)技術(shù)全景圖
總結(jié)
以上是生活随笔為你收集整理的串口通信模块1:串口基础知识的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Windows Live Messeng
- 下一篇: 飞鸽传书2007绿色版