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

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

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

RS485通信方式分析 了解485通信也就基本了解了422通信

lPCU_elecfans ? 來源:未知 ? 作者:風(fēng)拂柳絮 ? 2018-11-21 09:57 ? 次閱讀

(本文為電子發(fā)燒友網(wǎng)用戶風(fēng)拂柳絮原創(chuàng)稿件)眾所周知,串口數(shù)據(jù)通訊方式有單工模式、半雙工模式以及全雙工模式。單工模式:只支持數(shù)據(jù)在一個方向上傳輸;半雙工模式:允許數(shù)據(jù)在兩個方向上傳輸,但某一時刻只允許在一個方向上傳輸;全雙工模式:同時在兩個方向上傳輸,是兩個單工通信的結(jié)合,要求發(fā)送設(shè)備和接收設(shè)備同時具有獨立的接收和發(fā)送能力。

例如我們常見的RS232、RS485、RS422串口通訊方式,其中RS232是全雙工的,RS485是半雙工的,RS422是全雙工的,當(dāng)然兩個半雙工的485可以組成422通信方式。下面就講一下今天的重點RS485通信方式,了解了485通信也就基本了解了422通信。

先介紹一下RS485的電氣特性,RS485采用差分傳輸?shù)姆绞?,邏輯?”以兩線間的電壓差為+(2~6)V表示;邏輯“0”以兩線間的電壓差為-(2~6)V表示。接口信號電平比RS232降低了,不易損壞接口電路的芯片,且該電平與TTL電平兼容,可方便與TTL電路連接。

傳輸速率高,抗干擾能力強,并且可以大大延長通信距離,比如RS232傳輸距離一般是30米,而采用RS485,完全不需要修改程序,通信距離可以達到1200米(9600bps)。且RS485一般最大支持32個節(jié)點,實現(xiàn)多節(jié)點收發(fā)。特制的485芯片可以實現(xiàn)更多節(jié)點收發(fā)。

既然RS485通信這么優(yōu)秀,那么就開始今天的實例吧。

首先本次實例選用的是STM32F107VCT6,如圖一所示,以及圖二所分配給485通信的

管腳,本次PA2作為單片機的發(fā)送端,PA3作為單片機的接收端,PA1作為接收和發(fā)送使能的控制端。板子上輸出的A2、B2引腳分別接DB9的T/R+、T/R-,此處針對不同的DB9接腳

位置不一樣,讀者注意辨別。硬件電路到這里就基本完成。

下面是軟件調(diào)試部分,

Step1,在對應(yīng)的配置里找到Device中找到本次的芯片類型F107VC,當(dāng)然不同的芯片選型一定要正確。

Step2,在對應(yīng)的宏定義里面將圓圈處改成CL。因為此次芯片flash是256K,屬于小芯片容量。

Step3,配置jlink驅(qū)動,選擇四線的SW模式,四線分別是3.3v,SWDIO,SWCLK,GND??吹絊WDevice中出現(xiàn)此次圓圈處的型號,并點擊Flash Download出現(xiàn)下圖的界面看看芯片選型是不是256k,不是點擊Add添加,選擇256k的flash size即可,然后一些列OK就行。

Step4,主函數(shù)的編寫,當(dāng)然此次省略了新建工程等一些列操作,不懂的可以百度有步驟指示,主函數(shù)程序很簡單,一個中斷配置函數(shù),一個485初始化函數(shù),當(dāng)然485初始化函數(shù)里包括很多配置,具體的往下看,延時函數(shù)此次可以不用。主函數(shù)就是一個發(fā)送接收使能的切換(RS485_TX_EN)和一個發(fā)送函數(shù)。

Step5,對485初始化函數(shù)進行定義,管腳的配置,此處是PA2輸出,PA3輸入,PA1是使能位,具體可參看上面原理圖,同時在此函數(shù)中對波特率以及串口的中斷進行了配置。

Step6,485發(fā)送函數(shù)及中斷函數(shù)進行了定義,由于此次沒有使用外部中斷,而是采用了內(nèi)部中斷的方式,在串口2中斷中將接收到的數(shù)據(jù)保存在receive數(shù)組中,并定義了包頭和包位分別為0xAA,0xBB,并設(shè)置發(fā)送數(shù)據(jù)長度為6,不滿足次三個條件的數(shù)據(jù)是無法發(fā)送的串口調(diào)試助手的,當(dāng)然時刻要注意使能位(RS485_TX_EN)為1還是為0,為1則485發(fā)送,為0則485接收,因為485是半雙工,前面已經(jīng)講到,某一時刻只能接收或者發(fā)送。并在頭文件中將相應(yīng)的函數(shù)以及數(shù)組定義成全局。

Step7,最后就是最緊張的測試環(huán)節(jié),將串口調(diào)試助手圓圈里的配置調(diào)成與代碼的配置一樣的形式,并將發(fā)送數(shù)據(jù)的格式改成帶有包頭AA包尾BB中間4位數(shù)據(jù)格式的形式發(fā)送,點擊發(fā)送,就可以在串口調(diào)試助手中收到此次的數(shù)據(jù),當(dāng)然如果不滿足包頭和包位分別為0xAA,0xBB,發(fā)送數(shù)據(jù)長度為6的格式,將不會在串口助手中收到數(shù)據(jù),讀者可以自行嘗試,版面有限,不多說明。

