1 引言
目前,嵌入式系統(tǒng)已經(jīng)廣泛滲透到人們的工作、生活中。從家用電器、信息終端、手持通信設(shè)備到儀器儀表、制造工業(yè)、過程控制等領(lǐng)域,嵌入式設(shè)備已隨處可見。另一方面,近幾年來Internet技術(shù)的飛速發(fā)展給嵌入式應(yīng)用帶來了新的契機(jī),在未來嵌入式系統(tǒng)中應(yīng)用Internet技術(shù)具有很大的優(yōu)勢。
目前嵌入式Internet技術(shù)的實(shí)現(xiàn)主要有下面三種方式 :
第一種方式是EMIT技術(shù),采用支持TCP/IP協(xié)議的高性能服務(wù)器作為網(wǎng)關(guān)(emGateway), 嵌入式設(shè)備通過RS-232、RS-485或者CAN總線等與網(wǎng)關(guān)服務(wù)器連接,間接通過服務(wù)器網(wǎng)關(guān)連接Internet。經(jīng)過多年的發(fā)展EMIT技術(shù)已經(jīng)在工業(yè)設(shè)備的網(wǎng)絡(luò)化中得到了廣泛的應(yīng)用。但該技術(shù)也存在著以下的缺點(diǎn):由于需要使用高性能的網(wǎng)關(guān)服務(wù)器,再加上emGateway網(wǎng)關(guān)的使用需要繳納相應(yīng)的版稅,從而使得成本很高;而且網(wǎng)關(guān)和設(shè)備之間需要專門布線,在嵌入式設(shè)備比較分散的情況下極為不便,通信的距離、速度都受到一定的限制。
第二種方式是采用硬件協(xié)議棧芯片進(jìn)行網(wǎng)絡(luò)連接,比如Seiko公司的S7600,嵌入式MCU通過接口對其進(jìn)行控制以達(dá)到Internet通信的目的,這時軟件只需要增加一段和協(xié)議棧芯片通信的接口程序即可,因此開發(fā)難度小、周期短。其缺點(diǎn)是系統(tǒng)的硬件成本非常高,而且由于使用的是硬件協(xié)議棧,擴(kuò)展不靈活。
第三種方式是在嵌入式MCU上用軟件實(shí)現(xiàn)TCP/IP協(xié)議棧,然后通過網(wǎng)絡(luò)接口芯片連接Internet。在這種方式中由于使用了軟件協(xié)議棧使得嵌入式MCU本身具有了Internet通信能力,從而省去了高性能網(wǎng)關(guān)和硬件協(xié)議棧芯片,因此成本非常低,而且擴(kuò)展起來非常方便靈活,再配上小型嵌入式實(shí)時操作系統(tǒng)的支持,就可以實(shí)現(xiàn)性價比很高的嵌入式多任務(wù)Internet平臺。但是要在資源有限的16位甚至8位單片機(jī)上實(shí)現(xiàn)復(fù)雜的操作系統(tǒng)和網(wǎng)絡(luò)協(xié)議棧有一定難度,但近年來隨著單片機(jī)處理速度的不斷提高和內(nèi)部資源的不斷擴(kuò)展,再加上小型的實(shí)時操作系統(tǒng)和網(wǎng)絡(luò)協(xié)議棧的相繼推出,使得利用單片機(jī)來實(shí)現(xiàn)低成本嵌入式多任務(wù)網(wǎng)絡(luò)平臺成為可能。
基于以上背景,本文就來介紹應(yīng)用在研究課題“低碼率視頻信號的網(wǎng)絡(luò)傳輸”系統(tǒng)中的一種基于AVR單片機(jī)的多任務(wù)嵌入式網(wǎng)絡(luò)系統(tǒng)軟硬件平臺的設(shè)計。
2 硬件平臺設(shè)計
考慮到以太網(wǎng)接入方式技術(shù)成熟、可靠性高、通信速度快和成本低的優(yōu)點(diǎn),本系統(tǒng)的硬件平臺采用單片機(jī)加以太網(wǎng)接口控制芯片組成。由于操作系統(tǒng)和協(xié)議棧需要用到大量的數(shù)據(jù)存儲器,因此需要外擴(kuò)RAM存儲器。為了提高通信性能,單片機(jī)與以太網(wǎng)接口芯片之間采用并行總線擴(kuò)展方式進(jìn)行連接,接口芯片和外部的RAM存儲器統(tǒng)一編址。本系統(tǒng)采用了可編程GAL器件ATF16V8進(jìn)行地址譯碼,這樣不僅可以充分利用地址資源,而且只需要修改ATF16V8的源程序即可實(shí)現(xiàn)地址的改變,提高了系統(tǒng)的擴(kuò)展能力。系統(tǒng)的硬件平臺的原理框圖如圖1所示。