時磊+楊帆



摘要:隨著人民生活水平的不斷提高和科學技術的不斷進步,更加智能化和信息化的電器走進千家萬戶,基于電器網絡化的思想,本文提出了基于51單片機的網口串口轉換模塊,并對模塊的組成進行了介紹,最后在實踐中進行應用,取得了良好的效果,具有一定的推廣前景。
關鍵詞:單片機;RTL8019AS;X5045;以太網
中圖分類號:TP393.05 文獻標識碼:A 文章編號:1007-9416(2017)10-0011-03
近年來,互聯網迎來了日新月異的發展,不僅其用戶日趨增多,且其技術的革新也越來越頻繁,從復雜的儀器儀表到生活中常見的小型電器,都通過各種手段搭上了互聯網的便車,以此來共享網絡中豐富的信息資源。但因網絡設備生產廠家至今沒有形成統一的生產標準,而大部分電子設備都配有RS-232串口,因此互聯互通可通過串口轉換來實現,本文設計了一種基于51單片機的網口串口轉換方法,實現網絡互聯。
1 模塊組成
網口串口轉換模塊由單片機最小系統、單片機管理模塊、單片機與串口接口模塊和單片機與網口接口模塊構成,如圖1所示。
單片機最小系統由單片機、振蕩器電路、復位電路和電源組成。它是單片機系統工作所必須的基礎部件,可以使用市面上常用的51系列單片機,振蕩器電路、復位電路和電源都可以選用最常用的設計方案,在單片機最小系統的基礎上,通過增加其它功能模塊,來達到擴展功能的目的。
單片機管理模塊是轉換模塊的管理與控制中心,以X5045芯片作為單片機管理模塊的核心,它不僅為單片機提供復位信號,還用來存儲以太網的IP地址、MAC地址和子網掩碼等數據,可以通過單片機控制X5045芯片進行讀或寫操作,與單片機接口電路如圖2所示[1]。
2 單片機與網絡接口模塊設計
利用廉價的51單片機控制以太網控制芯片RTL8019AS來實現以太網功能,使得用戶可以通過網絡來達到共享信息資源的目的。
2.1 以太網協議簡介
按其功能共分為七段,以太網的信息格式如表1所示[2]。
其中,數據段(DATA)為承載數據信息,分配較長的46~4500byte,其他段分配固定的字節來實現對應的功能。在以太網傳輸中,單個傳輸數據包的長度必須在60byte到1514byte之間(其中14byte為目的地址、源地址、類型),當傳輸的數據不足60byte時,需要填充字符;超過1514byte時,需拆分成多個數據包來傳輸。同步位、分隔位以及幀校驗序列字段在傳輸時均由以太網控制器自動填充,在接收端,通過控制器檢測同步位和分隔位來實現接收數據。
2.2 RTL8019AS以太網控制器簡介
RTL8019AS是一款產于臺灣、價格低廉、性能優良、使用廣泛的以太網控制器。其主要特點及性能有[3]:
(1)符合EthernetII與IEEE802.3標準(10Base5、10Base2、10BaseT);(2)全雙工模式,速率10Mbps(收發兩端同時);(3)配置了專用于緩沖收發的數據的SRAM(16KB),大大降低了主處理器的工作負荷,能夠實現單片機與以太網通信的功能。
2.3 以太網接口電路設計
編寫程序利用51單片機控制RTL8019AS,實現其以太網功能,使其可與RJ-45接口互聯互通。主要器件有:RTL8019AS、74HC573(8位鎖存)、62256(32K字節的RAM)、LPF濾波器,如圖3所示[4]。
單片機實現以太網功能,首先在程序初始化時,對單片機管理模塊X5045進行配置,設定以太網的IP地址、MAC地址和子網掩碼,這些數據可以通過串口與計算機連接,用軟件進行更改。在RTL8019AS初始化時,寄存器CONFIG1的值設置為00H,其用于選擇I/O基地址的低4位IOS3~0為0,RTL8019AS地址位為:00300H~0031FH,共20位,其I/O基地址為300H。利用ADDR15、I/OW、I/OR可將RTL8019AS和62256的地址空間劃分開,ADDR15接62256的CE腳,低電平時選擇62256;高電平時選擇RTL8019AS的地址空間[5]。地址總線的連接方式如圖3所示,在程序中分配8000H~801FH作為RTL8019AS的地址空間,51單片機的地址為16位。
其網絡接口的電路連接方式如:在RTL8019AS中的10BASE-T收發器的基礎上,外接一個隔離LPF濾波器,TPIN±為接收線,TPOUT±為發送線,對應RJ-45接口的RX±、TX±端。時鐘電路通過T1、T2接一個20MHZ晶振以及2個電容,實現全雙工方式。LED0、LED1為通訊顯示接口,利用發光二極管來實時反映數據傳輸結果:LED0表示通訊故障:LED1表信息傳輸正常。
3 單片機與串口接口模塊設計
RS-232C串口現已內置在大多網絡設備中,比如計算機就采用了標準的RS-232C串口,但是51單片機的輸入、輸出電平為TTL電平,要實現兩者的互聯互通,需要進行相應的電平轉換。根據需求,現設計基于MAX232電平轉換芯片的轉換模塊,從MAX232芯片中兩路發送接收中任選一路作為接口,若T1IN接單片機的發送端TXD,則計算機的接收端RXD一定要對應接T1OUT引腳,同時,R1OUT接單片機的RXD引腳,計算機的RS-232C的發送端TXD對應接R1IN引腳[6]。其接口電路如圖4所示。
4 結語
此網口串口轉換模塊已在實踐中得到應用,收到了良好的效果,該模塊不僅可以實現以太網的基本協議,包括ARP、IP、ICMP、TCP、UDP等數據通信協議,而且只要稍做改造,便可以與RS-422、RS-485等串口進行網口轉換,顯示出了功能強大,易于擴展,應用范圍廣的特點,具有一定的推廣前景。
參考文獻
[1]何立民.MCS—51 單片機應用設計[M].北京:北京航空航天大學出版社,1990.
[2]赫爾德·吉爾伯特.以太網(第三版)[M].北京:人民郵電出版社,2000.
[3]REALTEK半導體公司.RTL8019AS用戶手冊[Z].2000.
[4]溫陽東,何瑄,鄧箐.基于RTL8019AS 的以太網接口單元研究[J].儀器儀表用戶,2006,(3):84-85.
[5]李章林,張立民.TCP/IP 在51 單片機上的實現特點和方法[J].南開大學學報,2003,(8):77-79.
[6]王福瑞.單片微機測控系統設計大全[M].北京:北京航空航天大學出版社,1998.endprint