導航:首頁 > 電器電路 > 串口通信電路

串口通信電路

發布時間:2021-11-08 17:54:07

『壹』 請問RS232和RS485串口電路一樣嗎 ,怎麼接線的啊

都是 串口通信,應用場合不同:
RS232 -3線全雙工,點對點通信,傳輸距離 25米以內。
RS485 -2線半雙工,點對多主從通信,傳輸距離可達 1200米以上
RS485 -4線全雙工,主從通信,傳輸距離可達 1200米以上
由於工業現場通信節點多,位置分散,通信距離遠,要求使用最少的線材完成相應的通信任務。根據相關的要求,人們開發出利用兩根導線實現多節點互聯的EIA RS-485匯流排標准。RS-485匯流排採用差分平衡電路,即一條導線上的電壓是另外一條導線的電壓的取反值,接收器輸入電壓為兩根導線電壓的差值。由於其在兩條線路上傳遞的是大小相同,方向相反的電流,而雜訊電壓對於線路的影響都是同時出現,兩條線路的雜訊電壓相互抵消,極大的削弱雜訊的影響。差分平衡電路不受節點之間的地平電壓差的影響,EIA 485沒有規定引腳定義,信號功能,只需保持兩根信號線相鄰,在同一個雙絞線中,引腳A,B不能互換就可以了,所以在工業現場使用過程中,RS-485介面沒有標準的規范,有可能是DB9,也有可能是RJ45/RJ11,但是用的最多的還是工業接線端子。由於RS-485匯流排採用差分平衡電路,極大的抑制雜訊干擾,有極強的抗共模干擾能力,輸入電壓檢測靈敏度為200毫伏(電壓信號可以在極遠距離進行恢復),使得RS-485的傳輸距離可以達到1200米(傳輸速率在110Kbps情況下)。最大傳輸速率10Mbps(傳輸距離12米)。RS-485支持多點通信,多個驅動器和接收器共享一條信號通道,在半雙工連接模式下,只能有一個驅動器工作,多個驅動器同時啟用,會產生線競爭(導致通信失敗),同時容易產生大電流,可能導致晶元燒毀。一般485晶元建議使用限流和過熱關閉功能保護晶元。
RS-485看:
http://ke..com/view/542681.htm
RS-232介面有DB25介面和DB9介面兩種,現在普通使用的基本上都是DB9介面,DB25介面基本上不再使用,DB9介面定義如下(1.載波檢測,2.接收數據,3.發送數據,4.數據終端准備就緒,5.信號地,6.數據機就緒,7.請求發送,8.允許發送,9.振鈴提示),RS-232串口相互連接分為通過Modem連接和無Modem連接,由於乙太網,RS-485匯流排,CAN匯流排等匯流排的普及,通過Modem連接做較長距離通信已經基本上不再使用。無Modem連接即直接連接則分為握手連接和無握手連接,無握手連接直接使用2,3,5三個針腳就可以使用,而握手連接則是必須使用請求發送,允許發送,准備就緒等信號,握手連接又稱全信號連接。由於RS-232使用單端非差分電路,多條線路共用一個接地線,長距離傳輸時,不同節點的接地線電平差異可能會達到幾伏,有可能導致信號的誤讀,從而導致RS-232傳輸距離不能超過15米,傳輸速率不能超過110Kbps.
RS-232看:
http://ke..com/view/112004.ht

『貳』 串口監視硬體電路

個人覺得PC需要有兩個串口分別來監視AB間的收和發.因為232是全雙工,有兩條數據線,要監視兩條數據線便需要將兩個串口RXD分別接入到這兩條線.

具體操作方式:PC串口1的RXD接到A的TXD,PC串口2的RXD接到A的RXD,PC串口1和2的GND跟AB的GND短接。

以上只提供了一個思路,未經過測試,有條件的話可以測試一下

『叄』 什麼是串口通信

串列介面是一種可以將接受來自CPU的並行數據字元轉換為連續的串列數據流發送出去,同時可將接受的串列數據流轉換為並行的數據字元供給CPU的器件。

