基于RTL8019AS的串口與以太網接口轉換器
0引言
本文引用地址:http://butianyuan.cn/article/266270.htm隨著互聯(lián)網應用的日益普及,信息共享程度的不斷提高,以單片機為中心的數(shù)據(jù)采集、檢測控制等系統(tǒng)接入網絡共享信息已成為一種趨勢,傳統(tǒng)的互聯(lián)網的應用正從以PC機為中心的時代逐漸轉到以單片機系統(tǒng)為中心的時代。
但是,目前在工業(yè)控制領域,單片機系統(tǒng)主要通過RS-232、RS-485和CAN總線協(xié)議通信,它們無法直接于互聯(lián)網連接,因此,系統(tǒng)處于與互聯(lián)網隔絕的狀態(tài)。這些系統(tǒng)廣泛采用低成本的8位單片機,而這種單片機一般只具有RS-232異步串行通信接口,要想接入互聯(lián)網必須進行通信接口改造,這種改造不僅是接口的物理改造,關鍵是數(shù)據(jù)格式的改造和通信協(xié)議的轉換。因此,本文提出一種RS-232串行通信接口與RJ45以太網接口轉換器的設計方案,已有的單片機系統(tǒng)可以通過該轉換器接入以太網,進一步接入互聯(lián)網,這種方案對研發(fā)嵌入式網絡系統(tǒng)也有借鑒作用。
1轉換器的總體結構和工作過程
RS-232串口與RJ45網絡接口轉換器由控制單元、網絡接口單元、電源單元組成,總體結構見圖1。其中,控制單元負責數(shù)據(jù)的收發(fā)和數(shù)據(jù)格式的轉換,其核心是單片機;網絡接口單元完成數(shù)據(jù)以太網幀格式的封裝和拆封以及信號的變換;電源單元為控制單元和網絡接口單元提供電源。
單片機系統(tǒng)具有標準的RS-232串行異步通信接口,若要通過轉換器接入互聯(lián)網,一般首先接入局域網,局域網基本采用以太網,再通過以太網接人互聯(lián)網。因此,本文提出的轉換器的網絡接口采用以太網的RJ45接口。如圖2所示。
若數(shù)據(jù)從單片系統(tǒng)發(fā)送到互聯(lián)網,則單片機系統(tǒng)發(fā)送的異步串行數(shù)據(jù)幀經過轉換器后,把數(shù)據(jù)幀轉換成以太網數(shù)據(jù)幀,然后上傳到互聯(lián)網;反之亦然。
2硬件設計
2.1控制單元
該單元由單片機、存儲器和鎖存器等電路組成,如圖3所示。
單片機采用臺灣Winbond公司的8位MCU(微控制器)W78E51,該芯片內部有32kB的大容量程序存儲器,同時提供ISP在線編程功能,方便程序調試以及軟件升。由于W78E51單片機片內RAM十分有限,為了完成數(shù)據(jù)包的接收和處理,在使用過程中為W78E51擴展一片62256外部數(shù)據(jù)存儲器,臨時存儲以太網發(fā)來的數(shù)據(jù)幀和RS-232發(fā)來的數(shù)據(jù),其片選信號/CE連接78E51的P2.7口,/OE和/WE分別連接78E51的/RD和/WR,存儲器62256占用單片機的外部數(shù)據(jù)地址空間0000H~7FFFH,共32 kB;電平轉換芯片MAX232外接少量元件就可實現(xiàn)TTL電平與RS-232電平的轉換。
2.2網絡接口單元
網絡控制單元由以太網控制器、存儲器和耦合隔離變壓器等組成,如圖4所示。
網絡控制器采用RTL8019AS,它是REALTEK公司生產的高集成度專用以太網接口芯片,支持PNP自動探測,內嵌16 kB的SRAM,具有全雙工的通信接口。RTL8019AS是針對ISA總線而設計的,用于實現(xiàn)網絡的物理層協(xié)議,主要包括網絡控制器與網絡電纜的物理連接、MAC(介質訪問控制)、數(shù)據(jù)幀的拆裝、幀的發(fā)送與接收、錯誤校驗、數(shù)據(jù)信號的編/解碼和數(shù)據(jù)的串/并轉換;RTL8019AS的數(shù)據(jù)包發(fā)送/接收過程通過2個DMA操作來完成。本地DMA完成RTL8019As與片內FIFO隊列之間的數(shù)據(jù)傳送,作用是完成控制器和網絡線的數(shù)據(jù)交換;遠程DMA完成RTL8019AS與外部處理器之間的數(shù)據(jù)傳送。
由于RTL8019AS工作于跳線模式,且IOS0、IOS3接高電平,IOS1、IOS2接低電平,決定了RTL8019AS的I/O基地址為240H,單片機W78E51是靠地址總線和讀寫總線對RTL8019AS進行操作的,因此把RTL8019AS地址總線的SA0~SA4和SA6分別與單片機地址總線ADDR8~ADDR12和ADDR15相連,SA9接高電平,SA5、SA7、SA8和SA10~SA19全部接地,RTL8019AS的I/O基地址240H映射到單片機地址的8000H,這樣W78E51對片外數(shù)據(jù)存儲器8000H的訪問就可實現(xiàn)對RTL8019AS基址的操作。RTL8019AS的數(shù)據(jù)發(fā)送、接收引腳TPOUT-、TPOUT-、FPIN-和FPIN+通過隔離濾波變壓器20F-01與以太網RJ45接口相連,耦合隔離變壓器主要具有信號傳輸、阻抗匹配、波形修復、雜波抑制以及高電壓隔離等作用。 利用W78E51控制RTL8019AS的各項操作,網絡數(shù)據(jù)流通過RJ45接口進入RTL8019AS的緩沖區(qū),然后經過RTL8019AS處理后被W78E51讀入到62256暫存,暫存的數(shù)據(jù)通過RS-232串口傳送到單片機系統(tǒng)或其他設備;在向以太網發(fā)送數(shù)據(jù)時,單片機系統(tǒng)或其他設備經RS-232串口發(fā)送數(shù)據(jù)包至W78E51在62256中開辟的數(shù)據(jù)緩沖區(qū),然后通過遠程DMA操作將組幀后的數(shù)據(jù)寫入RTL8019AS的片SRAM,再經RJ45接口發(fā)送至以太網。
2.3電源單元
為簡化轉換器的結構和成本,電源外置,采用兩種方式供電,一種是采用USB電源供電,另一種是采用+5 V通用電源器供電。轉換器設計了兩種電源接口。
3程序流程
程序流程如圖5所示。
轉換器上電復位后,主程序進入檢測以太網數(shù)據(jù)包的狀態(tài),分析接收到的數(shù)據(jù)包類型做出相應的處理;若單片機系統(tǒng)有數(shù)據(jù)發(fā)送給轉換器,則轉換器進入串行口中斷服務程序,處理接收的串行數(shù)據(jù)包。
4結束語
該轉換器成功應用于某煤礦風機監(jiān)測系統(tǒng)的改造項目上。改造前,只有與風機檢測單片機系統(tǒng)連接的計算機能觀測該風機的運行狀態(tài),改造后,只要接入礦區(qū)局域網的計算機都可以觀測到風機的運行狀態(tài)。
雖然該轉換器基本上實現(xiàn)了單片機系統(tǒng)與以太網的通信,但是轉換器的功能比較簡單,若能把http協(xié)議嵌入到轉換器,通過Web的方式通信會更好。
51單片機相關文章:51單片機教程
存儲器相關文章:存儲器原理
評論