開(kāi)發(fā)也要在交叉編譯環(huán)境中進(jìn)行,先在PC機(jī)上開(kāi)發(fā),然后移植到目標(biāo)機(jī)上進(jìn)行調(diào)試并最終固化到目標(biāo)機(jī)上。本設(shè)計(jì)中需要開(kāi)發(fā)的硬件驅(qū)動(dòng)有:以太網(wǎng)卡控制器、串口、LCD驅(qū)動(dòng)、藍(lán)牙模塊、小鍵盤(pán)的驅(qū)動(dòng)程序等。為L(zhǎng)inux內(nèi)核編寫(xiě)驅(qū)動(dòng)并不像其他操作系統(tǒng)那么復(fù)雜,只需為相應(yīng)的設(shè)備編寫(xiě)幾個(gè)基本函數(shù)并向VFS注冊(cè)即可,一般都是在一個(gè)現(xiàn)成的驅(qū)動(dòng)程序基礎(chǔ)上針對(duì)特殊的硬件設(shè)備作相應(yīng)的改動(dòng)。在嵌入式操作系統(tǒng)的基礎(chǔ)上還要開(kāi)發(fā)微型GUI,編寫(xiě)動(dòng)態(tài)網(wǎng)頁(yè)和CGI程序來(lái)實(shí)現(xiàn)嵌入式WEB技術(shù)、安全認(rèn)證、及無(wú)線(xiàn)通信協(xié)議等。例如:基于Internet的遠(yuǎn)程控制是通過(guò)瀏覽家庭網(wǎng)關(guān)中的Web Server的動(dòng)態(tài)網(wǎng)頁(yè)實(shí)現(xiàn)的,遠(yuǎn)程控制程序需要從用戶(hù)訪(fǎng)問(wèn)信息中解出有用的控制命令信息,然后按家庭控制網(wǎng)的內(nèi)部協(xié)議組成命令幀,實(shí)現(xiàn)控制的關(guān)鍵是 CGI程序的編制,其流程如圖3所示。 結(jié)語(yǔ)
本文討論了一個(gè)基于ARM微處理器S3C44B0X及?Clinux的無(wú)線(xiàn)家庭網(wǎng)關(guān)的軟硬件設(shè)計(jì)。該家庭網(wǎng)關(guān)控制方式多樣,并且能隨時(shí)隨地通過(guò)瀏覽網(wǎng)頁(yè)實(shí)現(xiàn)對(duì)家電的遠(yuǎn)程控制。該家庭網(wǎng)關(guān)成本較低,易于升級(jí),便于推廣應(yīng)用。
評(píng)論