趙建勇,鄔惠峰
(杭州電子科技大學(xué)智能與軟件技術(shù)研究所,浙江杭州 310018)
嵌入式實(shí)驗(yàn)教學(xué)中液晶屏驅(qū)動(dòng)實(shí)驗(yàn)創(chuàng)新與實(shí)踐
趙建勇,鄔惠峰
(杭州電子科技大學(xué)智能與軟件技術(shù)研究所,浙江杭州 310018)
針對(duì)嵌入式實(shí)驗(yàn)教學(xué)的特點(diǎn),提出液晶屏驅(qū)動(dòng)實(shí)驗(yàn)創(chuàng)新的實(shí)驗(yàn)方法。方法基于ARM S3C2410處理器的硬件平臺(tái),配合自行開發(fā)的人機(jī)界面設(shè)計(jì)軟件,實(shí)現(xiàn)嵌入式環(huán)境下所見(jiàn)即所得的液晶屏驅(qū)動(dòng)實(shí)驗(yàn)?zāi)J?。結(jié)果表明,可有效提高學(xué)生的實(shí)驗(yàn)興趣,提高實(shí)驗(yàn)主動(dòng)性,進(jìn)而掌握實(shí)驗(yàn)的本質(zhì)。
液晶屏驅(qū)動(dòng);嵌入式;實(shí)驗(yàn)教學(xué)
嵌入式系統(tǒng)融合了計(jì)算機(jī)、通訊、半導(dǎo)體、微電子等多門學(xué)科技術(shù),針對(duì)實(shí)際應(yīng)用系統(tǒng)需求,將相應(yīng)的計(jì)算機(jī)直接嵌入到應(yīng)用系統(tǒng)中,近年來(lái)掀起了嵌入式系統(tǒng)應(yīng)用熱潮,嵌入式系統(tǒng)課程也應(yīng)勢(shì)成為了近幾年新興的一門課程,國(guó)內(nèi)外高校在嵌入式方面的教學(xué)已經(jīng)全面展開,教育主管部門也十分重視在校大學(xué)生在嵌入式系統(tǒng)方面的理論課程與實(shí)踐。然而,與傳統(tǒng)相關(guān)課程相比,嵌入式的實(shí)踐教學(xué)難度更大,對(duì)教師及學(xué)生的要求更高,如何提高嵌入式教學(xué)質(zhì)量,特別是嵌入式系統(tǒng)實(shí)驗(yàn)教學(xué)效果,值得研究和探索。
傳統(tǒng)嵌入式教學(xué)實(shí)驗(yàn)多基于實(shí)驗(yàn)平臺(tái)完成簡(jiǎn)單驗(yàn)證性實(shí)驗(yàn),學(xué)生按照實(shí)驗(yàn)指導(dǎo)書按部就班就可順利完成實(shí)驗(yàn)[1]。但是學(xué)生即使完成實(shí)驗(yàn),由于實(shí)驗(yàn)過(guò)程枯燥,對(duì)于嵌入式系統(tǒng)開發(fā)以及嵌入式系統(tǒng)在實(shí)際中的應(yīng)用方法還是缺少感性的認(rèn)識(shí),而且由于實(shí)驗(yàn)過(guò)程中缺少引導(dǎo)學(xué)生自主思考的策略,學(xué)生動(dòng)手實(shí)踐能力、創(chuàng)新探索精神也得不到較好的鍛煉和提高,甚至有時(shí)整個(gè)實(shí)驗(yàn)過(guò)程是盲目的[2]。因此,如何提高學(xué)生實(shí)驗(yàn)教學(xué)水平,引導(dǎo)學(xué)生掌握實(shí)驗(yàn)的本質(zhì),是實(shí)驗(yàn)教學(xué)亟需解決的問(wèn)題,其指導(dǎo)思想是引導(dǎo)學(xué)生主動(dòng)的去實(shí)驗(yàn),主動(dòng)去思考問(wèn)題,進(jìn)而解決問(wèn)題,而不是純粹的教實(shí)驗(yàn)[3]。要引導(dǎo)學(xué)生主動(dòng)實(shí)驗(yàn),首先要提高學(xué)生的實(shí)驗(yàn)興趣,從而提高其實(shí)驗(yàn)主動(dòng)性,再?gòu)闹幸龑?dǎo)學(xué)生掌握實(shí)驗(yàn)的核心內(nèi)容。本文以嵌入式系統(tǒng)中常用的液晶屏驅(qū)動(dòng)實(shí)驗(yàn)應(yīng)用為例,提出創(chuàng)新的實(shí)驗(yàn)教學(xué)方法,為嵌入式實(shí)驗(yàn)教學(xué)提供參考。
提出的液晶屏驅(qū)動(dòng)實(shí)驗(yàn)系統(tǒng)由3部分組成:帶液晶屏的嵌入式實(shí)驗(yàn)硬件平臺(tái),液晶屏驅(qū)動(dòng)實(shí)驗(yàn)的人機(jī)界面設(shè)計(jì)平臺(tái),液晶屏邏輯驅(qū)動(dòng)程序。
帶液晶屏的嵌入式實(shí)驗(yàn)硬件平臺(tái)以SAMSUNG公司的ARM9處理器S3C2410為核心,配置640×480分辨率的7英吋數(shù)字接口液晶屏顯示器,支持16位顏色顯示,顯示圖像緩沖區(qū)為實(shí)驗(yàn)平臺(tái)上的32M RAM芯片。
液晶屏驅(qū)動(dòng)實(shí)驗(yàn)的人機(jī)界面設(shè)計(jì)平臺(tái)采用所見(jiàn)即所得的設(shè)計(jì)方式,在PC端生成與嵌入式系統(tǒng)液晶屏大小一致的設(shè)計(jì)窗口,學(xué)生只要在此窗口設(shè)計(jì)自己所希望的圖形界面,通過(guò)自動(dòng)轉(zhuǎn)換后生成對(duì)應(yīng)的液晶屏顯示數(shù)據(jù)。通過(guò)可自行設(shè)計(jì)畫面的樂(lè)趣引導(dǎo)學(xué)生主動(dòng)將顯示數(shù)據(jù)與液晶屏驅(qū)動(dòng)邏輯程序相結(jié)合,通過(guò)編譯、下載寫入平臺(tái)的RAM空間,實(shí)現(xiàn)液晶屏的顯示。界面操作采用自行開發(fā)的類似于操作系統(tǒng)環(huán)境下畫圖板程序,通過(guò)人機(jī)界面平臺(tái)提供的接口,可以導(dǎo)入現(xiàn)有圖片作為液晶屏顯示內(nèi)容,也可以通過(guò)平臺(tái)提供的繪圖控件,通過(guò)拖拉方式,實(shí)現(xiàn)任意畫面的設(shè)計(jì),所有操作和畫圖板的操作方式類似,實(shí)驗(yàn)時(shí)學(xué)生只要花少量時(shí)間就能夠快速適應(yīng)液晶屏顯示人機(jī)界面的設(shè)計(jì)模式。學(xué)生根據(jù)個(gè)人喜好設(shè)顯示界面,通過(guò)多次的界面設(shè)計(jì)、邏輯程序的理解、編譯、下裝,完成整個(gè)實(shí)驗(yàn)過(guò)程。
液晶屏邏輯驅(qū)動(dòng)程序采用框架結(jié)構(gòu),完成嵌入式系統(tǒng)硬件驅(qū)動(dòng)、液晶屏驅(qū)動(dòng)程序調(diào)度、液晶屏顯示數(shù)據(jù)獲取及動(dòng)態(tài)生成。通過(guò)程序框架,學(xué)生很容易理解實(shí)現(xiàn)液晶屏顯示所需要的程序步驟及程序內(nèi)容,從而掌握液晶屏顯示的方法。
傳統(tǒng)的液晶屏驅(qū)動(dòng)實(shí)驗(yàn)中,顯示內(nèi)容為實(shí)驗(yàn)儀生產(chǎn)廠家提供的數(shù)據(jù)文件,不能預(yù)知程序執(zhí)行后液晶屏?xí)@示什么內(nèi)容。實(shí)驗(yàn)時(shí),學(xué)生只是照搬廠家提供的程序運(yùn)行,查看顯示內(nèi)容,但并不理解顯示原理。本文關(guān)鍵的創(chuàng)新點(diǎn)在于:(1)創(chuàng)新的界面設(shè)計(jì)方法。通過(guò)該方法,實(shí)驗(yàn)的設(shè)計(jì)成果可快速的在平臺(tái)上得到驗(yàn)證,改變了傳統(tǒng)實(shí)驗(yàn)教學(xué)為了實(shí)驗(yàn)而做實(shí)驗(yàn)的枯燥過(guò)程,可有效提高學(xué)生的實(shí)驗(yàn)興趣及實(shí)驗(yàn)的主動(dòng)性。(2)創(chuàng)新的框架程序結(jié)構(gòu)。通過(guò)框架結(jié)構(gòu)程序,學(xué)生可以快速理解程序各個(gè)部分的功能,可以針對(duì)各個(gè)功能進(jìn)行有目的的深入學(xué)習(xí),進(jìn)而明白從界面設(shè)計(jì)到顯示數(shù)據(jù)生成到液晶屏顯示整個(gè)過(guò)程。
根據(jù)繪制好的圖片,生成嵌入式系統(tǒng)環(huán)境下的液晶屏顯示數(shù)據(jù)是整個(gè)實(shí)驗(yàn)過(guò)程的紐帶。通過(guò)生成的數(shù)據(jù),結(jié)合CPU的液晶屏驅(qū)動(dòng)程序,即可實(shí)現(xiàn)圖形顯示環(huán)境的轉(zhuǎn)移。該方法采用兩種方式實(shí)現(xiàn)數(shù)據(jù)生成:一種是靜態(tài)生成方式,另一種是動(dòng)態(tài)生成方式。
靜態(tài)實(shí)現(xiàn)方式通過(guò)Windows操作系統(tǒng)提供的API像素提取函數(shù),將設(shè)計(jì)好的界面上的圖形按像素?cái)?shù)據(jù)提取RGB值,根據(jù)色彩構(gòu)成關(guān)系,轉(zhuǎn)換成嵌入式系統(tǒng)對(duì)應(yīng)的8位、16位或32位色彩顯示數(shù)據(jù)序列。根據(jù)嵌入式液晶屏的特性,生成在嵌入式環(huán)境下能運(yùn)行的數(shù)據(jù)文件供驅(qū)動(dòng)程序調(diào)用,從而實(shí)現(xiàn)從PC圖像到嵌入式液晶屏圖像的轉(zhuǎn)換。
考慮到嵌入式系統(tǒng)的特點(diǎn)及其應(yīng)用場(chǎng)合,在靜態(tài)GUI數(shù)據(jù)生成方式下,是通過(guò)圖形點(diǎn)的獲取實(shí)現(xiàn)數(shù)據(jù)轉(zhuǎn)換,若頁(yè)面較多,將會(huì)需要大量程序空間來(lái)保存生成的數(shù)據(jù)。而在實(shí)際應(yīng)用中,受到成本、系統(tǒng)資源的限制,很難滿足對(duì)系統(tǒng)要求較高的應(yīng)用場(chǎng)合,系統(tǒng)尚需完成動(dòng)態(tài)GUI數(shù)據(jù)的生成工作。所謂動(dòng)態(tài)生成方式,是指對(duì)于常規(guī)的圖形,用特定的數(shù)據(jù)結(jié)構(gòu)來(lái)記錄繪制圖形的基本條件信息(例如直線只需要知道起始點(diǎn)、終點(diǎn)及顏色),在驅(qū)動(dòng)液晶屏顯示時(shí),程序可依據(jù)此條件信息動(dòng)態(tài)的生成相應(yīng)數(shù)據(jù),這樣即可有效減少保存圖像數(shù)據(jù)的程序空間。具體涉及常規(guī)圖形(線、多邊形、圓形等)的繪圖數(shù)據(jù)在嵌入式環(huán)境下的動(dòng)態(tài)生成。動(dòng)態(tài)數(shù)據(jù)生成需完成圖形繪制、填充、裁剪等工作,該內(nèi)容主要為計(jì)算機(jī)圖形算法的實(shí)現(xiàn),需要結(jié)合PC機(jī)離散特點(diǎn),實(shí)現(xiàn)高效率的繪圖算法,而不是簡(jiǎn)單的連續(xù)函數(shù)的數(shù)學(xué)計(jì)算。
框架程序結(jié)構(gòu)是整個(gè)嵌入式液晶屏驅(qū)動(dòng)實(shí)驗(yàn)程序的主體,考慮到嵌入式芯片的多樣性以及硬件環(huán)境設(shè)計(jì)的可變性,框架程序結(jié)構(gòu)定義成3個(gè)組成部分:硬件驅(qū)動(dòng)程序、邏輯調(diào)度程序、液晶屏顯示程序。硬件驅(qū)動(dòng)程序?qū)崿F(xiàn)類似于PC機(jī)下BIOS所完成的系統(tǒng)功能,包括系統(tǒng)時(shí)鐘配置、內(nèi)存配置、IO配置、液晶屏配置及其驅(qū)動(dòng)等內(nèi)容。邏輯調(diào)度程序完成程序的整體運(yùn)行邏輯調(diào)度,本實(shí)驗(yàn)核心是液晶屏顯示的調(diào)度,主要根據(jù)不同的頁(yè)面顯示指令處理和頁(yè)面切換,修改相應(yīng)的頁(yè)面數(shù)據(jù)指針。液晶屏顯示程序完成靜態(tài)顯示數(shù)據(jù)讀取、動(dòng)態(tài)顯示數(shù)據(jù)解析、靜態(tài)和動(dòng)態(tài)數(shù)據(jù)整合后顯示緩沖區(qū)更新。通過(guò)框架程序,學(xué)生可以學(xué)習(xí)從液晶屏顯示所需的硬件驅(qū)動(dòng)、軟件調(diào)度到顯示內(nèi)容更新等整個(gè)過(guò)程,清晰掌握液晶屏顯示原理,為嵌入式液晶屏的應(yīng)用打下基礎(chǔ)。
根據(jù)實(shí)驗(yàn)原理,設(shè)計(jì)實(shí)驗(yàn)流程如圖1所示:
圖1 實(shí)驗(yàn)流程圖
視覺(jué)吸引力最能激發(fā)學(xué)生的學(xué)習(xí)興趣[4],通過(guò)圖1描述的實(shí)驗(yàn)流程,學(xué)生可以根據(jù)個(gè)人愛(ài)好,設(shè)計(jì)自己所想要的畫面,可以避免傳統(tǒng)實(shí)驗(yàn)中只能面對(duì)枯燥數(shù)據(jù)的局面,通過(guò)視覺(jué)上吸引學(xué)生的實(shí)驗(yàn)主動(dòng)性,再通過(guò)數(shù)據(jù)生成步驟,在實(shí)驗(yàn)過(guò)程中就會(huì)給學(xué)生產(chǎn)生一種探索自己設(shè)計(jì)的界面在程序何處體現(xiàn)出來(lái)的動(dòng)力,因此就會(huì)主動(dòng)的去理解程序的框架,找出驅(qū)動(dòng)液晶屏的方法,由此理解如何才能讓液晶屏顯示自己設(shè)計(jì)的畫面。通過(guò)這么一個(gè)漸進(jìn)的引導(dǎo)過(guò)程,學(xué)生就能理解在嵌入式環(huán)境下,如何讓液晶屏顯示的工作流程,學(xué)會(huì)一種驅(qū)動(dòng)液晶屏顯示預(yù)定畫面的方法。
針對(duì)本校2008級(jí)計(jì)算機(jī)科學(xué)與技術(shù)專業(yè)大三80名學(xué)生的嵌入式軟件開發(fā)課程實(shí)驗(yàn),采用兩種不同的實(shí)驗(yàn)方法開展教學(xué)實(shí)驗(yàn),每種實(shí)驗(yàn)方法各占40名學(xué)生,與學(xué)生交流情況及指導(dǎo)教師對(duì)實(shí)驗(yàn)效果記錄如表1所示:
表1 實(shí)驗(yàn)效果表
表1中,啟發(fā)性是指引導(dǎo)學(xué)生思考問(wèn)題的主動(dòng)性,在傳統(tǒng)實(shí)驗(yàn)方法中,學(xué)生只是機(jī)械的聽(tīng)老師講實(shí)驗(yàn)的內(nèi)容,引入本文的實(shí)驗(yàn)方法后,有較多的學(xué)生積極思考實(shí)驗(yàn)的本質(zhì)內(nèi)容,并有部分學(xué)生提出另外的液晶屏實(shí)現(xiàn)的驅(qū)動(dòng)方式。主體性是指學(xué)生是否主動(dòng)投入到實(shí)驗(yàn)過(guò)程,根據(jù)觀察,傳統(tǒng)試驗(yàn)方法有64名同學(xué)投入到實(shí)驗(yàn)中,而本文的試驗(yàn)方法有76名學(xué)生主動(dòng)投入到實(shí)驗(yàn)過(guò)程。接受程度是通過(guò)指導(dǎo)教師對(duì)學(xué)生實(shí)驗(yàn)后考核得出,傳統(tǒng)實(shí)驗(yàn)方法有一半的同學(xué)基本理解實(shí)驗(yàn)內(nèi)容,而本文方法有64名同學(xué)理解實(shí)驗(yàn)內(nèi)容。
通過(guò)實(shí)驗(yàn)表明,創(chuàng)新的液晶屏驅(qū)動(dòng)實(shí)驗(yàn)在一定程度上提高了學(xué)生的實(shí)驗(yàn)主動(dòng)性,提高了實(shí)驗(yàn)教學(xué)效果,為真正掌握嵌入式環(huán)境下液晶屏的工作原理提供了一種切實(shí)可行的方法,同時(shí)也為嵌入式其它教學(xué)實(shí)驗(yàn)的改革提供參考。
[1]田澤.嵌入式系統(tǒng)開發(fā)與應(yīng)用系列教程[M].北京:航天航空大學(xué)出版社,2008:365-376.
[2]錢國(guó)英.研究性實(shí)驗(yàn)的內(nèi)容設(shè)計(jì)與實(shí)踐[J].實(shí)驗(yàn)室研究與探索,2010,29(10):1-4.
[3] 董素清.“在思考中”學(xué)會(huì)創(chuàng)新[J].實(shí)驗(yàn)室研究與探索,2007,26(10):6 -8.
[4]魯?shù)婪颉ぐ⒍骱D罚囆g(shù)與視知覺(jué)[M].成都:四川人民出版社,2001:311-316.
Innovative Experimental Method of Embedded LCD Display
ZHAO Jian-yong,WU Hui-feng
(Institute of Software and Intelligent Technology,Hangzhou Dianzi University,Hangzhou Zhejiang 310018,China)
According to the characteristics of the embedded experimental teaching,the innovative experimental method of LCD display is proposed.Based on the ARM S3C2410 processor hardware platform,with selfdeveloped HMI design software,the method realizes the WYSIWYG environment for embedded LCD display experiment.The results show that the method can effectively raise the students'experimental interests and initiatives,then it can make them grasp the essence of the experiment.
LCD display;embedded;experimental teaching
G642.423 < class="emphasis_bold">文獻(xiàn)標(biāo)識(shí)碼:B
B
1001-9146(2011)04-0074-03
2011-09-27
趙建勇(1980-),男,浙江縉云人,實(shí)驗(yàn)師,嵌入式系統(tǒng)、智能控制.
杭州電子科技大學(xué)學(xué)報(bào)(社會(huì)科學(xué)版)2011年4期