0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

RS-232接口不足之處及編程實(shí)例

開(kāi)源嵌入式 ? 來(lái)源:開(kāi)源嵌入式 ? 作者:開(kāi)源嵌入式 ? 2020-10-22 10:54 ? 次閱讀

RS-232接口符合美國(guó)電子工業(yè)聯(lián)盟(EIA)制定的串行數(shù)據(jù)通信的接口標(biāo)準(zhǔn),原始編號(hào)全稱(chēng)是EIA-RS-232(簡(jiǎn)稱(chēng)232,RS232)。它被廣泛用于計(jì)算機(jī)串行接口外設(shè)連接。

RS-232是現(xiàn)在主流的串行通信接口之一。由于RS232接口標(biāo)準(zhǔn)出現(xiàn)較早,難免有不足之處,主要有以下四點(diǎn):

(1)接口的信號(hào)電平值較高,易損壞接口電路的芯片。RS232接口任何一條信號(hào)線(xiàn)的電壓均為負(fù)邏輯關(guān)系。即:邏輯"1"為-3- -15V;邏輯"0":+3- +15V ,噪聲容限為2V。即要求接收器能識(shí)別高于+3V的信號(hào)作為邏輯"0",低于-3V的信號(hào)作為邏輯"1",TTL電平為5V為邏輯正,0為邏輯負(fù) 。與TTL電平不兼容故需使用電平轉(zhuǎn)換電路方能與TTL電路連接。

(2)傳輸速率較低,在異步傳輸時(shí),波特率為20Kbps

(3)接口使用一根信號(hào)線(xiàn)和一根信號(hào)返回線(xiàn)而構(gòu)成共地的傳輸形式,這種共地傳輸容易產(chǎn)生共模干擾,所以抗噪聲干擾性弱。

(4)傳輸距離有限,最大傳輸距離標(biāo)準(zhǔn)值為50英尺,實(shí)際上也只能用在15米左右。


串口232有兩種,第一種:DB9;第二種:DB25;下面分別介紹。

DB9接口接線(xiàn)說(shuō)明:

1 DCD 載波檢測(cè)

2 RXD 接收數(shù)據(jù)

3 TXD 發(fā)送數(shù)據(jù)

4 DTR 數(shù)據(jù)終端準(zhǔn)備好

5 SGND信號(hào)地線(xiàn)

6 DSR數(shù)據(jù)準(zhǔn)備好

7 RTS 請(qǐng)求發(fā)送

8 CTS 清除發(fā)送

9 RI 振鈴提示

DB25接口接線(xiàn)說(shuō)明:

1 屏蔽地線(xiàn)

2 TXD 發(fā)送數(shù)據(jù)

3 RXD 接收數(shù)據(jù)

4 RTS 請(qǐng)求發(fā)送

5 CTS 允許發(fā)送

6 DSR 數(shù)據(jù)準(zhǔn)備好

7 SG 信號(hào)地

8 DCD 載波檢測(cè)

9 發(fā)送返回(+)

10 未定義

11 數(shù)據(jù)發(fā)送(-)

12~17 未定義

18 數(shù)據(jù)接收(+)

19 未定義

20 數(shù)據(jù)終端準(zhǔn)備好 DTR

21 未定義

22 振鈴 RI

23~24 未定義

25 接收返回

實(shí)際應(yīng)用中使用最多的是DB9接口,如果遇到DB25接口后可以通過(guò)更改接線(xiàn)方法來(lái)轉(zhuǎn)換。DB25轉(zhuǎn)DB9的接線(xiàn)方法。

在RS-232標(biāo)準(zhǔn)中,字符是以一串行的比特串來(lái)一個(gè)接一個(gè)的串行(serial)方式傳輸,優(yōu)點(diǎn)是傳輸線(xiàn)少,配線(xiàn)簡(jiǎn)單,傳送距離可以較遠(yuǎn)。最常用的編碼格式是異步起停(asynchronous start-stop)格式,它使用一個(gè)起始比特后面緊跟7或8 個(gè)數(shù)據(jù)比特(bit),然后是可選的奇偶校驗(yàn)比特,最后是一或兩個(gè)停止比特。所以發(fā)送一個(gè)字符至少需要10比特,帶來(lái)的一個(gè)好的效果是使全部的傳輸速率,發(fā)送信號(hào)的速率以10劃分。一個(gè)最平常的代替異步起停方式的是使用高級(jí)數(shù)據(jù)鏈路控制協(xié)議(HDLC)。

