基于CP2200的嵌入式以太網接口設計
本文使用通用型單片機C8051F020、以太網控制CP2200和經過自行裁剪的TCP/IP協議棧,構成了嵌入式系統的以太網接口。
1. 微控制器C8051F020
C8051F020[2]是美國Silabs公司推出的C8051F系列單片機中的通用型單片機。C8051系列是片上系統(SOC)單片機。片上系統(SOC)是把計算機常用的一些數字和模擬外設等全部都做在一塊芯片上,使它成為一個完整的模擬數據采集與控制系統,這使得以8051為內核的單片機上了一個新的臺階。
C8051F020是完全集成的混合信號系統級MCU芯片,100腳TQFP(Thin Quad Flat Packeage)封裝,MCU可在工業溫度范圍(-45℃到+85℃)內工作,具有高速、流水線結構,與8051的微控制器內核CIP-51兼容。
2. 以太網控制器CP2200【1】
CP2200是Silabs(Silicon Laboratories)公司于近期推出的一款針對工業控制領域的以太網控制器,集成了IEEE 802.3以太網媒體訪問控制器(MAC)、10Base-T物理層(PHY)和8KB非易失性FLASH存儲器的單芯片以太網控制[1]器。8位并行總線接口支持Intel和Motorola總線方式,可以使用復用或非復用方式尋址。
CP2200有28腳QFN和48腳TQFP兩種封裝。28腳QFN封裝只支持復用方式尋址。有方式選擇引腳,用于選擇總線接口方式。
CP2200有8KB片內FLASH存儲器,可用于存儲用戶常數、Web服務器內容或作為通用非易失性存儲器。FLASH存儲器的最后6個存儲單元是工廠預編程的唯一48位MAC地址,這樣可以從大多數嵌入式系統的生產過程中消除必不可少的序列化步驟。
CP2200完全兼容100/1000 BASE-T網絡,可以工作在全雙工或半雙工模式,自適應,能進行自動極性檢測和糾正,具有碰撞自動重發功能,能自動填充和生成CRC,支持廣播和多播MAC尋址。工作的溫度范圍在-40°C到+85°C 之間。
CP2200的系統結構圖如圖1所示。
圖1 CP2200的系統結構圖
3. 以太網接口硬件設計
在嵌入式系統中,擴展以太網接口,通常有下面兩種方法【3】:
1.以太網接口由不帶網絡接口控制器的嵌入式處理器和以太網接口芯片組成。以太網接口芯片和嵌入式處理器通過總線相連。此方法通用性強,不受處理器的限制,但由于處理器和網絡通過外部總線交換數據,速度慢。
2.選擇帶有以太網接口的嵌入式處理器。這種方法要求嵌入式處理器有通用的網絡接口控制器。處理器和網絡數據交換通過內部總線,速度快。
這里選用前一種方法來實現嵌入式系統的以太網接口,其主要由C8051F020單片機和單芯片以太網控制器CP2200構成,如圖2所示,單片機控制數據采集和傳輸,以太網控制器CP2200負責將數據發送到因特網或從網絡上接收數據包。
本以太網接口單元是中國民航總局科技基金項目“機場噪聲自動監測與數據傳輸的研究與實現”中Internet接入設備的重要組成部分。Internet接入設備的主要功能是將噪聲數據傳送到Internet局域網上。單片機將從現場采集的數據,通過以太網控制器芯片發送到Internet上,以太網服務器端接收該數據包.服務器發送數據的流向與之相反,來自服務器的以太網幀數據,通過RJ45接口送到以太網控制器,處理后的數據包再送入單片機協議棧。
圖2 以太網接口結構框圖
這里使用的是48引腳的CP2200,這樣可以不用工作在復用模式。單片機C8051F020與以太網控制器CP2200采用并口相連接,CP2200有一個8位的并行主機接口用于訪問該設備上的直接寄存器。串行口代表數據采集,CP2200通過RJ45接口接入Internet網。
評論