Step8,本人才疏學(xué)淺,屬于剛摸索單片機階段,可能在很多地方不盡完美,希望大佬們多批評指正,不吝賜教,本人在此先謝謝大家。

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

    關(guān)注

    18

    文章

    5880

    瀏覽量

    135328
  • RS485
    +關(guān)注

    關(guān)注

    39

    文章

    1127

    瀏覽量

    81776

原文標題:8個步驟,教你輕松搞定485通訊小實例(燒友原創(chuàng))

文章出處:【微信號:elecfans,微信公眾號:電子發(fā)燒友網(wǎng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    不能用RS485通信方式通信

    RS422通信方式都能正常通信使用串口調(diào)試助手智能RS422方式
    發(fā)表于 10-11 06:31

    RS485通信原理是什么?RS485應(yīng)用存在哪些問題?

    RS485特點是什么?RS485通信原理是什么?RS485應(yīng)用存在哪些問題?
    發(fā)表于 05-20 06:06

    RS485通信硬件實現(xiàn)

    閱讀目錄1、RS485簡介 2、RS485特性3、RS485通信硬件實現(xiàn)4、RS485通信軟件實
    發(fā)表于 08-19 08:20

    RS485通信與Modbus協(xié)議的特點

    RS485通信與Modbus協(xié)議 附源碼及視頻教程下載RS485通信的特點1、采用差分信號。2、RS485
    發(fā)表于 11-30 07:05

    RS485通信電纜選型經(jīng)驗值推薦

    RS485通信電纜選型經(jīng)驗值推薦:關(guān)于RS485通信電纜長度和電纜截面積的對應(yīng),在傳輸速率9600bps及以下,經(jīng)驗值有如下的推薦:工業(yè)自動化常用國產(chǎn)
    發(fā)表于 09-03 08:27 ?148次下載

    RS485通信協(xié)議

    RS485通信協(xié)議 、RS485 通信協(xié)議1.概述C320 系列變頻器提供標準RS485 通信
    發(fā)表于 04-07 17:26 ?89次下載

    什么是RS485通信 RS485接口 RS232接口

    什么是RS485通信接口 通信概述   通信設(shè)備從早期的郵件,電報,電話,傳真,傳呼機,手機,電腦,一路發(fā)展
    發(fā)表于 12-08 21:05 ?15.4w次閱讀
    什么是<b class='flag-5'>RS485</b><b class='flag-5'>通信</b> <b class='flag-5'>RS485</b>接口 <b class='flag-5'>RS</b>232接口

    RS485通信經(jīng)典電路

    RS485通信經(jīng)典電路 采用
    發(fā)表于 10-20 08:23 ?6264次閱讀
    <b class='flag-5'>RS485</b><b class='flag-5'>通信</b>經(jīng)典電路

    全雙工RS485通信硬件原理圖

    全雙工RS485通信硬件原理圖
    發(fā)表于 05-16 16:24 ?1.6w次閱讀
    全雙工<b class='flag-5'>RS485</b><b class='flag-5'>通信</b>硬件原理圖

    基于RS485通信方式的多單片機控制系統(tǒng)_邰鳴

    基于RS485通信方式的多單片機控制系統(tǒng),學(xué)習(xí)單片機485通信的好資料?。。?!
    發(fā)表于 06-06 10:00 ?17次下載

    RS485通信和Modbus協(xié)議

    隨著工業(yè)應(yīng)用通信越來越多,1979年施耐德電氣制定了一個用于工業(yè)現(xiàn)場的總線協(xié)議Modbus協(xié)議,現(xiàn)在工業(yè)中使用RS485通信場合很多都采用Modbus協(xié)議,本文講解RS485
    發(fā)表于 01-03 18:09 ?2.9w次閱讀
    <b class='flag-5'>RS485</b><b class='flag-5'>通信</b>和Modbus協(xié)議

    RS485通信原理圖及程序?qū)嵗斀?/a>

    RS485通信原理圖及程序?qū)嵗斀?,具體的跟隨小編一起來了解一下。
    的頭像 發(fā)表于 07-24 10:03 ?23w次閱讀
    <b class='flag-5'>RS485</b><b class='flag-5'>通信</b>原理圖及程序?qū)嵗斀? />    </a>
</div>                            <div   id=

    RS485通信原理視頻教程免費下載

    本文檔的主要內(nèi)容詳細介紹的是RS485通信原理視頻教程免費下載。
    發(fā)表于 07-04 16:58 ?44次下載
    <b class='flag-5'>RS485</b><b class='flag-5'>通信</b>原理視頻教程免費下載

    RS485通信的詳細資料講解

    本文檔的主要內(nèi)容詳細介紹的是RS485通信的詳細資料講解包括了:RS485基礎(chǔ),通訊協(xié)議,通訊案例,超級終端
    發(fā)表于 11-09 08:00 ?31次下載
    <b class='flag-5'>RS485</b><b class='flag-5'>通信</b>的詳細資料講解

    如何提高RS485通信的可靠性?

    在現(xiàn)代工業(yè)自動化和智能化的發(fā)展進程中,RS485通信作為一種常用的串行通信標準,因其具有傳輸距離遠、支持多點通信等優(yōu)點而被廣泛應(yīng)用。然而,在實際應(yīng)用中,
    的頭像 發(fā)表于 09-20 08:07 ?50次閱讀
    如何提高<b class='flag-5'>RS485</b><b class='flag-5'>通信</b>的可靠性?