一個(gè)雙MCU機(jī)構(gòu)的潛入式Internet接入服務(wù)器
掃描二維碼
隨時(shí)隨地手機(jī)看文章
嵌入式internet?1?是指借助于internet監(jiān)視和控制工廠的機(jī)器、通信設(shè)備、數(shù)據(jù)采集系統(tǒng)、過(guò)程控制系統(tǒng)、醫(yī)療設(shè)備、機(jī)頂盒、車輛控制器、辦公機(jī)械、個(gè)人數(shù)字助理(pda)和其它設(shè)備。隨著internet/intranet的迅猛發(fā)展,將internet延伸到8位、16位、32位單片機(jī),實(shí)現(xiàn)基于internet的遠(yuǎn)程數(shù)據(jù)采集、遠(yuǎn)程控制、自動(dòng)報(bào)警、上傳/下載數(shù)據(jù)文件、自動(dòng)發(fā)送email等功能已經(jīng)成為嵌入式系統(tǒng)發(fā)展的必然趨勢(shì)。就嵌入式internet系統(tǒng)而言,實(shí)現(xiàn)internet通信協(xié)議及其服務(wù),同時(shí)還要控制現(xiàn)場(chǎng)設(shè)備將占用大量資源,而嵌入式internet系統(tǒng)中大量存在的是8位和16位mcu,這些系統(tǒng)在某些環(huán)境下實(shí)現(xiàn)上述功能將十分困難?2?。如果采用32位或64位的處理器,無(wú)疑會(huì)增加成本。為此,本文提出了一種雙mcu結(jié)構(gòu)的嵌入式internet接入服務(wù)器dmcueias。其中一個(gè)mcu作為internet服務(wù)器與用戶交互(稱作inetmcu),它支持tcp/ip協(xié)議棧并運(yùn)行internet服務(wù)程序,形成一個(gè)用戶可以通過(guò)瀏覽器進(jìn)行交互的服務(wù)器;另一個(gè)mcu專門用作設(shè)備服務(wù)器(稱作devmcu)控制多個(gè)設(shè)備。inetmcu和devmcu通過(guò)rac協(xié)議實(shí)現(xiàn)通信,完成現(xiàn)場(chǎng)設(shè)備的控制。這樣可以提高性能價(jià)格比,具有操作簡(jiǎn)便、功能易擴(kuò)展等特點(diǎn)。
1 硬件結(jié)構(gòu)
雙mcu結(jié)構(gòu)的嵌入式internet接入服務(wù)器dmcueias采用atmel公司生產(chǎn)的at90s8515at90s8515微控制器作為inetmcu,采用at89s53作為devmcu,系統(tǒng)體系結(jié)構(gòu)如圖1。其中,devmcu擁有12k字節(jié)的flash程序存儲(chǔ)器,256字節(jié)的片內(nèi)ram,3個(gè)可預(yù)分頻的16位定時(shí)器、計(jì)數(shù)器,32位i/o口和一個(gè)內(nèi)置的全雙工uart;inetmcu擁有8k字節(jié)的flash程序存儲(chǔ)器,512字節(jié)的片內(nèi)eeprom,512字節(jié)的片內(nèi)ram,1個(gè)可預(yù)分頻的8位定時(shí)器、計(jì)數(shù)器,1個(gè)可預(yù)分頻、具有比較、捕捉和8/9/10位pwm功能的16位定時(shí)器和計(jì)數(shù)器,用于程序下載的spi口,32位i/o口和一個(gè)內(nèi)置的全雙工uart。inetmcu的時(shí)鐘頻率是8mhz,可以高速地通過(guò)isa口傳遞數(shù)據(jù)(約2mbps)。通過(guò)一個(gè)時(shí)鐘周期內(nèi)執(zhí)行一條指令,inetmcu可以取得近1mips/mhz的性能。通過(guò)在單一芯片內(nèi)將一個(gè)增強(qiáng)性能的8位risc cpu與可下載的flash結(jié)合,使它非常適合多種嵌入式應(yīng)用要求,具有高度靈活性和低成本的特點(diǎn)。dmcueias的以太網(wǎng)控制器采用臺(tái)灣realtek公司的rtl8019as?10mbps?。其采用全雙工通信方式,使幀的發(fā)送與接收能夠在一條通信線路上同時(shí)進(jìn)行。使信道的帶寬增加一倍,實(shí)現(xiàn)了基于ieee802.3協(xié)議標(biāo)準(zhǔn)的mac層(media access control layer)的所有功能。內(nèi)置的雙dma通道和fifo完成簡(jiǎn)單有效的包管理(數(shù)據(jù)幀的接收和發(fā)送)功能,本地dma通道的傳輸速率高達(dá)10mbps。其優(yōu)越的性能價(jià)格比使它非常適合嵌入式internet系統(tǒng)。
在inetmcu的片內(nèi)flash中固化的服務(wù)程序可實(shí)現(xiàn)任務(wù)調(diào)度、線程支持、文件系統(tǒng)、內(nèi)存管理、網(wǎng)絡(luò)系統(tǒng)(tcp/ip)和i/o管理等。通過(guò)20位(8位a口,8位c口,d口的pd0、pd1、pd2、pd7)i/o口連接到廉價(jià)的isa總線的網(wǎng)卡芯片rtl8019asrtl8019as上,能夠?qū)ν?如internet上的用戶)提供一種通過(guò)以太網(wǎng)接口訪問(wèn)嵌入式系統(tǒng)的方法。inetmcu的片內(nèi)eeprom存儲(chǔ)授權(quán)的用戶名、密碼和其固定的ip地址及mac地址。遠(yuǎn)程用戶訪問(wèn)dmcueias時(shí),要比較用戶名和密碼,只有合法用戶可以通過(guò) internet訪問(wèn)dmcueias。inetmcu的片內(nèi)ram存儲(chǔ)臨時(shí)數(shù)據(jù),同時(shí)外擴(kuò)了32k字節(jié)的seeprom。它采用at24c256at24c256存儲(chǔ)不同的控制網(wǎng)頁(yè),完成必要的文件系統(tǒng)功能,通過(guò)web頁(yè)可以實(shí)現(xiàn)遠(yuǎn)程用戶與dmcueias的交互。inetmcu用12位(8位b口作為數(shù)據(jù)口,d口的pd3、pd4、pd5、pd6 作為控制口)i/o口完成與devmcu的通信。devmcu的片內(nèi)flash已經(jīng)固化dcx51嵌入式實(shí)時(shí)操作系統(tǒng)、通信服務(wù)和遠(yuǎn)程存取控制服務(wù)?rac?,負(fù)責(zé)現(xiàn)場(chǎng)設(shè)備的控制。devmcu的另外16位(8位a口,8位c口作為數(shù)據(jù))i/o口與isp相連,完成必要的邏輯功能,最后由isp的io56~io63(8位)通過(guò)功率驅(qū)動(dòng)直接驅(qū)動(dòng)設(shè)備。
2 軟件體系結(jié)構(gòu)
2.1 tc