您好,登錄后才能下訂單哦!
這篇“Android串口基礎(chǔ)知識和測試方法是什么”文章的知識點大部分人都不太理解,所以小編給大家總結(jié)了以下內(nèi)容,內(nèi)容詳細(xì),步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“Android串口基礎(chǔ)知識和測試方法是什么”文章吧。
請注意文檔中,關(guān)于硬件的很多描述都帶有“一般情況”這樣的字樣,表明是有特殊情況
的,但是在大多數(shù)情況下,去掉“一般情況”都是正確的。硬件很多情況下是“模糊”,偏向
于“差不多”,執(zhí)著于“硬件系統(tǒng)長時間在特定環(huán)境下穩(wěn)定運行最重要”,在設(shè)計上一定有
“取舍”,雖然有一個“最優(yōu)解”,我們只能盡量接近“最優(yōu)解”,但是永遠(yuǎn)不能到達(dá)。
硬件不像軟件,每一個接口都是嚴(yán)格定義,不允許有差不多的情況。
1 基礎(chǔ)電平知識
1.1 TTL 電平和 CMOS 電平
在大學(xué)電子專業(yè)課《數(shù)字電路分析》中,有提到電平的概念,通常有 TTL 和 CMOS 電
平,TTL 和 CMOS 又各自細(xì)分為多種電平,這里為了方便文字描述,統(tǒng)稱為 TTL 電平。TTL
和 CMOS 是有很大區(qū)別的,但是對于純粹的數(shù)字電路,區(qū)別不是很大,唯一要注意的是信號
的電壓值,電壓不一樣則需要使用電平轉(zhuǎn)換芯片,抬高或者降低信號的電壓。
另外為了達(dá)成文檔目標(biāo)--為了讓大家能夠快速掌握串口的快速測試,這里將 TTL 根據(jù)電平
值分為 1.8VTTL 電平、3.3VTTL 電平和 5VTTL 電平。
TTL 電平在一般情況下,高電平(1.8V、3.3V 或者 5V)表示邏輯 1,0V 表示邏輯 0。
一般情況下,CMOS 和 TTL 進(jìn)行數(shù)據(jù)傳輸?shù)臅r候,只要電平相同和 IO 的類型,就可以正
常通信。
那么這里有一個基本的結(jié)論:TTL 電平的串口,無論是只要開發(fā)板和??斓?TTL 電平值相
同。開發(fā)板的 TX 和測試模組 RX 相接,開發(fā)板的 RX 和測試模組 TX 相接,共 GND 地,就可
以正常通信。
1.2 RS232 電平
接著來介紹 RS232 電平,關(guān)于 RS232 的知識,網(wǎng)上非常多,作者只介紹大家在使用過程
中最不容易和最重要的部分。
RS232 的電平要表示邏輯 1,電平是在-3V~-15V 之間,邏輯 0 的電平是在 3V~15V 之
間,如果電平在-3V~3V 之間,是沒有任何意義的。
那么顯然,無論是什么電平的 TTL 都是無法直接和 RS232 通信,一個用高電平表示邏輯
1,一個用高電平表示邏輯 0。
1.3 232 電平轉(zhuǎn)換芯片-TTL 串口和 RS232 的通信
為了能夠讓 TTL 的串口和 RS232 串口通信,則需要將 TTL 電平的串口轉(zhuǎn)化為 RS232 電
平。
將 TTL 的 5V 串口轉(zhuǎn)換為 RS232 串口信號,需要 MAX232 芯片(MAX 是美信的意思,
是一個家公司的簡寫),將 TTL 的 3.3V 串口轉(zhuǎn)化為 RS232 串口信號,需要 MAX3232。
現(xiàn)在很多 PC 上沒有串口接口,但是可以使用 USB 轉(zhuǎn)串口,一般情況下,我們默認(rèn) USB
轉(zhuǎn)出來都是 RS232 串口信號(也有 USB 轉(zhuǎn) TTL 串口芯片)。
只要都轉(zhuǎn)成了 RS232 電平,TX 接 RX,RX 接 TX,雙方就可以通信了。
1.4 串口和模塊通信需要注意的地方
特別要注意的只有一點:一定要弄清楚電平!
模塊如果說是串口,那么它有可能是 RS232 電平的串口,可能是 TTL1.8V 串口,可能是
TTL3.3V 電平的串口,還有可能是 TTL5V 的串口。
關(guān)于開發(fā)板串口,參考用戶手冊上第一章,串口相關(guān)的小節(jié),上面描述了每一個串口的電
平、網(wǎng)絡(luò)標(biāo)號、復(fù)用情況還有軟件相關(guān)的設(shè)備節(jié)點。
另外就是 TX 和 RX 不同的硬件工程師,命名的時候可能不太一樣,如果 TX 接 RX 不能正
常通信,可以交換一下。
2 快速測試方法
本節(jié)介紹如何快速測試開發(fā)板的串口,用于判斷串口是否發(fā)送和接收正常。
先了解一下幾個概念“全雙工”、“半雙工”和“單工”。
單工指的是,通信的雙方,一端負(fù)責(zé)發(fā),另外一端負(fù)責(zé)收,典型的例如收音機(jī)。
半雙工指的是,通信的雙方,兩端都可以收發(fā),但是同一時間點,一端發(fā),另外一端就只
能收,不能同時收發(fā)。典型的如 RS485 和 USB 設(shè)備。
全雙工指的是,通信的雙方,兩端可以同時收發(fā),最典型的就是串口,發(fā)送的同時也可以
接收。也就是串口的 TX 和 RX 相互不干擾,可以同時工作。
串口是全雙工的,那么如果開發(fā)板串口的 TX 和 RX 短接,會出現(xiàn)什么情況呢?當(dāng)然是正
常的自發(fā)自收,發(fā)什么收什么。
例如為了測試 USB 轉(zhuǎn)串口模塊,可以將串口端的 TX 和 RX 端口短接(USB 速率遠(yuǎn)高于
串口,半雙工的 USB 不會影響串口的自發(fā)自收),那么就會出現(xiàn)發(fā)送什么數(shù)據(jù),就接收什么
數(shù)據(jù)。
快速測試開發(fā)板的串口,也可以用 TX 和 RX 短接的方法,最簡單的方法使用一把小鑷子
(導(dǎo)線也成),鑷子的兩個尖端,一端接 TX,一端接 RX,然后運行串口自發(fā)自收的測試程
序。
TX 和 RX 短接可以是 TTL 電平也可以是 RS232 電平,如下圖所示,是 iTOP-4412 精英
版(迅為其它開發(fā)板類似)MAX3232 部分的原理圖。
如上圖所示,上面 4 個方框中的兩個 pin 腳都可以短接,效果一樣。R20 和 RS21 左端可
以短接、MAX3232 的 pin9 和 pin10、MAX3232 的 pin7 和 pin8 可以短接、CON2
(DB9)的 pin2 和 pin3 可以短接,這樣開發(fā)板就可以實現(xiàn)自發(fā)自收。
請注意,如果要測試串口,請務(wù)必參考對應(yīng)開發(fā)板的用戶使用手冊上第一章,串口相關(guān)的
小節(jié),因為有一些模塊需要用到串口,有一些串口是復(fù)用的。
將開發(fā)板的串口 TX 和 RX 短接,使用“iTOP-4412-Android-串口測試文檔(升級版)
_V2.0.zip”獨立文檔中的串口程序,發(fā)送什么字符串,開發(fā)板就接收一樣的字符串。
以上就是關(guān)于“Android串口基礎(chǔ)知識和測試方法是什么”這篇文章的內(nèi)容,相信大家都有了一定的了解,希望小編分享的內(nèi)容對大家有幫助,若想了解更多相關(guān)的知識內(nèi)容,請關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。