王碩
摘 要:我國(guó)在推進(jìn)教育現(xiàn)代化建設(shè)過(guò)程中,非常重視以多媒體教學(xué)為核心的教育技術(shù)的發(fā)展,在各級(jí)學(xué)校中建設(shè)了大批多媒體教室,從而為多媒體遠(yuǎn)程控制技術(shù)走向成熟創(chuàng)造了條件。多媒體教室無(wú)線網(wǎng)絡(luò)中央控制系統(tǒng)不需要多媒體教室設(shè)備與集中控制系統(tǒng)的長(zhǎng)距離控制布線,也不需要進(jìn)行很多專門的網(wǎng)絡(luò)布線,并且該處理器的功耗很低,用電的費(fèi)用可以忽略不計(jì)。
關(guān)鍵詞:中央控制;S3C6410;Linux
1.系統(tǒng)結(jié)構(gòu)設(shè)計(jì)方案
(1)系統(tǒng)硬件選擇。主要硬件的選型,實(shí)際上就是對(duì)嵌入式系統(tǒng)核心處理器的選擇,主要是對(duì)綜合成本、性能要求、環(huán)境以及甲方要求等方面進(jìn)行綜合考量,主要包括:①價(jià)格。隨著多媒體教室遠(yuǎn)程控制系統(tǒng)的廣泛應(yīng)用,處理器大批量生產(chǎn),其成本成為不得不考慮的問(wèn)題,在處理器各個(gè)硬件因素都等同的情況下,價(jià)格優(yōu)惠的廠家占有更大的優(yōu)勢(shì)。②耗電量。眾所周知,任何電子產(chǎn)品都離不開電的使用,同等技術(shù)條件下,人們將優(yōu)先選擇耗電量少的產(chǎn)品。③設(shè)計(jì)電路的難易程度。設(shè)計(jì)電子的工程師都知道,如果處理器功能強(qiáng)大又支持許多常用的功能,并且接線簡(jiǎn)單的話,那么會(huì)大大提高工作效率。④開發(fā)環(huán)境。處理器軟件的開發(fā)環(huán)境,就是對(duì)處理器進(jìn)行編程時(shí)所用軟件的更新程度,它的配套軟件的獲取方式同樣也決定了選擇它的條件,比如有的生產(chǎn)商就不公開代碼,用戶想用就得一直花錢,這樣就增加了運(yùn)行開發(fā)難度。
通過(guò)以上對(duì)四點(diǎn)進(jìn)行分析,本課題選擇ARM1176JZF-S核設(shè)計(jì)的S3C6410處理器作為嵌入式系統(tǒng)核心處理器。
(2)嵌入式系統(tǒng)選擇。Linux操作系統(tǒng)是一套免費(fèi)使用和自由傳播的類Unix操作系統(tǒng),是一個(gè)基于POSIX和Unix的多用戶、多任務(wù)、支持多線程和多CPU的操作系統(tǒng)。它能運(yùn)行主要的UNIX工具軟件、應(yīng)用程序和網(wǎng)絡(luò)協(xié)議。它的很多東西都是免費(fèi)公開的,使用者可以很快入手。優(yōu)點(diǎn)主要包括以下幾點(diǎn):①源代碼自由公開。尤其是不收取任何費(fèi)用,使得系統(tǒng)開發(fā)起來(lái)得心應(yīng)手,而且功能強(qiáng)大的內(nèi)核支持UDP網(wǎng)絡(luò)協(xié)議。②無(wú)限制修改功能??梢宰杂刹眉舻舳嗝襟w集中控制系統(tǒng)不需要的功能,加入需要的功能。③支持基于S3C6410處理器的硬件平臺(tái),S3C6410處理器同嵌入式Linux操作系統(tǒng)能結(jié)合得非常好。
2.系統(tǒng)軟件平臺(tái)
(1)嵌入式Linux交叉編譯環(huán)境的建立。宿主機(jī)就是平常所說(shuō)的計(jì)算機(jī),目標(biāo)板指的是開發(fā)板。由于計(jì)算機(jī)和開發(fā)板的處理器是不相同的,宿主機(jī)一般都是英特爾處理器,而開發(fā)板則是用專用的嵌入式處理器。兩者的處理器完全不兼容,所以進(jìn)行需要特定的交叉編譯,使其能夠兼容。應(yīng)用軟件在PC機(jī)上通過(guò)交叉編譯器進(jìn)行編譯,編譯出可以執(zhí)行的二進(jìn)制代碼,放入到目標(biāo)機(jī)進(jìn)行燒寫執(zhí)行。
(2)移植Boot loader。Uboot是嵌入式系統(tǒng)中用于引導(dǎo)內(nèi)核的引導(dǎo)程序,
又被稱作Bootloader,Bootloader運(yùn)行是Linux操作系統(tǒng)啟動(dòng)的一小部分程序。最開始初始化DDRRAM、Nand flash和串口等驅(qū)動(dòng)。同時(shí)建立內(nèi)存空間,映射列表為最后引導(dǎo)內(nèi)核做準(zhǔn)備。Bootloader程序的啟動(dòng)地址通常都安排在0x0000000地址作為啟動(dòng)地址,也就是操作系統(tǒng)的入口點(diǎn)。CPU負(fù)責(zé)把0地址的這段程序搬運(yùn)到RAM的指定地點(diǎn)上運(yùn)行。這樣,開發(fā)板的Bootloader程序開始引導(dǎo)了。系統(tǒng)上電運(yùn)行后,Bootloader做了一些設(shè)備必要的初始化,通過(guò)這個(gè)小程序,我們可以建立硬件的映射圖,初始化設(shè)備,這樣系統(tǒng)的硬件和軟件環(huán)境將被帶到一個(gè)合適的狀態(tài),為最終調(diào)用操作系統(tǒng)內(nèi)核準(zhǔn)備合適的環(huán)境。
(3)Linux內(nèi)核的移植??刂破髌脚_(tái)軟件Linux內(nèi)核的移植過(guò)程分為以下幾個(gè)步驟:內(nèi)核的選擇、修改、配置、編譯和安裝。從Linux的發(fā)展來(lái)看,至今為止已經(jīng)出現(xiàn)過(guò)很多個(gè)內(nèi)核版本了。由于內(nèi)核的版本不同,結(jié)構(gòu)體系也有所不同,并且每個(gè)版本的內(nèi)核都有一個(gè)適合自己版本的開發(fā)工具和開發(fā)包,這些復(fù)雜的關(guān)系往往使得嵌入式開發(fā)人員頭疼,但我們也可以找到一些來(lái)自很多地方的成功的匹配,給我們的發(fā)展帶來(lái)便利。選擇適當(dāng)?shù)膬?nèi)核版本可以大大減少工作中移植的難度,針對(duì)我所用的嵌入式微處理器,我們選擇了版本號(hào)為2.6.38的內(nèi)核。
(4)根文件系統(tǒng)制作。我們可以從官網(wǎng)下載一個(gè)BusyBox用來(lái)制作文件系統(tǒng),本設(shè)計(jì)采用BusyBox-1.13.3源代碼進(jìn)行配置編譯。在這里我們做出一個(gè)bus6410.config配置文件,無(wú)論開發(fā)板型號(hào)是S3C2440還是S3C6410,我們都可以通過(guò)配置文件編譯出BusyBox。
(5)WiFi 驅(qū)動(dòng)程序移植。如果想使WiFi在Linux開發(fā)板正常使用,必須在內(nèi)核驅(qū)動(dòng)程序中添加WiFi,并進(jìn)行正摘 要:我國(guó)在推進(jìn)教育現(xiàn)代化建設(shè)過(guò)程中,非常重視以多媒體教學(xué)為核心的教育技術(shù)的發(fā)展,在各級(jí)學(xué)校中建設(shè)了大批多媒體教室,從而為多媒體遠(yuǎn)程控制技術(shù)走向成熟創(chuàng)造了條件。多媒體教室無(wú)線網(wǎng)絡(luò)中央控制系統(tǒng)不需要多媒體教室設(shè)備與集中控制系統(tǒng)的長(zhǎng)距離控制布線,也不需要進(jìn)行很多專門的網(wǎng)絡(luò)布線,并且該處理器的功耗很低,用電的費(fèi)用可以忽略不計(jì)。置,最后加載WiFi驅(qū)動(dòng)信息。
(6)應(yīng)用程序設(shè)計(jì)。應(yīng)用程序開發(fā)選用QT來(lái)完成,QT是由一個(gè)跨平臺(tái)的圖形界面和用戶應(yīng)用程序的框架,也是有C++作為底層封裝,它不僅可以支持開發(fā)GUI程序,還可以支持其他類型的開發(fā)程序。
網(wǎng)絡(luò)化、信息化新時(shí)代的到來(lái),給各行各業(yè)的發(fā)展帶來(lái)了新的機(jī)遇,越來(lái)越多的研究人員加入到多媒體教室網(wǎng)絡(luò)化控制產(chǎn)業(yè)中來(lái),針對(duì)高校使用多媒體教室的具體要求與場(chǎng)合問(wèn)題,最終設(shè)計(jì)一套適合大學(xué)的多媒體教室中央控制系統(tǒng)。
(作者單位:東北電力大學(xué)媒體技術(shù)與傳播系)