技術(shù)頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國(guó)傳動(dòng)網(wǎng) > 技術(shù)頻道 > 技術(shù)百科 > 基于CP2200的嵌入式系統(tǒng)以太網(wǎng)接口設(shè)計(jì)

基于CP2200的嵌入式系統(tǒng)以太網(wǎng)接口設(shè)計(jì)

時(shí)間:2008-09-05 10:31:00來(lái)源:ronggang

導(dǎo)語(yǔ):?本文以ATmega16單片機(jī)和CP2200以太網(wǎng)控制器為主要硬件,TCP/IP為協(xié)議,分析了嵌入式單片機(jī)系統(tǒng)接入以太網(wǎng)的可行性,并闡述了其硬件設(shè)計(jì),軟件設(shè)計(jì)與實(shí)時(shí)性
摘 要:隨著單片機(jī)處理能力不斷增強(qiáng),嵌入式系統(tǒng)也越復(fù)雜,控制系統(tǒng)日趨網(wǎng)絡(luò)化,使基于以太網(wǎng)的嵌入式系統(tǒng)研究成為其技術(shù)發(fā)展的趨勢(shì)。本文以ATmega16單片機(jī)和CP2200以太網(wǎng)控制器為主要硬件,TCP/IP為協(xié)議,分析了嵌入式單片機(jī)系統(tǒng)接入以太網(wǎng)的可行性,并闡述了其硬件設(shè)計(jì),軟件設(shè)計(jì)與實(shí)時(shí)性。 關(guān)鍵詞:以太網(wǎng);單片機(jī);嵌入式系統(tǒng);TCP/IP;實(shí)時(shí)性 1 引言   嵌入式系統(tǒng)是控制、監(jiān)視或輔助設(shè)備、機(jī)器和車間運(yùn)行的裝置,具有軟件代碼小、高度自動(dòng)化、響應(yīng)速度快等特點(diǎn),近年來(lái)被廣泛應(yīng)用于工業(yè)控制系統(tǒng)及通信等領(lǐng)域。嵌入式系統(tǒng)根據(jù)所采用的嵌入式處理器不同可分為兩種:一種是以DSP和32位為微控制器(microcontroller)與微處理器(microprocessor)為主的高端嵌入式系統(tǒng);另一種是8位單片機(jī)作為微控制器的低端嵌入式系統(tǒng)[1]。隨著單片機(jī)的處理速度提高,存儲(chǔ)空間增大,生產(chǎn)工藝改進(jìn),成本降低,及結(jié)構(gòu)簡(jiǎn)單、使用方便等特點(diǎn)與優(yōu)越性,單片機(jī)在未來(lái)的嵌入式系統(tǒng)應(yīng)用中仍有很大的發(fā)展空間。同時(shí),控制系統(tǒng)越來(lái)越復(fù)雜,功能需求不斷增多,多個(gè)嵌入式單片機(jī)系統(tǒng)之間需要相互進(jìn)行數(shù)據(jù)通信,工作人員也要對(duì)系統(tǒng)工作情況進(jìn)行監(jiān)控和管理。這就需要嵌入式單片機(jī)系統(tǒng)具有能連接網(wǎng)絡(luò)的功能。但目前大多數(shù)嵌入式系統(tǒng)還處于獨(dú)立應(yīng)用階段,即使進(jìn)行多個(gè)微控制器之間的信息傳遞,也只是利用一些現(xiàn)場(chǎng)總線進(jìn)行組網(wǎng),而這些總線的應(yīng)用有其局域性,各總線間不能兼容,不能實(shí)現(xiàn)更大范圍的連接,而以太網(wǎng)則不受限制。   以太網(wǎng)是目前發(fā)展最成熟、應(yīng)用最廣的局域網(wǎng)技術(shù),將嵌入式設(shè)備通過(guò)常見(jiàn)的集線器、交換機(jī)等設(shè)備接入局域網(wǎng),實(shí)現(xiàn)實(shí)時(shí)的網(wǎng)絡(luò)遠(yuǎn)程控制與管理,已成為嵌入式系統(tǒng)應(yīng)用的技術(shù)發(fā)展趨勢(shì)[2]。在本項(xiàng)目“多維數(shù)控系統(tǒng)”研究中,電火花機(jī)床包括運(yùn)動(dòng)控制部分、脈沖電源部分和操作部分,這些獨(dú)立的嵌入式系統(tǒng)采用現(xiàn)場(chǎng)總線方式進(jìn)行組網(wǎng)。本文以ATmega16單片機(jī)和最新發(fā)布的以太網(wǎng)控制器CP2200為硬件來(lái)實(shí)現(xiàn)各個(gè)嵌入式單片機(jī)系統(tǒng)的聯(lián)網(wǎng)。 2 硬件設(shè)計(jì)   系統(tǒng)硬件構(gòu)成主要由四大模塊組成,其框圖如圖1: [align=center] 圖1 系統(tǒng)硬件框圖[/align]   2.1 單片機(jī)選擇   目前單片機(jī)種類繁多,主要是基于51內(nèi)核或是基于AVR內(nèi)核的單片機(jī)。而基于AVR內(nèi)核的要優(yōu)越于基于普通51內(nèi)核的單片機(jī)。本文使用的是ATMEL公司生產(chǎn)的基于AVR的單片機(jī)ATmega16。AVR單片機(jī)采用精簡(jiǎn)指令集(RISC)和Harvard結(jié)構(gòu)。AVR單片機(jī)一般都帶有看門狗定時(shí)器(watch dog),而看門狗定時(shí)器可便于程序抗干擾,這在工業(yè)控制系統(tǒng)中,以及在網(wǎng)絡(luò)數(shù)據(jù)通信中是很重要的。   ATmega16單片機(jī)的主要特性[3]:   a) 131條指令,大多數(shù)指令執(zhí)行時(shí)間為單個(gè)時(shí)鐘周期;   b) 16K字節(jié)的系統(tǒng)內(nèi)可編程Flash, 512字節(jié)的EEPROM,1K字節(jié)的片內(nèi)SRAM;   c) 兩個(gè)可編程的串行USART,具有獨(dú)立片內(nèi)振蕩器的可編程看門狗定時(shí)器;   d) 兩個(gè)具有獨(dú)立預(yù)分頻器和比較器功能的8位定時(shí)器/計(jì)數(shù)器;一個(gè)具有預(yù)分頻器、比較功能和捕捉功能的16位定時(shí)器/計(jì)數(shù)器,6種睡眠模式。   2.2 以太網(wǎng)控制器選擇   目前大多數(shù)8位的單片機(jī)都不集成有以太網(wǎng)控制器,需通過(guò)專用的以太網(wǎng)控制器才能接入以太網(wǎng)。CP2200以太網(wǎng)控制器采用silabs公司最新生產(chǎn)的單芯片以太網(wǎng)控制器。   CP2200可以提供目前應(yīng)用最廣泛的局域網(wǎng)技術(shù),是業(yè)界體積較小和效能較高的以太網(wǎng)控制器。CP2200最多能夠?qū)⑺璧碾娐钒迕娣e減少90%,讓系統(tǒng)成本和復(fù)雜性減至最少,使得系統(tǒng)更好地連入以太網(wǎng)中。其基本結(jié)構(gòu)如圖2。 [align=center] 圖2 CP2200的基本結(jié)構(gòu)[/align]   CP2200以太網(wǎng)控制器的主要特性如下[4]:   a) 內(nèi)含IEEE802.3并兼容10Base-T以太網(wǎng)媒介存取控制器(MAC)和實(shí)體層(PHY);   b) 預(yù)先設(shè)定了一組獨(dú)一無(wú)二的48位MAC地址,故可以省下多數(shù)嵌入式系統(tǒng)在產(chǎn)品制造過(guò)程中所需執(zhí)行的編程步驟;   c) 支持自動(dòng)協(xié)商功能(auto-negotiation),網(wǎng)絡(luò)通常必須透過(guò)這種機(jī)制了解控制器所支持的以太網(wǎng)功能,沒(méi)有這種機(jī)制或使用者控制開(kāi)關(guān),網(wǎng)絡(luò)就會(huì)選擇預(yù)設(shè)的最低通訊能力而使得應(yīng)用產(chǎn)品的頻寬和效能無(wú)法發(fā)揮;   d)提供高效能的并列式外部?jī)?nèi)存界面,高達(dá)30Mbps的操作速度可大幅縮短通訊時(shí)間,使得搭配的微控制器能以更高效率執(zhí)行通訊協(xié)議或其它程序;   e)能在-40℃到+85℃溫度范圍操作,電流消耗僅70mA,相當(dāng)于其它產(chǎn)品的1/3;   2.3 硬件電路連接設(shè)計(jì)   該部分設(shè)計(jì)提供了ATmega16與CP2200的主要電路連接,提供了一個(gè)RJ-45接口用于連接以太網(wǎng)和一個(gè)串行接口(MAX232)連接下一級(jí)網(wǎng)絡(luò)或者現(xiàn)場(chǎng)設(shè)備。其硬件連接如圖3, [align=center] 圖3 硬件設(shè)計(jì)連接電路圖[/align]   圖中省略了一些抗干擾元件電路與復(fù)位電路設(shè)計(jì)。   ATmega16具有4個(gè)I/O雙向接口(PA,PB,PC,PD),CP2200提供了專門的用于8位模式的地址端口(A0-A7)。這里用ATmega16的PA0-PA7與CP2200的地址端口A0-A7直接相連。端口PC0-PC7與CP200的數(shù)據(jù)總線端口D0-D7直接相連。ATmega16通過(guò)PB0-PB7端口實(shí)現(xiàn)對(duì)CP2200的工作方式控制。引腳SS與CP2200引腳CS相連,實(shí)現(xiàn)片選功能。ATmega16的引腳MISO與MOSI分別和CP2200的引腳RD與WR以相連,實(shí)現(xiàn)單片機(jī)對(duì)以太網(wǎng)控制器的讀寫操作。ATmega16通過(guò)引腳PD14(RXD)、PD15(TXD)分別與MAX232引腳R1OUT、T1IN相連實(shí)現(xiàn)單片機(jī)對(duì)串口的讀寫操作。   CP2200采用Non-Mutiplexed 模式,并支持Intel和Motorola Bus 模式。當(dāng)MUXEN與MOTEN都為低電平時(shí),為Intel模式。CP2200通過(guò)隔離變壓器連接到RJ-45接口,實(shí)現(xiàn)與以太網(wǎng)的連接。CP2200可以使用硬件中斷和軟件中斷,這里使用硬件中斷,故CP2200引腳INT與ATmega16的引腳PB2(INT3)相連。 3 系統(tǒng)軟件分析設(shè)計(jì)   以太網(wǎng)使用802.3標(biāo)準(zhǔn)和TCP/IP協(xié)議。802.3標(biāo)準(zhǔn)位于IOS/OSI的第一層(物理層)和第二層(數(shù)據(jù)鏈路層)。所使用的數(shù)據(jù)傳輸結(jié)構(gòu)為IEEE802.3 幀結(jié)構(gòu)(表1)。   表1 IEEE802.3幀結(jié)構(gòu)
  其中:目的地址是幀發(fā)往的站點(diǎn)地址,每個(gè)站點(diǎn)都有自己唯一的地址;數(shù)據(jù)長(zhǎng)度是要傳送的數(shù)據(jù)的總長(zhǎng)度;協(xié)議首部是數(shù)據(jù)字段的一部分,含有更高層協(xié)議嵌入數(shù)據(jù)字段中的信息;數(shù)據(jù)字節(jié)的長(zhǎng)度可從0-1500個(gè)字節(jié),但必須保證幀不小于64個(gè)字節(jié),否則就要填入填充字節(jié);幀校驗(yàn)采用CRC碼。   TCP/IP協(xié)議采用分層的結(jié)構(gòu)(以O(shè)IS為參考模型),從下到上為物理層、數(shù)據(jù)鏈路層、網(wǎng)絡(luò)層、傳輸層以及應(yīng)用層。物理層與數(shù)據(jù)鏈路層可以有以太網(wǎng)控制器完成。網(wǎng)絡(luò)層包括IP、ARP、ICMP協(xié)議,主要完成IP尋址,負(fù)責(zé)將源主機(jī)的報(bào)文分組發(fā)送到目的主機(jī)。傳輸層包括TCP、UDP,主要功能是負(fù)責(zé)應(yīng)用進(jìn)程之間的端-端通信,目的是在聯(lián)網(wǎng)中源主機(jī)與目的主機(jī)的對(duì)等實(shí)體之間建立用于會(huì)話的端-端連接。用戶的主要程序位于協(xié)議的最高層,即應(yīng)用層,主要用來(lái)完成數(shù)據(jù)的采集與處理,主要協(xié)議有TENET、FTP、SMTP、DNS。   單片機(jī)與以太網(wǎng)控制器之間的通信訪問(wèn)模式有中斷和查詢兩種方式,為了避免主程序的不斷查詢和簡(jiǎn)化程序,可采用中斷方式[5]。在中斷方式下,以太網(wǎng)接入驅(qū)動(dòng)程序主要由以太網(wǎng)控制器中斷服務(wù)程序、發(fā)送數(shù)據(jù)模塊(圖4)和接受數(shù)據(jù)模塊(圖5)組成。在CP2200開(kāi)始工作之前,系統(tǒng)需要對(duì)它進(jìn)行一定的初始化,以確定CP2200的工作模式。 [align=center] 圖4 發(fā)送數(shù)據(jù)模塊 [/align] [align=center] 圖5接受數(shù)據(jù)模塊[/align]   在實(shí)現(xiàn)嵌入式單片機(jī)系統(tǒng)的網(wǎng)絡(luò)互聯(lián)時(shí),除了一些驅(qū)動(dòng)程序外,主要的是要實(shí)現(xiàn)TCP/IP網(wǎng)絡(luò)協(xié)議,主要流程如圖6,它的主要功能是有數(shù)據(jù)要發(fā)送時(shí),生成TCP組和IP組,送于CP2200發(fā)出去;有數(shù)據(jù)接收時(shí),解析IP/TCP組,并送于應(yīng)用層作進(jìn)一步處理。 4 以太網(wǎng)實(shí)時(shí)性問(wèn)題   實(shí)時(shí)性是指系統(tǒng)對(duì)外界激勵(lì)及時(shí)做出響應(yīng)的能力,常用系統(tǒng)對(duì)外界激勵(lì)的響應(yīng)時(shí)間定量描述。以太網(wǎng)采用的是一種隨機(jī)訪問(wèn)協(xié)議,即載波偵察聽(tīng)多路訪問(wèn)/沖突檢測(cè)—CSMA/CD。在通信負(fù)載較小的條件下,CSMA/CD法的響應(yīng)熟讀很快,具有很好的實(shí)時(shí)性。但是,當(dāng)以太網(wǎng)應(yīng)用于工業(yè)或者通信負(fù)載較大的條件下,CSMA/CD將產(chǎn)生無(wú)法預(yù)見(jiàn)的延遲特性,即不確定性問(wèn)題,不能滿足實(shí)時(shí)性要求。其改善實(shí)時(shí)性的方法一般主要從軟件或硬件方面上考慮。軟件方面有采用實(shí)時(shí)操作系統(tǒng),RT-CSMA/CD,IEEE1588[6]等。這方面的技術(shù)已取得一定的進(jìn)步,在一些領(lǐng)域已有應(yīng)用,但是還有一些問(wèn)題需要解決。硬件方面一般采用以太網(wǎng)交換機(jī),通過(guò)交換機(jī)構(gòu)建一個(gè)全雙工交換式以太網(wǎng)。此技術(shù)應(yīng)用較廣,相對(duì)較成熟。 [align=center] 圖6 網(wǎng)絡(luò)互連程序流程圖[/align] 5 結(jié)束語(yǔ)   嵌入式系統(tǒng)通過(guò)以太網(wǎng)技術(shù)不僅能夠完成對(duì)現(xiàn)場(chǎng)設(shè)備或其他子系統(tǒng)的控制,監(jiān)視和管理,還可以通過(guò)網(wǎng)絡(luò)實(shí)現(xiàn)跟上位機(jī)或其他系統(tǒng)的通信,實(shí)現(xiàn)系統(tǒng)的聯(lián)網(wǎng)通信與控制功能,而且系統(tǒng)穩(wěn)定,控制方便,成本低。基于CP2200的嵌入式系統(tǒng)以太網(wǎng)接口就能達(dá)到這種目的。   本文作者創(chuàng)新點(diǎn)在于不僅對(duì)基于CP2200的嵌入式系統(tǒng)以太網(wǎng)接口設(shè)計(jì)進(jìn)行了硬件、軟件分析,而且還簡(jiǎn)述了以太網(wǎng)實(shí)時(shí)性問(wèn)題和改善的方法。 參考文獻(xiàn)   [1] 程小輝,李明強(qiáng),沈旭 基于AT89C51單片機(jī)嵌入式系統(tǒng)硬件平臺(tái)的設(shè)計(jì)[J].自動(dòng)化與儀器.2005.4.   [2] 付沖,陳英等一種通用嵌入式系統(tǒng)以太網(wǎng)接口的設(shè)計(jì)以實(shí)現(xiàn)[J].山東大學(xué)學(xué)報(bào),2005.6(3).93-97.   [3] ATMEL Corporation AVR Embedded Web server[Z].USA: ATMEL Corporation 2003.   [4] Silicon Laboratories Inc.CP2200/1 Complete Datasheet [Z]. USA:Silicon Laboratories Inc.2006.   [5] 何銳波,趙英俊 一種以太網(wǎng)與8位單片機(jī)的連接方法[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用.2002.7.   [6] 張 妍,孫鶴旭等IEEE1588在實(shí)時(shí)工業(yè)以太網(wǎng)中的應(yīng)用[J].微計(jì)算機(jī)信息2005年第9-1期.

標(biāo)簽:

點(diǎn)贊

分享到:

上一篇:功率開(kāi)關(guān)器件緩沖電路的分析...

下一篇:微能WIN-V63矢量控制變頻器在...

中國(guó)傳動(dòng)網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來(lái)源:中國(guó)傳動(dòng)網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國(guó)傳動(dòng)網(wǎng)(www.treenowplaneincome.com)獨(dú)家所有。如需轉(zhuǎn)載請(qǐng)與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個(gè)人轉(zhuǎn)載使用時(shí)須注明來(lái)源“中國(guó)傳動(dòng)網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明其他來(lái)源的稿件,均來(lái)自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請(qǐng)保留稿件來(lái)源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。

網(wǎng)站簡(jiǎn)介|會(huì)員服務(wù)|聯(lián)系方式|幫助信息|版權(quán)信息|網(wǎng)站地圖|友情鏈接|法律支持|意見(jiàn)反饋|sitemap

中國(guó)傳動(dòng)網(wǎng)-工業(yè)自動(dòng)化與智能制造的全媒體“互聯(lián)網(wǎng)+”創(chuàng)新服務(wù)平臺(tái)

網(wǎng)站客服服務(wù)咨詢采購(gòu)咨詢媒體合作

Chuandong.com Copyright ?2005 - 2024 ,All Rights Reserved 版權(quán)所有 粵ICP備 14004826號(hào) | 營(yíng)業(yè)執(zhí)照證書(shū) | 不良信息舉報(bào)中心 | 粵公網(wǎng)安備 44030402000946號(hào)