日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

RS-485 通讯

發布時間:2023/12/9 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 RS-485 通讯 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

RS485抗噪音抗干擾能力強、傳輸距離遠、支持多點通信,是工控行業首選串行接口。485規定的電氣特性為2線,半雙工多點通信。采用兩線差分信號傳輸數據,具有抗共模干擾的能力。由于是半雙工模式,因此通訊時需要切換收發狀態。目前常用的485收發切換方案有以下幾種:

1.傳統RS485電路(帶收發控制腳非隔離RS-485電路)
??????? 傳統的485應用電路如下圖所示,采用3線控制,UART_RXD、UART_TXD和收發控制端UART_CON。

?????? 控制策略如下:UART_CON為低電平,485處于接收狀態;UART_CON為高電平,485處于發送狀態。通過切換UART_CON的電平來達到485收發狀態的切換。

2.硬件自收發切換 非隔離RS-485電路

?????? 帶收發控制腳的485在編程時需要切換控制端電平,增加了程序的復雜度。為了編程方便,常常將電路改為如上圖所示的自動收發電路。這種采用分立元件搭建非隔離自動收發RS485電路的優點在于控制簡單,收發控制腳不需要程序干預。

?????? 雖然采用分立元件搭建的非隔離RS485自動收發電路解決了帶收發控制腳非隔離RS485電路編程上操作復雜的問題,但受三極管切換速度、收發器內部接口阻抗等影響,分立元件搭建的自動收發切換電路降低了系統穩定運行的最大波特率。

3.收發切換隔離RS485電路

?????? 帶有隔離電路的485是最穩定的設計,需要選擇隔離485芯片以及隔離電源,此方案成本相對于前兩種方案會高很多。

??????? 下面介紹一種485硬件收發切換電路實例。

?????? 485芯片采用MAX485芯片,電路使用NPN三極管開切換收發。控制原理是:MCU的UART的TX和RX引腳需要連上拉電阻(TX和RX在沒有通信時均是高電平),防止剛上電TX和RX引腳電平不穩定引起收到擾亂數據。A上拉電阻B下拉電阻,終端并聯120歐姆電阻,D10、D11、D12為三個防雷防浪涌的TVS管。

?????? 接收: 默認沒有數據時,UART_TX為高電平,三極管導通,MAX485芯片RE低電平使能,RO接收數據使能,此時從485AB口收到什么數據就會通過RO通道傳到MCU,完成數據接收過程。

?????? 發送: 當發送數據時,UART_TX會有一個下拉的電平,表示開始發送數據,此時三極管截止,DE為高電平發送使能。當發送數據‘0’時,由于DI口連接地,此時數據‘0’就會傳輸到AB口 A-B<0,傳輸‘0’,完成了低電平的傳輸。當發送‘1’時,此時三極管導通,按理說RO使能,此時由于還處在發送數據中,這種狀態下MAX485處于高阻態,此時的狀態通過A上拉B下拉電阻決定,此時A-B>0傳輸‘1’,完成高電平的傳輸。

???????PS: 此時有人肯定也會有疑惑,發送數據‘1’,三極管導通RE低電平有效應該是接收使能,為什么芯片會是高阻狀態?

?????? 因為UART發送收據會有一定的格式,數據均以“位”為最小單位進行傳輸。在收發數據之前,UART之間要約定好數據的傳輸速率(即每位所占據的時間,其倒數為波特率)、數據的傳輸格式(有多少數據位、是否有校驗位、奇校驗還是偶校驗、是否有停止位)。 平時數據線處于“空閑狀態”(1狀態)。當發送數據時,TX由‘1’變為‘0’維持1位的時間,這樣收方檢測開始位后,再等待1.5位時間就開始一位一位的進行數據傳輸。意思是說,已經確定好發送狀態,電路發送‘1’此時RE有效,接收有效但有由于它處于發送階段,此時芯片會處于高阻狀態。

總結

以上是生活随笔為你收集整理的RS-485 通讯的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。