Cortex-M3平臺(tái)上lwIP+AJAX的Web嵌入式應(yīng)用
后臺(tái)則包括服務(wù)器httpd程序設(shè)計(jì),通過httpd響應(yīng)前臺(tái)index.htm網(wǎng)頁請(qǐng)求。具體在Lwip/apps/httpserver_raw/fs.c中的struct fs_file *fs_open(char *name)函數(shù)中,增加對(duì)/PlantRT.xml請(qǐng)求的響應(yīng),詳細(xì)軟件可參考附件III服務(wù)器代碼段部分。
將制作好的網(wǎng)頁index.htm及AJAX代碼ajax.js,樣式mchp.css及l(fā)ogo圖片sjtulogo.png等網(wǎng)頁文件,通過TI提供的makefsfile.exe(此軟件可在TI網(wǎng)站上下載)軟件轉(zhuǎn)換成webhtml.h文件,將此webhtml.h添加到整個(gè)軟件工程中并編譯整個(gè)工作軟件,編譯完成后下載到LM3S9D96中,即可實(shí)現(xiàn)嵌入式平臺(tái)下的AJAX動(dòng)態(tài)網(wǎng)頁刷新。若要實(shí)現(xiàn)通過手機(jī)瀏覽index.htm的支持,只需要在設(shè)計(jì)樣式mchp.css時(shí)考慮網(wǎng)頁的縮放比例即可。
方案驗(yàn)證
在TI CCS5.1開發(fā)環(huán)境中編譯整個(gè)系統(tǒng)軟件成功后,通過XDS100V2仿真器與LM3S9D96的JTAG接口相連,將工程xx.bin文件下載到Flash中后給系統(tǒng)重新上電即可運(yùn)行。
可借助網(wǎng)絡(luò)分析軟件如國外用的比較廣的Sniffer,或是國內(nèi)的科來網(wǎng)絡(luò)分析系統(tǒng)等對(duì)AJAX工作時(shí)的數(shù)據(jù)報(bào)文進(jìn)行分析,圖7是index.htm網(wǎng)頁正常工作時(shí)的效果。
總結(jié)
本文基于Lwip TCP/IP以太網(wǎng)協(xié)議棧將AJAX動(dòng)態(tài)網(wǎng)頁設(shè)計(jì)技術(shù)應(yīng)用于嵌入式Cortex-M3平臺(tái)上,實(shí)現(xiàn)Web嵌入式應(yīng)用。相比于CGI技術(shù),AJAX實(shí)現(xiàn)簡(jiǎn)易,移植性強(qiáng)。所選Cortex-M3平臺(tái)內(nèi)部集成PHY,功能強(qiáng)悍,lwIP TCP/IP以太網(wǎng)協(xié)議棧和實(shí)時(shí)操作系統(tǒng)FreeRTOS均是開源、免費(fèi),對(duì)于成本較敏感的網(wǎng)絡(luò)互聯(lián)產(chǎn)品提供了一種解決方案,并給出了硬件原理圖及軟件代碼。(附件略)
參考文獻(xiàn):
[1] 吳巍,等.物聯(lián)網(wǎng)與泛在網(wǎng)通信技術(shù)[M].北京:電子工業(yè)出版社,2012-06-01
[2] CGI Programming with Perl. Scott Guelich,Shishir Gundavaram, Gunther Birznieks[M].O'Reilly Media, 2000-07-06
[3] CGI-ASP-PHP-JSP-ASP.NE網(wǎng)站開發(fā)語言比較[EB/OL].http://blog.sina.com.cn/s/blog_6c8d8f7001016i2k.html.2013-03-27
[4] Adam Dunkels. Design and Implementation of the LwIP TCP/IP Stack[M].2001
[5] Anthony T.Holdener III. Ajax: The Definitive Guide[M].O'Reilly Media, 2008-02-01
[6] Ajax中國[EB/OL].http://www.okajax.com/a/200811/111D1M2008.html. 2013-03-27
[7] Joseph Yiu[著],宋巖[譯].Cortex-M3權(quán)威指南[M].北京:北京航空航天大學(xué)出版社,2009-07-01
[8] SafeRTOS User Manual[Z].Texas Instruments Incorporated
[9] lwIP Documentation[EB/OL].http://lwip.nongnu.org/
[10] w3school[EB/OL].http://www.w3school.com.cn/h.asp
linux相關(guān)文章:linux教程
評(píng)論