在RS-232標(biāo)準(zhǔn)中定義了邏輯1和邏輯0電壓級(jí)數(shù),以及標(biāo)準(zhǔn)的傳輸速率和連接器類(lèi)型。信號(hào)大小在正的和負(fù)的3-15v之間。RS-232規(guī)定接近0的電平是無(wú)效的,邏輯1規(guī)定為負(fù)電平,有效負(fù)電平的信號(hào)狀態(tài)稱(chēng)為傳號(hào)marking,它的功能意義為OFF,邏輯0規(guī)定為正電平,有效正電平的信號(hào)狀態(tài)稱(chēng)為空號(hào)spacing,它的功能意義為ON。根據(jù)設(shè)備供電電源的不同,±5、±10、±12和±15這樣的電平都是可能的。

RS-232設(shè)計(jì)之初是用來(lái)連接調(diào)制解調(diào)器做傳輸之用,也因此它的腳位意義通常也和調(diào)制解調(diào)器傳輸有關(guān)。RS-232的設(shè)備可以分為數(shù)據(jù)終端設(shè)備(DTE,Data Terminal Equipment, For example, PC)和數(shù)據(jù)通信設(shè)備(DCE,Data Communication Equipment)兩類(lèi),這種分類(lèi)定義了不同的線(xiàn)路用來(lái)發(fā)送和接受信號(hào)。一般來(lái)說(shuō),計(jì)算機(jī)和終端設(shè)備有DTE連接器,調(diào)制解調(diào)器和打印機(jī)有DCE連接器。但是這么說(shuō)并不是總是嚴(yán)格正確的,用配線(xiàn)分接器測(cè)試連接,或者用試誤法來(lái)判斷電纜是否工作,常常需要參考相關(guān)的文件說(shuō)明。

串行通信在軟件設(shè)置里需要做多項(xiàng)設(shè)置,最常見(jiàn)的設(shè)置包括波特率(Baud Rate)、奇偶校驗(yàn)(Parity Check)和停止位(Stop Bit)。

波特率(又稱(chēng)鮑率):是指從一設(shè)備發(fā)到另一設(shè)備的波特率,即每秒鐘多少比特bits per second (bit/s)。典型的波特率是300, 1200, 2400, 9600, 15200, 19200等bit/s。一般通信兩端設(shè)備都要設(shè)為相同的波特率,但有些設(shè)備也可以設(shè)置為自動(dòng)檢測(cè)波特率。

奇偶校驗(yàn)(Parity:是用來(lái)驗(yàn)證數(shù)據(jù)的正確性。奇偶校驗(yàn)一般不使用,如果使用,那么既可以做奇校驗(yàn)(Odd Parity)也可以做偶校驗(yàn)(Even Parity)。奇偶校驗(yàn)是通過(guò)修改每一發(fā)送字節(jié)(也可以限制發(fā)送的字節(jié))來(lái)工作的。如果不作奇偶校驗(yàn),那么數(shù)據(jù)是不會(huì)被改變的。在偶校驗(yàn)中,因?yàn)槠媾夹r?yàn)位會(huì)被相應(yīng)的置1或0(一般是最高位或最低位),所以數(shù)據(jù)會(huì)被改變以使得所有傳送的數(shù)位(含字符的各數(shù)位和校驗(yàn)位)中"1"的個(gè)數(shù)為偶數(shù);在奇校驗(yàn)中,所有傳送的數(shù)位(含字符的各數(shù)位和校驗(yàn)位)中"1"的個(gè)數(shù)為奇數(shù)。奇偶校驗(yàn)可以用于接受方檢查傳輸是否發(fā)送生錯(cuò)誤--如果某一字節(jié)中"1"的個(gè)數(shù)發(fā)生了錯(cuò)誤,那么這個(gè)字節(jié)在傳輸中一定有錯(cuò)誤發(fā)生。如果奇偶校驗(yàn)是正確的,那么要么沒(méi)有發(fā)生錯(cuò)誤要么發(fā)生了偶數(shù)個(gè)的錯(cuò)誤。如果用戶(hù)選擇數(shù)據(jù)長(zhǎng)度為8位,則因?yàn)闆](méi)有多余的比特可被用來(lái)作為同比特,因此就叫做"無(wú)位元(Non Parity)"。

