新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 采用C8051F020的RS485串行通信電路設計

        采用C8051F020的RS485串行通信電路設計

        作者: 時間:2016-12-02 來源:網絡 收藏
          隨著計算機技術和測控技術的不斷發展,在以單片機為核心的數據采集系統中,需要實現單片機和計算機之間的數據交換,并以此來發揮單片機和計算機各自的長處,提升整個系統的性能價格比。在計算機網絡和工業控制系統中,經常需要采用串行通信來實現遠程數據傳輸。

        目前,有多種接口標準可用于串行通信,包括RS232、RS422、RS485等。RS232是最早的串行接口標準,在短距離、較低波特率串行通信中得到了廣泛應用。但是,RS232 通信存在著傳輸速度慢、傳輸距離短、信號容易受到干擾等不足,其應用局限性已日益突出。而RS485 通信采用差分方式來消除噪聲,即信號在發送前會分解為正負2 條線路,當到達接收端時將信號相減,使噪聲相互抵消,還原成原來的信號,這種方式對共模干擾抑制能力較強,已廣泛應用于工業控制等領域。

        本文引用地址:http://www.104case.com/article/201612/325064.htm

          要實現單片機與計算機之間的RS485通信,一般可以采用2 種方法:一種方法是在單片機與計算機兩端分別采用RS232與RS485 電平轉換裝置;另一種方法是采用RS485通信卡,并將其插在計算機主板上。采用前一種方法的優點是硬件裝置安裝簡便,軟件編程相對簡單;缺點是通信速率被限制在20 kb/s以內。第二種方法的優點是通信距離較遠,速率較高,可達10 Mb/s;缺點是需要安裝通訊卡和驅動程序,并進行必要的設置。本文采用第二種方法。

          電路設計

          采用UART 串行總線進行通信,因為UART 是一種廣泛應用于遠距離、低速率、低成本通信的串行傳輸接口,由于其具有數據線少的特點,在數字系統設計中得到了大量應用。基本的UART 通信只需要兩根數據線(RXD、TXD)即可完成數據的相互通信,接收和發送都是全雙工形式,其中RXD 是接收端,TXD 是發送端。

          

          C8051F020單片機有2 個UART(UART0 和UARTl),以UART0 為例,它的TxD 和RXD 分別與數字I/0 引腳PO.O 和PO.1 復用,通過交叉開關配置寄存器進行選擇。由于MAX485工作在半雙工狀態,它與單片機連接時的接線比較簡單,只需要用單片機某一個引腳(如PO.2)來控制RE 和DE 這2 個引腳。PCL-846B 通信卡有4 個通道,選擇通道1 與單片機進行通信,另外將通道2 和通道4 進行連接,以自發自收的方式實現通信卡的自檢。單片機與外部電路的連接關系如圖2 所示。

          在使用RS485通信卡進行通信時,當信號傳遞到通信線路兩端時,如果阻抗不匹配,可能會產生信號反射問題。信號反射會造成信號的失真和變形,從而導致通信錯誤。其解決方法就是在通信線路的兩端各連接一個終端匹配電阻,保證阻抗匹配。當通信距離較短, 一般在小于300 m 時,可不使用終端電阻。當通信距離大于300 m 時,應當使用終端電阻,其阻值必須與通信線路的線性阻抗相同。電阻值一般選取120 Ω左右,當通信距離較長時,可以選用300 Ω。



        評論


        技術專區

        關閉
        主站蜘蛛池模板: 西吉县| 吕梁市| 莫力| 博兴县| 胶州市| 大宁县| 桂东县| 满洲里市| 子长县| 剑川县| 滕州市| 华亭县| 临汾市| 原阳县| 万安县| 荥经县| 阳春市| 桑植县| 孝昌县| 山东省| 肇东市| 松江区| 苏尼特左旗| 定陶县| 三明市| 长阳| 淮阳县| SHOW| 延安市| 大足县| 阜阳市| 祥云县| 页游| 漯河市| 攀枝花市| 五大连池市| 卢氏县| 马龙县| 寻甸| 新闻| 阳原县|