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