停止位:是在每個(gè)字節(jié)傳輸之后發(fā)送的,它用來(lái)幫助接受信號(hào)方硬件重同步。

RS232讀寫(xiě)時(shí)序圖:

下面列舉一下編程實(shí)例。因?yàn)镽S232編程使用51單片機(jī)的歷程太多了,所以我給大家分享一個(gè)由DSP編寫(xiě)的RS232通信例程。DSP由于庫(kù)文件和頭文件比較大,所以我只是把通信部分程序分享出來(lái)。如果需要完整項(xiàng)目,可以發(fā)送信息到公眾號(hào)里。我們看到后會(huì)盡快回復(fù)并發(fā)送到你的郵箱里。

程序簡(jiǎn)要說(shuō)明:開(kāi)發(fā)環(huán)境CCS4.2,芯片TMS320F2812,模式:中斷方式讀寫(xiě)

使用模塊:SCIA模塊

DSP串口通信與單片機(jī)串口通信是有很大區(qū)別的,但是基本的通信流程相同。首先是配置GPIO(因模式較多所以需要配置,普通單片機(jī)不需要配置),配置完成后是通信參數(shù)設(shè)置,參數(shù)設(shè)置完成后就可以利用中斷來(lái)發(fā)送和接收了。(發(fā)送也可以不使用中斷,我只是寫(xiě)了一個(gè)歷程,實(shí)際使用中要根據(jù)功能來(lái)寫(xiě),我寫(xiě)的發(fā)送是一直在發(fā)數(shù)據(jù)),下面是程序。

責(zé)任編輯:PSY

原文標(biāo)題:工業(yè)RS-232接口總線(xiàn)原理與應(yīng)用方案

文章出處:【微信公眾號(hào):開(kāi)源嵌入式】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • RS-232
    +關(guān)注

    關(guān)注

    0

    文章

    385

    瀏覽量

    49777
  • 串口通信
    +關(guān)注

    關(guān)注

    34

    文章

    1604

    瀏覽量

    55324
  • RS-232接口
    +關(guān)注

    關(guān)注

    0

    文章

    42

    瀏覽量

    14243

原文標(biāo)題:工業(yè)RS-232接口總線(xiàn)原理與應(yīng)用方案

