基于CP2200的嵌入式以太網(wǎng)接口設(shè)計(jì)
發(fā)布時(shí)間:2008/8/27 0:00:00 訪問(wèn)次數(shù):781
由于嵌入式技術(shù)和網(wǎng)絡(luò)技術(shù)的迅速發(fā)展,以太網(wǎng)接口在嵌入式系統(tǒng)中的應(yīng)用越來(lái)越廣泛,以太網(wǎng)接口不僅通信速度快,傳輸可靠,使用和配置方便,而且不受地域限制(廣域網(wǎng)和局域網(wǎng)均可)。但通常使用的以太網(wǎng)控制器如rtl8019、dm9008、ax88796l cs8900a 、lan91c111等都是為個(gè)人專用計(jì)算機(jī)系統(tǒng)設(shè)計(jì)的,這些器件不僅接口電路復(fù)雜,體積厚度較大,而且比較昂貴。silabs(silicon laboratories)公司的獨(dú)立單芯片以太網(wǎng)控制器cp2200是工業(yè)界體積最小、性能最高的單芯片10base-t以太網(wǎng)控制器, cp2200可以為具有11個(gè)以上端口i/o引腳的任何微控制器或主處理器增加以太網(wǎng)通信功能【1】。
本文使用通用型單片機(jī)c8051f020、以太網(wǎng)控制cp2200和經(jīng)過(guò)自行裁剪的tcp/ip協(xié)議棧,構(gòu)成了嵌入式系統(tǒng)的以太網(wǎng)接口。
1. 微控制器c8051f020
c8051f020[2]是美國(guó)silabs公司推出的c8051f系列單片機(jī)中的通用型單片機(jī)。c8051系列是片上系統(tǒng)(soc)單片機(jī)。片上系統(tǒng)(soc)是把計(jì)算機(jī)常用的一些數(shù)字和模擬外設(shè)等全部都做在一塊芯片上,使它成為一個(gè)完整的模擬數(shù)據(jù)采集與控制系統(tǒng),這使得以8051為內(nèi)核的單片機(jī)上了一個(gè)新的臺(tái)階。
c8051f020是完全集成的混合信號(hào)系統(tǒng)級(jí)mcu芯片,100腳tqfp(thin quad flat packeage)封裝,mcu可在工業(yè)溫度范圍(-45℃到+85℃)內(nèi)工作,具有高速、流水線結(jié)構(gòu),與8051的微控制器內(nèi)核cip-51兼容。
2. 以太網(wǎng)控制器cp2200【1】
cp2200是silabs(silicon laboratories)公司于近期推出的一款針對(duì)工業(yè)控制領(lǐng)域的以太網(wǎng)控制器,集成了ieee 802.3以太網(wǎng)媒體訪問(wèn)控制器(mac)、10base-t物理層(phy)和8kb非易失性flash存儲(chǔ)器的單芯片以太網(wǎng)控制[1]器。8位并行總線接口支持intel和motorola總線方式,可以使用復(fù)用或非復(fù)用方式尋址。
cp2200有28腳qfn和48腳tqfp兩種封裝。28腳qfn封裝只支持復(fù)用方式尋址。有方式選擇引腳,用于選擇總線接口方式。
cp2200有8kb片內(nèi)flash存儲(chǔ)器,可用于存儲(chǔ)用戶常數(shù)、web服務(wù)器內(nèi)容或作為通用非易失性存儲(chǔ)器。flash存儲(chǔ)器的最后6個(gè)存儲(chǔ)單元是工廠預(yù)編程的唯一48位mac地址,這樣可以從大多數(shù)嵌入式系統(tǒng)的生產(chǎn)過(guò)程中消除必不可少的序列化步驟。
cp2200完全兼容100/1000 base-t網(wǎng)絡(luò),可以工作在全雙工或半雙工模式,自適應(yīng),能進(jìn)行自動(dòng)極性檢測(cè)和糾正,具有碰撞自動(dòng)重發(fā)功能,能自動(dòng)填充和生成crc,支持廣播和多播mac尋址。工作的溫度范圍在-40°c到+85°c 之間。
cp2200的系統(tǒng)結(jié)構(gòu)圖如圖1所示。
圖1 cp2200的系統(tǒng)結(jié)構(gòu)圖
3. 以太網(wǎng)接口硬件設(shè)計(jì)
在嵌入式系統(tǒng)中,擴(kuò)展以太網(wǎng)接口,通常有下面兩種方法【3】:
1.以太網(wǎng)接口由不帶網(wǎng)絡(luò)接口控制器的嵌入式處理器和以太網(wǎng)接口芯片組成。以太網(wǎng)接口芯片和嵌入式處理器通過(guò)總線相連。此方法通用性強(qiáng),不受處理器的限制,但由于處理器和網(wǎng)絡(luò)通過(guò)外部總線交換數(shù)據(jù),速度慢。
2.選擇帶有以太網(wǎng)接口的嵌入式處理器。這種方法要求嵌入式處理器有通用的網(wǎng)絡(luò)接口控制器。處理器和網(wǎng)絡(luò)數(shù)據(jù)交換通過(guò)內(nèi)部總線,速度快。
這里選用前一種方法來(lái)實(shí)現(xiàn)嵌入式系統(tǒng)的以太網(wǎng)接口,其主要由c8051f020單片機(jī)和單芯片以太網(wǎng)控制器cp2200構(gòu)成,如圖2所示,單片機(jī)控制數(shù)據(jù)采集和傳輸,以太網(wǎng)控制器cp2200負(fù)責(zé)將數(shù)據(jù)發(fā)送到因特網(wǎng)或從網(wǎng)絡(luò)上接收數(shù)據(jù)包。
本以太網(wǎng)接口單元是中國(guó)民航總局科技基金項(xiàng)目“機(jī)場(chǎng)噪聲自動(dòng)監(jiān)測(cè)與數(shù)據(jù)傳輸?shù)难芯颗c實(shí)現(xiàn)”中internet接入設(shè)備的重要組成部分。internet接入設(shè)備的主要功能是將噪聲數(shù)據(jù)傳送到internet局域網(wǎng)上。單片機(jī)將從現(xiàn)場(chǎng)采集的數(shù)據(jù),通過(guò)以太網(wǎng)控制器芯片發(fā)送到internet上,以太網(wǎng)服務(wù)器端接收該數(shù)據(jù)包.服務(wù)器發(fā)送數(shù)據(jù)的流向與之相反,來(lái)自服務(wù)器的以太網(wǎng)幀數(shù)據(jù),通過(guò)rj45接口送到以太網(wǎng)控制器,處理后的數(shù)據(jù)包再送入單片機(jī)協(xié)議棧。
圖2 以太網(wǎng)接口結(jié)構(gòu)框圖
這里使用的是48引腳的cp2200,這樣可以不用工作在復(fù)用模式。單片機(jī)c8051f020與以太網(wǎng)控制器cp2200采用并口相連接,cp2200有一個(gè)8位的并行主機(jī)接口用于訪問(wèn)該設(shè)備上的直接寄存器。串行口代表數(shù)據(jù)采集,cp2200通過(guò)rj45接口接入internet網(wǎng)。
4. 以太網(wǎng)接口軟件設(shè)計(jì)
4.1 cp2200驅(qū)動(dòng)程序
以太網(wǎng)中,網(wǎng)絡(luò)接口就是一個(gè)以太網(wǎng)控制芯片及其驅(qū)動(dòng)程序。以太網(wǎng)接口驅(qū)動(dòng)程序包含管理控制器芯片與網(wǎng)絡(luò)協(xié)議棧中上一層之間通信的程序代碼,為了在以太網(wǎng)上傳送ip數(shù)據(jù)報(bào),ip層將數(shù)據(jù)報(bào)傳遞給以太網(wǎng)控制器的驅(qū)動(dòng)程序,驅(qū)動(dòng)程序指示以太網(wǎng)控制器傳送以太網(wǎng)幀。在接收來(lái)自網(wǎng)絡(luò)的ip數(shù)據(jù)報(bào)時(shí),以太網(wǎng)控制器檢查
由于嵌入式技術(shù)和網(wǎng)絡(luò)技術(shù)的迅速發(fā)展,以太網(wǎng)接口在嵌入式系統(tǒng)中的應(yīng)用越來(lái)越廣泛,以太網(wǎng)接口不僅通信速度快,傳輸可靠,使用和配置方便,而且不受地域限制(廣域網(wǎng)和局域網(wǎng)均可)。但通常使用的以太網(wǎng)控制器如rtl8019、dm9008、ax88796l cs8900a 、lan91c111等都是為個(gè)人專用計(jì)算機(jī)系統(tǒng)設(shè)計(jì)的,這些器件不僅接口電路復(fù)雜,體積厚度較大,而且比較昂貴。silabs(silicon laboratories)公司的獨(dú)立單芯片以太網(wǎng)控制器cp2200是工業(yè)界體積最小、性能最高的單芯片10base-t以太網(wǎng)控制器, cp2200可以為具有11個(gè)以上端口i/o引腳的任何微控制器或主處理器增加以太網(wǎng)通信功能【1】。
本文使用通用型單片機(jī)c8051f020、以太網(wǎng)控制cp2200和經(jīng)過(guò)自行裁剪的tcp/ip協(xié)議棧,構(gòu)成了嵌入式系統(tǒng)的以太網(wǎng)接口。
1. 微控制器c8051f020
c8051f020[2]是美國(guó)silabs公司推出的c8051f系列單片機(jī)中的通用型單片機(jī)。c8051系列是片上系統(tǒng)(soc)單片機(jī)。片上系統(tǒng)(soc)是把計(jì)算機(jī)常用的一些數(shù)字和模擬外設(shè)等全部都做在一塊芯片上,使它成為一個(gè)完整的模擬數(shù)據(jù)采集與控制系統(tǒng),這使得以8051為內(nèi)核的單片機(jī)上了一個(gè)新的臺(tái)階。
c8051f020是完全集成的混合信號(hào)系統(tǒng)級(jí)mcu芯片,100腳tqfp(thin quad flat packeage)封裝,mcu可在工業(yè)溫度范圍(-45℃到+85℃)內(nèi)工作,具有高速、流水線結(jié)構(gòu),與8051的微控制器內(nèi)核cip-51兼容。
2. 以太網(wǎng)控制器cp2200【1】
cp2200是silabs(silicon laboratories)公司于近期推出的一款針對(duì)工業(yè)控制領(lǐng)域的以太網(wǎng)控制器,集成了ieee 802.3以太網(wǎng)媒體訪問(wèn)控制器(mac)、10base-t物理層(phy)和8kb非易失性flash存儲(chǔ)器的單芯片以太網(wǎng)控制[1]器。8位并行總線接口支持intel和motorola總線方式,可以使用復(fù)用或非復(fù)用方式尋址。
cp2200有28腳qfn和48腳tqfp兩種封裝。28腳qfn封裝只支持復(fù)用方式尋址。有方式選擇引腳,用于選擇總線接口方式。
cp2200有8kb片內(nèi)flash存儲(chǔ)器,可用于存儲(chǔ)用戶常數(shù)、web服務(wù)器內(nèi)容或作為通用非易失性存儲(chǔ)器。flash存儲(chǔ)器的最后6個(gè)存儲(chǔ)單元是工廠預(yù)編程的唯一48位mac地址,這樣可以從大多數(shù)嵌入式系統(tǒng)的生產(chǎn)過(guò)程中消除必不可少的序列化步驟。
cp2200完全兼容100/1000 base-t網(wǎng)絡(luò),可以工作在全雙工或半雙工模式,自適應(yīng),能進(jìn)行自動(dòng)極性檢測(cè)和糾正,具有碰撞自動(dòng)重發(fā)功能,能自動(dòng)填充和生成crc,支持廣播和多播mac尋址。工作的溫度范圍在-40°c到+85°c 之間。
cp2200的系統(tǒng)結(jié)構(gòu)圖如圖1所示。
圖1 cp2200的系統(tǒng)結(jié)構(gòu)圖
3. 以太網(wǎng)接口硬件設(shè)計(jì)
在嵌入式系統(tǒng)中,擴(kuò)展以太網(wǎng)接口,通常有下面兩種方法【3】:
1.以太網(wǎng)接口由不帶網(wǎng)絡(luò)接口控制器的嵌入式處理器和以太網(wǎng)接口芯片組成。以太網(wǎng)接口芯片和嵌入式處理器通過(guò)總線相連。此方法通用性強(qiáng),不受處理器的限制,但由于處理器和網(wǎng)絡(luò)通過(guò)外部總線交換數(shù)據(jù),速度慢。
2.選擇帶有以太網(wǎng)接口的嵌入式處理器。這種方法要求嵌入式處理器有通用的網(wǎng)絡(luò)接口控制器。處理器和網(wǎng)絡(luò)數(shù)據(jù)交換通過(guò)內(nèi)部總線,速度快。
這里選用前一種方法來(lái)實(shí)現(xiàn)嵌入式系統(tǒng)的以太網(wǎng)接口,其主要由c8051f020單片機(jī)和單芯片以太網(wǎng)控制器cp2200構(gòu)成,如圖2所示,單片機(jī)控制數(shù)據(jù)采集和傳輸,以太網(wǎng)控制器cp2200負(fù)責(zé)將數(shù)據(jù)發(fā)送到因特網(wǎng)或從網(wǎng)絡(luò)上接收數(shù)據(jù)包。
本以太網(wǎng)接口單元是中國(guó)民航總局科技基金項(xiàng)目“機(jī)場(chǎng)噪聲自動(dòng)監(jiān)測(cè)與數(shù)據(jù)傳輸?shù)难芯颗c實(shí)現(xiàn)”中internet接入設(shè)備的重要組成部分。internet接入設(shè)備的主要功能是將噪聲數(shù)據(jù)傳送到internet局域網(wǎng)上。單片機(jī)將從現(xiàn)場(chǎng)采集的數(shù)據(jù),通過(guò)以太網(wǎng)控制器芯片發(fā)送到internet上,以太網(wǎng)服務(wù)器端接收該數(shù)據(jù)包.服務(wù)器發(fā)送數(shù)據(jù)的流向與之相反,來(lái)自服務(wù)器的以太網(wǎng)幀數(shù)據(jù),通過(guò)rj45接口送到以太網(wǎng)控制器,處理后的數(shù)據(jù)包再送入單片機(jī)協(xié)議棧。
圖2 以太網(wǎng)接口結(jié)構(gòu)框圖
這里使用的是48引腳的cp2200,這樣可以不用工作在復(fù)用模式。單片機(jī)c8051f020與以太網(wǎng)控制器cp2200采用并口相連接,cp2200有一個(gè)8位的并行主機(jī)接口用于訪問(wèn)該設(shè)備上的直接寄存器。串行口代表數(shù)據(jù)采集,cp2200通過(guò)rj45接口接入internet網(wǎng)。
4. 以太網(wǎng)接口軟件設(shè)計(jì)
4.1 cp2200驅(qū)動(dòng)程序
以太網(wǎng)中,網(wǎng)絡(luò)接口就是一個(gè)以太網(wǎng)控制芯片及其驅(qū)動(dòng)程序。以太網(wǎng)接口驅(qū)動(dòng)程序包含管理控制器芯片與網(wǎng)絡(luò)協(xié)議棧中上一層之間通信的程序代碼,為了在以太網(wǎng)上傳送ip數(shù)據(jù)報(bào),ip層將數(shù)據(jù)報(bào)傳遞給以太網(wǎng)控制器的驅(qū)動(dòng)程序,驅(qū)動(dòng)程序指示以太網(wǎng)控制器傳送以太網(wǎng)幀。在接收來(lái)自網(wǎng)絡(luò)的ip數(shù)據(jù)報(bào)時(shí),以太網(wǎng)控制器檢查
熱門(mén)點(diǎn)擊
- 基于嵌入式處理器的電力諧波多功能實(shí)時(shí)分析系統(tǒng)
- VxWorks下實(shí)時(shí)多任務(wù)程序的實(shí)現(xiàn)
- 基于ARM9處理器的智能導(dǎo)游儀設(shè)計(jì)
- ARM、DSP、FPGA的特點(diǎn)和區(qū)別
- 基于CP2200的嵌入式以太網(wǎng)接口設(shè)計(jì)
- ucos-ii在嵌入式智能視覺(jué)監(jiān)控系統(tǒng)中的應(yīng)
- ARM/uClinux應(yīng)用程序的開(kāi)發(fā)
- 基于S3C2410的Windows CE 5
- 基于ARM7的LCD設(shè)計(jì)與實(shí)現(xiàn)
- Linux系統(tǒng)在嵌入式DVR中的應(yīng)用
推薦技術(shù)資料
- DFRobot—玩的就是
- 如果說(shuō)新車(chē)間的特點(diǎn)是“靈動(dòng)”,F(xiàn)QPF12N60C那么... [詳細(xì)]
- 扇出型面板級(jí)封裝(FOPLP)
- 全球首款無(wú)掩模光刻系統(tǒng)—DSP
- 紫光閃存E5200 PCIe 5.0 企業(yè)級(jí)
- NAND Flash 技術(shù)和系
- 高性能DIMM 內(nèi)存數(shù)據(jù)技術(shù)封
- PCIe Gen4 SSD主控
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動(dòng)IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機(jī)遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計(jì)
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究