一般完成這種功能的電路,我們稱為串列介面電路。

串口按位(bit)發送和接收位元組。盡管比按位元組(byte)的並行通信慢,但是串口可以在使用一根線發送數據的同時用另一根線接收數據。它很簡單並且能夠實現遠距離通信。

(3)串口通信電路擴展閱讀:

串口通信的結構:

串口通信是指外設和計算機間,通過數據信號線 、地線、控制線等,按位進行傳輸數據的一種通訊方式。

這種通信方式使用的數據線少,在遠距離通信中可以節約通信成本,但其傳輸速度比並行傳輸低。

串口是計算機上一種非常通用的設備通信協議。大多數計算機(不包括筆記本電腦)包含兩個基於RS-232的串口。串口同時也是儀器儀表設備通用的通信協議;

很多GPIB兼容的設備也帶有RS-232口。同時,串口通信協議也可以用於獲取遠程採集設備的數據。

『肆』 51單片機和計算機之間實現串口通信的電路圖

串口通訊參考程序如下:

來源:深入淺出AVR單片機

#include<reg51.h>

unsignedcharUART_RX;//定義串口接收數據變數

unsignedcharRX_flag;//定義穿行接收標記

/*********************************************************************************************

函數名:UART串口初始化函數

調用:UART_init();

參數:無

返回值:無

結果:啟動UART串口接收中斷,允許串口接收,啟動T/C1產生波特率(佔用)

備註:振盪晶體為12MHz,PC串口端設置[4800,8,無,1,無]

/**********************************************************************************************/

voidUART_init(void){

EA=1;//允許總中斷(如不使用中斷,可用//屏蔽)

ES=1;//允許UART串口的中斷

TMOD=0x20;//定時器T/C1工作方式2

SCON=0x50;//串口工作方式1,允許串口接收(SCON=0x40時禁止串口接收)

TH1=0xF3;//定時器初值高8位設置

TL1=0xF3;//定時器初值低8位設置

PCON=0x80;//波特率倍頻(屏蔽本句波特率為2400)

TR1=1;//定時器啟動

}

/**********************************************************************************************/

/*********************************************************************************************

函數名:UART串口接收中斷處理函數

調用:[SBUF收到數據後中斷處理]

參數:無

返回值:無

結果:UART串口接收到數據時產生中斷,用戶對數據進行處理(並發送回去)

備註:過長的處理程序會影響後面數據的接收

/**********************************************************************************************/

voidUART_R(void)interrupt4using1{//切換寄存器組到1

RI=0;//令接收中斷標志位為0(軟體清零)

UART_RX=SBUF;//將接收到的數據送入變數UART_data

RX_flag=1;//標記接收

//用戶函數內容(用戶可使用UART_data做數據處理)

//SBUF=UART_data;//將接收的數據發送回去(刪除//即生效)

//while(TI==0);//檢查發送中斷標志位

//TI=0;//令發送中斷標志位為0(軟體清零)

}

/**********************************************************************************************/

/*********************************************************************************************

函數名:UART串口發送函數

調用:UART_T(?);

參數:需要UART串口發送的數據(8位/1位元組)

返回值:無

結果:將參數中的數據發送給UART串口,確認發送完成後退出,採用非中斷方式

備註:

/**********************************************************************************************/

voidUART_T(unsignedcharUART_data){//定義串口發送數據變數

ES=0;//禁止穿行中斷

SBUF=UART_data;//將接收的數據發送回去

while(TI==0);//檢查發送中斷標志位

TI=0;//令發送中斷標志位為0(軟體清零)

ES=1;//打開穿行中斷

}

/*********************************************************************************************

函數名:UART串口發送字元串函數

調用:UART_S(?);

參數:需要UART串口發送的數據(8位/1位元組)

返回值:無

結果:將參數中的數據發送給UART串口,確認發送完成後退出,採用非中斷方式

備註:

/**********************************************************************************************/

