當前位置:首頁 > 單片機 > 單片機
[導讀] 1.ARM簡介 廣義地講,凡是帶有微處理器的專用軟硬件系統(tǒng)都可以稱為嵌入式系統(tǒng)。它是嵌入到對象體系中的專用計算機系統(tǒng),以應(yīng)用為中心,以計算機技術(shù)為基礎(chǔ),軟硬件可裁剪,適應(yīng)應(yīng)用系統(tǒng)對功能、可靠

1.ARM簡介

廣義地講,凡是帶有微處理器的專用軟硬件系統(tǒng)都可以稱為嵌入式系統(tǒng)。它是嵌入到對象體系中的專用計算機系統(tǒng),以應(yīng)用為中心,以計算機技術(shù)為基礎(chǔ),軟硬件可裁剪,適應(yīng)應(yīng)用系統(tǒng)對功能、可靠性、成本、體積、功耗等嚴格要求的專用計算機系統(tǒng)。目前非常流行的ARM內(nèi)核有ARM7TDM1、S t r o n g A R M 、A R M 7 2 0 T 、A R M 9 T D M 1 、ARM920T、ARM940T、ARM946T、ARM966T、ARM10TDM1等。本文所討論的目標板的CPU為ARM920T內(nèi)核的三星S3C2410芯片。

ARM9系列微處理器主要應(yīng)用于無線設(shè)備、儀器儀表、安全系統(tǒng)、機頂盒、高端打印機、數(shù)字照相機和數(shù)字攝像機等。它包含ARM920T、ARM922T和ARM940T三種類型,廣泛應(yīng)用于PDA、移動通信、路由器、工業(yè)控制等領(lǐng)域。

2.嵌入式Web服務(wù)器實現(xiàn)原理

嵌入式Web服務(wù)器是指將Web服務(wù)器引入到現(xiàn)場嵌入式設(shè)備中,并駐留其中有限的代碼空間內(nèi)。與傳統(tǒng)的Web應(yīng)用相比,簡化了系統(tǒng)結(jié)構(gòu),并將信息采集和信息發(fā)布都集成到現(xiàn)場的嵌入式設(shè)備中。在相應(yīng)得軟硬件平臺支持下,利用標準的接口形式和通信協(xié)議,內(nèi)嵌于嵌入式設(shè)備的Web服務(wù)器可以向任何接入到它所在網(wǎng)絡(luò)的合法用戶提供統(tǒng)一的基于瀏覽器方式的操作和控制界面,此時瀏覽器成了設(shè)備的前端控制板。當前在嵌入式應(yīng)用領(lǐng)域,嵌入式系統(tǒng)轉(zhuǎn)變?yōu)榍度胧絎ebServer,大體可分為2種實現(xiàn)方案:

(1)基于網(wǎng)關(guān)服務(wù)器的嵌入式設(shè)備Internet接入;

(2)直接實現(xiàn)TCP/IP的嵌入式設(shè)備Internet接入。本課題中采用第二種實現(xiàn)方案。

3.系統(tǒng)功能的實現(xiàn)

3.1 開發(fā)流程

圖1為本課題所采用的實驗環(huán)境以及開發(fā)流程。①在主機的RedHat Linux操作系統(tǒng)下安裝Linux發(fā)行包以及交叉編譯器armlinux-gCC;②對Linux進行配置(makem e n u c o n f i g),并選擇適合本課題系統(tǒng)得相關(guān)配置;③編譯生成Linux映像文件zlmage;④通過u-boot的tftp命令將該文件下載到目標板并執(zhí)行。這將在下面的內(nèi)容中作介紹。

3.2 加載Linux內(nèi)核映像

3 . 2 . 1 將J X A R M 9 - 2 4 1 0的串口0與P C的C O M 1連接,J X A R M 9 - 2 4 1 0的網(wǎng)卡和P C 的網(wǎng)卡使用直連網(wǎng)線進行連接, 或者將J X A R M 9 - 2 4 1 0和P C機使用普通網(wǎng)線接入同一局域網(wǎng)。A R M 實驗箱的I P 為192.168.1.45,虛擬機下的Linux的IP設(shè)為192.168.1.180,并將安全級別設(shè)置成無防火墻,宿主機IP設(shè)為192.168.1.145.

3.2.2 將JXARM9-2410上電,正常情況下將在終端DNW中看到bootloader菜單界面。在bootloader中按照提示進行加載完成后輸入CTRL+C進入Linux命令行。如果出現(xiàn)失敗,則可能存在一下幾種問題:

1)加載內(nèi)核時總體是“TT”,這是由于tftp服務(wù)器沒有連接成功,在uboot中輸入PINg 192.168.1.180命令,如果提示為not alive請檢查網(wǎng)絡(luò)有沒有正確連接:使用網(wǎng)線正確與否或者宿主機和目標機的IP地址不在同一子網(wǎng)。此處要求宿主機和目標機都在192.168.1.xxx網(wǎng)段,而且最后一位不能相同;如果提示為alive而仍然提示“TT”,請檢查Windows防火墻設(shè)置,關(guān)閉防火墻,如果仍然不行,請關(guān)閉系統(tǒng)中啟動的其它程序,如殺毒軟件等。

