利用單片機(jī)模擬信息家電的通用設(shè)計(jì)方案
6 模擬系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
6.1 添加外圍硬件電路
本文選擇PC機(jī)和SX52作為模擬實(shí)現(xiàn)信息家電和家庭網(wǎng)關(guān)交互的平臺(tái)是非常合適的,因?yàn)槲覀兝闷溆脩粼囼?yàn)區(qū)模塊擴(kuò)展外圍模塊電路(如電風(fēng)扇遙控模塊)模擬信息家電,以實(shí)現(xiàn)通過(guò)遠(yuǎn)程終端(Web瀏覽器或者專用控制客戶端)對(duì)信息家電的控制,本文只討論利用嵌入式Web服務(wù)器,通過(guò)Web頁(yè)面的方式實(shí)現(xiàn)對(duì)家電的遠(yuǎn)程控制這一方式。在板上添加了電風(fēng)扇遙控發(fā)射電路(主芯片CS5104),由主CPU直接控制,能夠?qū)崿F(xiàn)對(duì)電風(fēng)扇的遙控功能,同時(shí)為了了解開(kāi)發(fā)系統(tǒng)遙控效果,還添加了遙控接收電路(主芯片CS8206),可以響應(yīng)發(fā)射電路的遙控信號(hào)。還添加了遙控接收端狀態(tài)LED(12只)用于顯示電風(fēng)扇狀態(tài)。硬件構(gòu)成框圖如圖2所示,本文只給出包含電風(fēng)扇模塊的框圖,添加其它模塊類似。
6.2 軟件的設(shè)計(jì)與實(shí)現(xiàn)
通過(guò)瀏覽器的web頁(yè)面控制信息家電,首先要定義控制協(xié)議,讓從網(wǎng)關(guān)發(fā)送過(guò)去的信息能夠被家電接收解釋并能執(zhí)行正確的操作,系統(tǒng)工作流程如下:
?。?)開(kāi)發(fā)系統(tǒng)板上電后初始化主芯片及各外圍芯片。
(2)打開(kāi)PC機(jī)瀏覽器,輸入http://10.1.1.20/index.htm,由瀏覽器發(fā)出的連接嵌入式Web服務(wù)器請(qǐng)求經(jīng)過(guò)開(kāi)發(fā)板上的RTL8019AS,再經(jīng)SX52解釋后在其控制下把讀取請(qǐng)求發(fā)送至存儲(chǔ)網(wǎng)頁(yè)的24C256,24C256根據(jù)SX52發(fā)送過(guò)來(lái)的命令取出網(wǎng)頁(yè)后通過(guò)RTL8019AS送至PC的瀏覽器,即打開(kāi)遠(yuǎn)程控制端如圖3所示。
?。?)選擇圖3中的“速度”再點(diǎn)擊“確定”,啟動(dòng)開(kāi)發(fā)板上的電風(fēng)扇模塊,然后根據(jù)需要點(diǎn)擊前面的選項(xiàng)控制風(fēng)扇,瀏覽器就將控制信息通過(guò)網(wǎng)線傳給RTL8019AS,再經(jīng)SX52解釋轉(zhuǎn)化為控制命令發(fā)送給電風(fēng)扇遙控發(fā)射芯片,該芯片發(fā)送遙控信號(hào)遙控接收電路通過(guò)相應(yīng)的LED顯示,從而響應(yīng)控制請(qǐng)求。最后通過(guò)觀看控制界面上燈的狀態(tài)與開(kāi)發(fā)板上相應(yīng)LED顯示是否相符,從而檢驗(yàn)?zāi)M系統(tǒng)運(yùn)行成功與否。
由于考慮到單片機(jī)的處理能力,定義單個(gè)字符傳遞控制信息不僅可以節(jié)省資源,而且可以縮短響應(yīng)時(shí)間,滿足更高的實(shí)時(shí)性要求。以對(duì)電風(fēng)扇模塊的模擬為例,通過(guò)網(wǎng)頁(yè)發(fā)送給網(wǎng)關(guān)的控制協(xié)議具體實(shí)現(xiàn)如下:用'e'代表關(guān)閉,'f'代表定時(shí),'g'代表風(fēng)速/啟動(dòng),'h'代表工作模式,'i'代表?yè)u頭。每選擇一個(gè)選項(xiàng),按“確定”后,就發(fā)送一次上面相應(yīng)字符給信息家電(SX52),后面相應(yīng)的燈就按已經(jīng)定義好的規(guī)律變亮或是變暗。
代碼添加和修改,再按以下的步驟完成最后的工作:
?。?)制作控制頁(yè)面,實(shí)現(xiàn)以上協(xié)議,并顯示電風(fēng)扇的控制狀態(tài)信息,頁(yè)面外觀如圖3所示。然后計(jì)算該頁(yè)面的大小,利用SX52特有的哈希函數(shù)計(jì)算出URI。
(2)修改Eth_my3.src源文件中開(kāi)發(fā)板IP地址值,URI值等,裁剪掉DHCP、SMTP等模塊,添加電風(fēng)扇初始化代碼、中斷代碼和協(xié)議轉(zhuǎn)化模塊。
(3)利用匯編/編程器軟件SXKey52.exe將文件e2file3ttm1.
src下載到開(kāi)發(fā)系統(tǒng)板,然后利用PC上運(yùn)行的裝載程序E2File.
exe將網(wǎng)頁(yè)裝載到EEPROM中,再次利用SXKey52.exe將網(wǎng)頁(yè)服務(wù)器程序Eth_my3.src下載到開(kāi)發(fā)系統(tǒng)板,最后打開(kāi)PC上的瀏覽器,在地址欄輸入http://10.1.1.20/index.htm就可以看見(jiàn)如圖3所示的界面,通過(guò)該界面可以對(duì)開(kāi)發(fā)板上的電風(fēng)扇硬件電路進(jìn)行控制。
7 小結(jié)
本文從研究信息家電內(nèi)部結(jié)構(gòu)和家庭網(wǎng)關(guān)出發(fā),選擇高性能的8位SX52單片機(jī)集成系統(tǒng)并進(jìn)行軟硬件裁剪,成功地利用外圍硬件電路和虛擬外圍及網(wǎng)絡(luò)協(xié)議軟件虛擬模塊,搭建了模擬信息家電的平臺(tái),為進(jìn)一步研究家庭網(wǎng)關(guān)和信息家電內(nèi)部結(jié)構(gòu)以及二者之間的功能分配和通信協(xié)議打下了堅(jiān)實(shí)的基礎(chǔ)。
創(chuàng)新點(diǎn):本文描述了利用SX52為主芯片,通過(guò)擴(kuò)展外圍電路和軟件模塊模擬信息家電的通用方法,并以模擬電風(fēng)扇做了具體實(shí)現(xiàn),為后續(xù)對(duì)信息家電和家庭網(wǎng)關(guān)的研究提供了基礎(chǔ)實(shí)驗(yàn)平臺(tái)。
評(píng)論