voidUART_S(unsignedchar*str)

{

while(1)

{

if(*str=='')break;

UART_T(*str++);

}

}

/*********************************************************************************************

函數名:主函數

調用:main();

參數:

返回值:無

結果:

備註:

/**********************************************************************************************/

voidmain()

{

unsignedcharBuf_data[]={"welcometoMCUworld. "};

UART_init();

UART_S(Buf_data);

while(1){

if(RX_flag==1)

{

UART_T(UART_RX);

RX_flag=0;

}

}

}

祝願樓主馬到功成

『伍』 關於串口通信的電路問題

這是一個 TTL 和 RS232 電平互換的電路。 完美而實用。

但是,當 MAX232 晶元的價格,可以和白菜相比的時候,這個電路就顯得比較復雜了。

『陸』 幫忙看個單片機串口通信的電路圖。 89c2051 max485

從電路看沒問題,你做通訊的時候,485的使能端是如何控制的?

『柒』 單片機串口多機通信電路如何接!

網路文庫 里 有
單片機C語言程序設計實訓100例 的pdf 文檔

有 模擬圖、源碼

『捌』 我想問下關於單片機與單片機之間串口通信的電路圖

1、最簡單的話,如果距離不是太遠,直接兩個單片機的RXD和TXD交叉相連就行了。

2、如果距離遠一點,用串口也行,你可以查一下RS232電路,TTL轉RS232電平。

『玖』 STM32F103單片機的串列口通信電路和GPRS通信電路怎麼實現

實現單片機模塊與設備模塊之間的串口通訊,首先需要將雙方正確地連接起來。非同步串列通訊是很常用的一種模塊間互連方式,一般會使同三條連接線,分別標記為Tx(或TxD)、Rx(或RxD),以及GND。其中Tx用於數據發送,是輸出信號; Rx用於數據接收,是輸入信亐,GND為公共地線。
題目圖1中的USART1_Rx表示單片機的數據接收端,應該與圖2中的GSM_TxD相連接,而圖1中的∪SART1_Tx表示單片機的數據犮送端,應與圖2中的GSM_RxD相連,單片機的GND與GSM模塊的GND共在一起。然後就是軟體工作,雙方要約定一致的通訊參數(如波特率,數據位,校驗位,停止位等),在單片機一端編寫串口設置程序,並根據GSM模塊的命令集和命令格式編寫控製程序。
需要注意一點,常用的非同步串列通訊介面的電平標准有RS232和TTL,RS232用於遠距離長線連接,而TTL用於短距離連接。這兩者是不可以直接互聯的。如果需要連接,必須先轉換成相同的電平標准。單片機引腳:信號是TTL標準的,而外購模塊串口電平與模塊製造廠家,模塊型號等有關,需要查看模塊的技術說明文件。

閱讀全文

與串口通信電路相關的資料

熱點內容
東成電錘不沖擊的維修視頻 瀏覽:992
海棠實木傢具4門多少錢 瀏覽:876
上海買家電哪裡買 瀏覽:16
哪些地圖可以搜到商家電話號碼 瀏覽:239
太太樂晾衣架維修電話 瀏覽:577
超高速電路 瀏覽:502
武漢神州熱水器維修點 瀏覽:382
不清除底漿怎麼翻新地板磚 瀏覽:691
怎麼檢測海淘硬碟是否翻新 瀏覽:782
繳納維修基金給什麼證明 瀏覽:966
全房電路改造 瀏覽:984
電子電路識圖完全掌握 瀏覽:831
皮行李箱怎麼翻新 瀏覽:763
電腦維修一般維修什麼 瀏覽:116
索尼相機哈爾濱售後維修點 瀏覽:264
傢具氣味刺鼻是甲醛嗎 瀏覽:999
位置檢測電路 瀏覽:4
海寧尖山空調維修電話 瀏覽:525
拖車泵維修視頻 瀏覽:873
怎麼看小米手機維修價格 瀏覽:839