2)提示“PACket too big”,這個問題是由于uboot接收到非法的包產(chǎn)生的,少量這種提示不會影響內(nèi)核的加載,如果導致內(nèi)核加載失敗,請按照如下方式檢查:①使用直接網(wǎng)線連接計算機和實驗箱;②關(guān)閉計算機中打開的所有與網(wǎng)絡(luò)相關(guān)的程序。

3.3 Boa Web服務(wù)器的建立

建立Boa Web服務(wù)器包括以下步驟:

3.3.1 下載Boa源代碼

Boa web服務(wù)器的源代碼可以從http://www.boa.org下載,本文中下載文件為:

boa-0.94.13.tar.gz,為當前最新版本。

3.3.2 安裝并編譯Boa源代碼1)通過Vmware Tools中的文件共享將Windows下載的Boa源代碼復制到/home/cvtech/jx2410/examples/目錄下。

2)安裝源代碼:生成Makefile文件#./configure.

3)修改Makefile文件,找到CC=gcc,將其改成C C = a r m - l i n u x - g c c,再找到C P P = g c c - E,將其改成C P P = a r m - l i n u x -gcc-E,并保存退出。

4)運行make進行編譯,在boa/SRC目錄下將生成Boa文件,該文件即為Boa Web服務(wù)器執(zhí)行文件。將調(diào)試信息剝?nèi)?,得到的最后程序只有約60KB大小。

3.3.3 配置Boa Web服務(wù)器,使其能夠支持CGI程序的執(zhí)行

Boa啟動時將加載一個配置文件boa.

conf,在Boa程序運行前,必須首先編輯該文件,并將其放置于src/defines.h文件中SEVER-ROOT宏定義所定義的缺省目錄,或者在啟動Boa時使用參數(shù)“-c”指定boa.

conf的加載目錄。


用戶可以根據(jù)自己需要,對boa.conf進行修改,但必須要保證其他的輔助文件和設(shè)置必須和boa.conf里的配置相符,不然Boa就不能正常工作。在上面的例子中,我們還需要創(chuàng)建日志文件所在目錄/var/log/boa,將mime.types文件拷貝到/etc目錄。mime.types文件用來指明不同文件擴展名對應(yīng)的MIME類型,一般可以直接從Linux主機上拷貝一個,大部分也都是在主機的/etc目錄下。

3.4 系統(tǒng)功能的測試

在移植完Boa服務(wù)器后就是測試它能否正常工作,靜態(tài)HTML頁面能否正常訪問,還將測試動態(tài)Web頁面能否正常訪問。本課題中將采用NFS方式來進行測試工作。

測試Web服務(wù)器。Boa測試開發(fā)環(huán)境如圖2所示:

可以將嵌入式目標系統(tǒng)上的/etc目錄復制到主機的NFS共享目錄下,然后將NFS共享目錄下的etc重新mount為目標系統(tǒng)上的/etc目錄。這樣就可以在主機上對etc目錄下的各種配置文件進行修改而立刻在目標系統(tǒng)上生效。

先前設(shè)定JXARM9-2410的IP地址為:192.168.1.45,且在JXARM9-2410的JFFS2文件系統(tǒng)中已經(jīng)預(yù)先燒寫好了配置好的boa.

conf文件,位于/mnt/jffs2/etc/目錄。

啟動JXARM9-2410 Linux,然后按如下步驟進行:

a)將Boa的執(zhí)行文件復制到tftpboot目錄下;

b)將主機下的tftpboot目錄掛載到目標板的nfs目錄下;

c)啟動Boa服務(wù)器。

根據(jù)上文中boa.conf的配置,此時在目標板的mnt/jffs2/web目錄下包含測試主頁面index.html、存放各種圖片的目錄IMAGES以及CGI腳本的存放目錄cgi-bin.

啟動后測試Boa服務(wù)器,在網(wǎng)頁瀏覽器中訪問如下網(wǎng)址:http://192.168.1.45/如果網(wǎng)絡(luò)連接正常,且Boa啟動正常的話,將可以看到/mnt/jffs2/web/index.

html網(wǎng)頁,如圖3所示,表示靜態(tài)HTML頁面測試通過。可以修改該網(wǎng)頁,并替換成所需要的網(wǎng)頁,然后刷新瀏覽器顯示。

3.5 動態(tài)Web頁面測試

在JXARM9-2410 Linux的命令行中輸入如下命令,將主機的tftpboot目錄掛載到目標板的nfs目錄:

上述命令首先將編寫好的CGI程序cgi_test放置boa.conf定義的cgi-bin目錄下。

本課題中路徑為/ m n t / j f f s 2 / w e b / c g i -bin/,然后啟動boa服務(wù)器。CGI程序就能被正確地執(zhí)行。

使用網(wǎng)頁瀏覽器訪問如下網(wǎng)址:http:

//192.168.1.45/cgi-bin/cgi_test.

如果正確,將顯示輸出一個表單。點擊“submit”按鈕將提交表單并由cgi_test程序處理,將在頁面上返回處理的信息。


本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