新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于單片機的SRS232/RS485轉換器設計方案

        基于單片機的SRS232/RS485轉換器設計方案

        作者: 時間:2016-11-30 來源:網絡 收藏
        為了便于對分布式的各個現場測控設備實現集中控制,現場總線技術得到了廣泛的應用。RS485總線因其硬件設計和通信協議簡單、控制方便、成本低廉、傳輸距離遠以及可掛接多個從設備等優點而成為目前國內應用較多的現場總線之一。

        目前大多數的分布式現場總線通信系統通常都使用PC機(或工控機)作為主機對各個現場設備進行集中控制和數據傳輸。PC機只有標準的RS232接口,而RS232總線和RS485總線的接口電平不兼容,要實現PC機和RS485總線構成的通信網絡的連接就必須進行RS232和RS485之間的電平轉換。因此,進行RS232/RS485轉換器的設計就顯得很有必要。

        采用單片機進行RS232/RS485轉換器的設計是比較常用的一種方法。傳統的基于單片機設計的RS232/RS485轉換器存在著以下不足之處:

        (1)采用的單片機和外圍器件個數較多,給設計帶來不便,也不利于降低成本,減小體積;

        (2)設置不靈活,不能改變波特率和通信方式,或者更改參數不方便,使通用性受限。

        鑒于以上不足,本文采用宏晶科技公司生產的增強型51單片機STC11F02E為核心設計了一款RS232/RS485轉換器來彌補這些缺陷,降低了成本,減小了體積,同時能夠方便地進行波特率和通信方式的設置,增強了其通用性;而且單片機的可編程方式也方便了轉換器的功能擴展,靈活性大大增強。

        轉換器的總體結構概述

        轉換器主要由三部分組成,分別為:RS232電平轉TTL電平模塊、RS485電平轉TTL電平模塊和單片機主控制模塊。轉換器的總體結構框圖如圖1所示。



        圖1 轉換器總體結構框圖

        RS232電平轉TTL電平模塊用來實現RS232總線和單片機之間的連接,RS485電平轉TTL電平模塊用來實現RS485總線和單片機之間的連接,而單片機主控制模塊起到一個過渡連接的作用,用于協調和控制RS232總線和RS485總線之間的數據傳輸。

        下面詳細闡述這3個模塊的具體硬件電路設計。

        轉換器的硬件電路設計

        RS232電平轉TTL電平模塊的電路設計

        這里采用Maxim公司生產的MAX232電平轉換芯片設計RS232和單片機的電平轉換接口電路。

        MAX232芯片只需用5V的單電源供電,外加4個電容,就可實現RS232電平和TTL電平之間的轉換,可直接驅動RS232總線進行數據傳輸,使用十分方便。采用該芯片可以很容易地實現單片機和RS232總線之間的連接,其最高傳輸速率可達120kbps。

        該模塊的具體電路設計圖如圖2所示。


        圖2 RS232電平轉TTL電平電路

        RS485電平轉TTL電平模塊的電路設計

        該模塊的電路采用Maxim公司生產的RS485接口芯片MAX483E進行設計。

        MAX483E芯片是一款用于RS485和RS422通信的低功耗總線收發器,具有±15kV靜電放電沖擊保護和限擺率驅動特性,減小了電磁干擾和終端電纜反射,允許高達250kbps速率的無差錯數據傳輸。該芯片只需用5V的單電源電壓供電即可正常工作,而且在一條總線上最多可以連接32個負載。利用該芯片可以極大地簡化單片機和RS485總線的接口電路設計。

        該模塊的具體電路設計圖如圖3所示。


        圖3 RS485電平轉TTL電平電路

        單片機主控制模塊的電路設計

        該模塊是轉換器的核心模塊,轉換器的主要功能就是通過該模塊來實現的。整個電路設計也非常簡單,只需一片增強型的51單片機STC11F02E外加一些基本的外圍電路(包括外部晶體振蕩器電路和復位電路)即可完成設計。

        STC11F02E單片機為增強型的8051內核,具有2KB的片內Flash程序存儲器、2KB的EEPROM存儲器和256KB的片內SRAM數據存儲器。這款單片機的UART(Universal Asynchronous Receiver/Transmitter,通用異步收發器)模塊的最大特點就是通過配置特殊功能寄存器AUXR1中的第7位UART_P1的狀態可以使UART模塊的兩個引腳(RXD、TXD)接到P3端口的P3.0、P3.1引腳,或者接到P1端口的P1.6、P1.7引腳,從而可以充當兩個串口使用。這里主要利用該功能來設計RS232/RS485轉換器。

        上一頁 1 2 3 下一頁

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 周至县| 彰化市| 鄂托克旗| 清苑县| 奈曼旗| 保山市| 濮阳市| 井陉县| 溧水县| 沂源县| 遂平县| 灵山县| 平武县| 盐亭县| 武穴市| 若羌县| 临汾市| 滦平县| 万荣县| 伊吾县| 峨眉山市| 英吉沙县| 乌审旗| 湛江市| 奉化市| 陕西省| 沙坪坝区| 余干县| 正安县| 定州市| 福贡县| 阳原县| 宁国市| 三门峡市| 麦盖提县| 鸡泽县| 怀安县| 九台市| 全南县| 瑞金市| 泰和县|