文章出處:【微信號(hào):KY_QRS,微信公眾號(hào):開(kāi)源嵌入式】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    含USB和RS-232接口的鼠標(biāo)電路圖

    具有USB和RS-232接口的鼠標(biāo)電路圖
    發(fā)表于 09-17 19:31 ?3437次閱讀
    含USB和<b class='flag-5'>RS-232</b><b class='flag-5'>接口</b>的鼠標(biāo)電路圖

    【FPGA設(shè)計(jì)實(shí)例】基于FPGA的串行接口RS-232

    本帖最后由 eehome 于 2013-1-5 09:44 編輯 串行接口RS-232) 連接到PC與FPGA的串信接口是一種簡(jiǎn)單的連接方式。本節(jié)課程將向大家展示了如何在一個(gè)FPGA上創(chuàng)建
    發(fā)表于 03-20 14:05

    RS422和RS485優(yōu)缺點(diǎn)

    -C接口標(biāo)準(zhǔn)出現(xiàn)較早,難免有不足之處,主要有以下四點(diǎn):1)接口的信號(hào)電平值較高,易損壞接口電路的芯片,又因?yàn)榕cTTL電平不兼容故需使用電平轉(zhuǎn)換電路方能與TTL電路連接。
    發(fā)表于 05-23 06:44

    物聯(lián)網(wǎng)存在哪些不足之處?

    物聯(lián)網(wǎng)存在哪些不足之處?
    發(fā)表于 05-19 06:46

    RS232接口概述

    RS232接口概述  RS232接口又稱(chēng)DB9接口,是現(xiàn)在主流的串行通信接口之一。  由于
    發(fā)表于 07-14 06:34

    RS232接口簡(jiǎn)介

    1 RS232接口簡(jiǎn)介RS232接口又稱(chēng)DB9接口,是現(xiàn)在主流的串行通信接口之一。由于
    發(fā)表于 07-28 06:04

    RS-232-C接口有哪些不足之處

    RS-232-C接口有哪些不足之處?
    發(fā)表于 02-16 06:42

    RS-232/RS-422/RS-485接口標(biāo)準(zhǔn)

    RS-232/RS-422/RS-485接口標(biāo)準(zhǔn) RS-232、RS-422與
    發(fā)表于 04-12 14:34 ?141次下載

    AT89S52與RS-232接口電路

    AT89S52與RS-232接口電路 圖5 AT89S52與RS-232接口電路 單片機(jī)采用AT89S52
    發(fā)表于 03-07 09:37 ?2992次閱讀
    AT89S52與<b class='flag-5'>RS-232</b>的<b class='flag-5'>接口</b>電路

    RS-232接口功能的解釋-RS-232 Features

    Abstract: RS-232 features are explained in a way that makes it easy to select an appropriate RS-232
    發(fā)表于 04-24 16:41 ?3748次閱讀
    <b class='flag-5'>RS-232</b><b class='flag-5'>接口</b>功能的解釋-<b class='flag-5'>RS-232</b> Features

    RS-232 接口,RS-232 接口是什么意思

    RS-232 接口,RS-232 接口是什么意思 電纜長(zhǎng)度限制 RS-232的最初標(biāo)準(zhǔn)建議將電纜長(zhǎng)度限制在50 ft以?xún)?nèi),對(duì)于≤20 00
    發(fā)表于 03-09 10:57 ?6.1w次閱讀

    工業(yè)RS-232接口總線(xiàn)原理與應(yīng)用方案

    RS-232接口符合美國(guó)電子工業(yè)聯(lián)盟(EIA)制定的串行數(shù)據(jù)通信的接口標(biāo)準(zhǔn),原始編號(hào)全稱(chēng)是EIA-RS-232(簡(jiǎn)稱(chēng)232
    發(fā)表于 12-27 13:54 ?2020次閱讀

    RS485和RS232通訊接口有什么區(qū)別?

    由于rs232接口標(biāo)準(zhǔn)出現(xiàn)較早,難免有不足之處。針對(duì)rs232接口不足,于是就不斷出現(xiàn)了一些
    發(fā)表于 10-31 10:37 ?21w次閱讀

    RS-232RS-485接口標(biāo)準(zhǔn)與多協(xié)議應(yīng)用實(shí)例資料下載

    電子發(fā)燒友網(wǎng)為你提供RS-232RS-485接口標(biāo)準(zhǔn)與多協(xié)議應(yīng)用實(shí)例資料下載的電子資料下載,更有其他相關(guān)的電路圖、源代碼、課件教程、中文資料、英文資料、參考設(shè)計(jì)、用戶(hù)指南、解決方案等
    發(fā)表于 04-16 08:48 ?6次下載
    <b class='flag-5'>RS-232</b>和<b class='flag-5'>RS</b>-485<b class='flag-5'>接口</b>標(biāo)準(zhǔn)與多協(xié)議應(yīng)用<b class='flag-5'>實(shí)例</b>資料下載

    RS-232接口——簡(jiǎn)單明了

    RS-232接口符合美國(guó)電子工業(yè)聯(lián)盟(EIA)制定的串行數(shù)據(jù)通信的接口標(biāo)準(zhǔn),全稱(chēng)是EIA-RS-232(簡(jiǎn)稱(chēng)232
    發(fā)表于 12-20 19:18 ?4次下載
    <b class='flag-5'>RS-232</b><b class='flag-5'>接口</b>——簡(jiǎn)單明了