2024年嵌入式實(shí)驗(yàn)報(bào)告_第1頁(yè)
2024年嵌入式實(shí)驗(yàn)報(bào)告_第2頁(yè)
2024年嵌入式實(shí)驗(yàn)報(bào)告_第3頁(yè)
2024年嵌入式實(shí)驗(yàn)報(bào)告_第4頁(yè)
2024年嵌入式實(shí)驗(yàn)報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩12頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

嵌入式技術(shù)實(shí)驗(yàn)報(bào)告系別:計(jì)算機(jī)與科學(xué)技術(shù)系班級(jí):計(jì)12-1班姓名:劉杰學(xué)號(hào):1210108總成績(jī):評(píng)語(yǔ):曰期:《嵌入式技術(shù)》試驗(yàn)匯報(bào)試驗(yàn)題目PlatformBuilder5.0下操作系統(tǒng)定制等試驗(yàn)總序號(hào)一試驗(yàn)曰期\10\18總耗時(shí)2小時(shí)試驗(yàn)1.1:簡(jiǎn)要試驗(yàn)環(huán)節(jié):使用NewPlatformWizard創(chuàng)立平臺(tái)1.打開(kāi)PlatformBuilder。選擇“File”菜單中的“NewPlatform…”,彈出“NewPlatformWizard”向?qū)Вx擇“Next”。選擇“EMULATOR:X86”BSP,按“Next”按鈕繼續(xù)。在“Availableconfigurations”中選擇“internetappliance”,在Location中輸入“D:\”,在“Platformname”中輸入工程名,例如“MyPlatform”,按“Next”繼續(xù)。在“Availablefeatures”中選擇但愿加入的應(yīng)用程序,按“Next”繼續(xù)。在“Availablefeatures”中選擇感愛(ài)好的網(wǎng)絡(luò)協(xié)議,按“Next”繼續(xù)。按“Next”繼續(xù)。按“Finish”結(jié)束平臺(tái)創(chuàng)立。添加和刪除組件展開(kāi)右邊的CatalogView,定位到“Catalog\CoreOS\Displaybaseddevice\Applications–EndUser\FileViewers\MicrosoftWordViewer”。在“MicrosoftWordViewer”上點(diǎn)鼠標(biāo)右鍵,選擇“AddtoPlatform”,Word查看器被添加到平臺(tái)中。展開(kāi)左邊的FeatureView,定位到“MobileHandheld\Applications-EndUser\Help”。在“Help”上點(diǎn)鼠標(biāo)右鍵,選擇“Delete”,協(xié)助被從平臺(tái)中刪除。配置和編譯平臺(tái)選擇“target”菜單的“connectivityoption…”項(xiàng)。在彈出的對(duì)話框中依次選擇“cedeviceemulatoremulatorkdstub”。選擇“BuildOS”菜單的“sysgen”開(kāi)始構(gòu)建平臺(tái)。連接,下載和運(yùn)行平臺(tái)選擇“Target”菜單下的“Connectionoption”菜單項(xiàng)。在新的對(duì)話框中,配置連接關(guān)系選擇“Target”菜單下的“attach”菜單項(xiàng),開(kāi)始下載。試驗(yàn)成果操作系統(tǒng)定制成功,能正常運(yùn)行。成果截圖問(wèn)題總結(jié)由于對(duì)試驗(yàn)平臺(tái)理解不夠,致使操作過(guò)程中添加和刪除組件時(shí)不懂得該怎樣下手,影響整個(gè)試驗(yàn)進(jìn)度。試驗(yàn)1.2:打開(kāi)PlatformBuilder,并且打開(kāi)試驗(yàn)1的工程,在試驗(yàn)1的工程基礎(chǔ)上做本試驗(yàn)。由于要跟蹤調(diào)試,需要打開(kāi)跟蹤調(diào)試選項(xiàng),在platform菜單下的setting選項(xiàng)裏面的buildoption裏面需要enablekerneldebugger勾選才能進(jìn)行跟蹤調(diào)試。選擇“File”中的“Open”菜單,在彈出的對(duì)話框中:C:\WINCE500\PRIVATE\WINCEOS\COREOS\NK\KERNEL\virtmem.c,然後在916行DoVirtualAlloc函數(shù)中隨便找一種語(yǔ)句按F9設(shè)置斷點(diǎn)。PlatformBuilder裏面選擇“Target”->“attach”下載并運(yùn)行映像。然後,我們可以看到系統(tǒng)的執(zhí)行停在了我們?cè)O(shè)置的斷點(diǎn)上,此時(shí)我們可以對(duì)程序進(jìn)行單步跟蹤調(diào)試,也可以查看系統(tǒng)中的變量。按F9取消斷點(diǎn),然後按F5讓系統(tǒng)繼續(xù)運(yùn)行。等待系統(tǒng)啟動(dòng)完畢,模擬器中出現(xiàn)WindowsCE界面。保證“Target”菜單下的“CETargetControl”被選中。然後在CETargetControl窗口中輸入如下命令:giproc27.打開(kāi)tool菜單下的remoteprocessviewer,查看任務(wù)信息,將模擬器裏面的wince的ie啟動(dòng)起來(lái),再次查看任務(wù)信息。28.打開(kāi)tool菜單下的remoteperformancemonitor,選擇上面的匯報(bào)圖標(biāo)加入一種icmp的報(bào)文監(jiān)測(cè)項(xiàng)目(如下圖),然後打開(kāi)cmd,ping,然後觀測(cè)remoteperformancemonitor下的報(bào)文個(gè)數(shù)。成果截圖:調(diào)試界面進(jìn)程顯示IE信息查看報(bào)文監(jiān)測(cè)試驗(yàn)1.3使用PlatformBuilder開(kāi)發(fā)應(yīng)用程序簡(jiǎn)樸試驗(yàn)環(huán)節(jié)打開(kāi)PlatformBuilder。選擇“File”菜單下的“OpenWorkspace…”,然後打開(kāi)試驗(yàn)1中創(chuàng)立的平臺(tái),本試驗(yàn)要基于上面的試驗(yàn)的基礎(chǔ)上做。選擇“File”菜單下的“NewProjectorFile…”,打開(kāi)“NewProjectorFile”對(duì)話框。在“Projects”選項(xiàng)頁(yè)中選擇“WCEApplication”;在“ProjectName”中輸入項(xiàng)目的名字,例如“MyApp”。在“NewProjectWizard–step1of1”中選擇“AtypicalHelloWorldApplication”,點(diǎn)擊“Finish”按鈕。選擇“Build”菜單中的“BuildMyApp.exe”來(lái)編譯應(yīng)用程序。選擇“Target”菜單下的“attach”菜單項(xiàng),重新運(yùn)行映像。當(dāng)WindowsCE的桌面顯示之後,選擇“Target”菜單下的“RunPrograms…”,然後從彈出的對(duì)話框中選擇“MyApp.exe”,點(diǎn)“Run”按鈕。在模擬器上,我們此時(shí)可以看到MyApp.exe已經(jīng)成功地運(yùn)行了。選擇“Target”菜單下的“Disconnect”菜單項(xiàng),斷開(kāi)連接。關(guān)閉模擬器,關(guān)閉PlatformBuilder。試驗(yàn)成果能成功運(yùn)行HelloWorld.exe程序成果截圖問(wèn)題總結(jié)該試驗(yàn)較簡(jiǎn)樸,無(wú)問(wèn)題。試驗(yàn)1.4:sdk導(dǎo)出試驗(yàn)簡(jiǎn)樸試驗(yàn)環(huán)節(jié):打開(kāi)PlatformBuilder。選擇“File”菜單下的“OpenWorkspace…”,然後打開(kāi)試驗(yàn)1中創(chuàng)立的平臺(tái),本試驗(yàn)要基于上面的試驗(yàn)的基礎(chǔ)上做。選擇“platform”菜單下的“sdk”,選擇newsdk。按照向?qū)⒂嘘P(guān)信息等填好,隨便填即可。選擇“platform”菜單下的“sdk”,選擇buildsdk,編譯完畢後,將生成的.msi文獻(xiàn)放到桌面上成果截圖:編譯成功桌面msi問(wèn)題總結(jié):該問(wèn)題比較簡(jiǎn)樸,無(wú)問(wèn)題《嵌入式技術(shù)》試驗(yàn)匯報(bào)試驗(yàn)題目Wince驅(qū)動(dòng)程序開(kāi)發(fā)試驗(yàn)序號(hào)二試驗(yàn)曰期\11\10總耗時(shí)2小時(shí)試驗(yàn)2.1:簡(jiǎn)要試驗(yàn)環(huán)節(jié)1.1開(kāi)發(fā)驅(qū)動(dòng)程序按上次試驗(yàn)1.1的環(huán)節(jié)先定制一種OS;首先要保證目前pb的狀態(tài)是上文的做成功并看到wince界面。此外,目前是在這個(gè)工程裏面。選擇菜單的file-newprojectorfile,打開(kāi)向?qū)А_x擇WCEDynamic-LinkLibrary類型的,即DLL類型的程序,這也是驅(qū)動(dòng)程序類型,工程名字可隨意命名,本文以drv為例,向?qū)У淖罱K一步選擇第三項(xiàng)“Adllthatexportssomesymbols”。在pb左側(cè)工程窗口裏面可以看到這個(gè)dll工程掛在了系統(tǒng)鏡像工程下。(這種工程有歸屬關(guān)系,是歸屬在鏡像的大工程裏面的)如下圖:點(diǎn)擊展開(kāi)上圖的drv,裏面僅有一種擴(kuò)展名為cpp的文獻(xiàn),將多模式教學(xué)網(wǎng)上的例子解壓後,將simpledriver目錄下的simpledriver.cpp文獻(xiàn)內(nèi)容全面覆蓋drv下面的cpp文獻(xiàn)內(nèi)容。并且把simpledriver目錄下的SimpleDriver.def文獻(xiàn)的內(nèi)容粘貼覆蓋到drv裏面的parameterfiles裏面的def文獻(xiàn)中。將例子中的simpledriver目錄下的drv.def文獻(xiàn)裏面的內(nèi)容完全拷貝并覆蓋到pb5裏面的驅(qū)動(dòng)工程下的def文獻(xiàn)中,如下圖所示:點(diǎn)擊buildproject裏面的buildcurrentproject,應(yīng)當(dāng)顯示沒(méi)有錯(cuò)誤,編譯成功。1.2開(kāi)發(fā)用于觸發(fā)驅(qū)動(dòng)動(dòng)作的應(yīng)用程序首先要保證目前pb的狀態(tài)是上文已經(jīng)成功看到wince界面,并且編譯好驅(qū)動(dòng)程序的工程。選擇菜單的file-newprojectorfile,打開(kāi)向?qū)А_x擇第二項(xiàng)WCEconsoleapplication類型的,即只有命令提醒符類型的應(yīng)用程序,這個(gè)應(yīng)用程序就是準(zhǔn)備用來(lái)控制驅(qū)動(dòng)程序的,給這個(gè)工程隨意取個(gè)名字即可,本文取名為ccc,向?qū)У淖罱K選擇atypical“helloworld”application類型即可。在pb左側(cè)工程窗口裏面可以看到這個(gè)應(yīng)用程序工程掛在了系統(tǒng)鏡像工程下。(這種工程有歸屬關(guān)系,是歸屬在鏡像的大工程裏面的)如下圖:點(diǎn)擊展開(kāi)上圖的應(yīng)用程序工程,裏面繼續(xù)展開(kāi)sourcefiles,裏面有一種ccc.cpp文獻(xiàn),將多模式教學(xué)網(wǎng)上的例子解壓後,將simpledriver/test目錄下的test.cpp文獻(xiàn)所有粘貼并覆蓋ccc.cpp文獻(xiàn)中。注意本cpp文獻(xiàn)的第13行szDLL變量的值要改成與1.5編譯成的dll名字一致。點(diǎn)擊buildproject裏面的buildcurrentproject,應(yīng)當(dāng)顯示沒(méi)有錯(cuò)誤,編譯成功。1.3運(yùn)行測(cè)試提醒:需要將驅(qū)動(dòng)程序以dll加載進(jìn)系統(tǒng)中,并且觸發(fā)應(yīng)用程序調(diào)用多種文獻(xiàn)操作的接口函數(shù),使得驅(qū)動(dòng)有所動(dòng)作,打印出有關(guān)信息。點(diǎn)擊pb5的菜單target,點(diǎn)擊attachdevice將模擬器運(yùn)行起來(lái)。將D:\WINCE500\PBWorkspaces\test3\drv\obj\x86\retail下的剛剛編譯好的dll拷貝到d盤根目錄或其他目錄。點(diǎn)擊模擬器的共享部分-foldersharing,如下圖,選擇共享的目錄為上一條的d盤根目錄或其他目錄。在wince裏面打開(kāi)我的設(shè)備,可以看到storagecard,即剛剛共享的目錄,將其中的dll拷貝到wince模擬器裏面的windows目錄下,至此驅(qū)動(dòng)就位,但尚未安裝。下面運(yùn)行應(yīng)用程序,點(diǎn)擊pb5的菜單target,選擇runprogram,找到剛剛編譯的應(yīng)用程序ccc或自已指定的其他名字,運(yùn)行起來(lái)。可看到如下圖所示界面。根據(jù)提醒,首先選擇I進(jìn)行安裝,此後即可以用o等選項(xiàng)出發(fā)驅(qū)動(dòng)進(jìn)入有關(guān)函數(shù),看到的彈出窗口和打印信息都是驅(qū)動(dòng)程序所為,至此大家都應(yīng)當(dāng)真正理解和掌握了驅(qū)動(dòng)程序-操作系統(tǒng)-應(yīng)用程序的三者聯(lián)動(dòng)機(jī)制。試驗(yàn)成果:驅(qū)動(dòng)程序開(kāi)發(fā)成功,能正常運(yùn)行。成果截圖問(wèn)題總結(jié)該試驗(yàn)比較簡(jiǎn)樸,做起來(lái)也比較順暢,沒(méi)有什么問(wèn)題。試驗(yàn)題目Windowsmobile應(yīng)用程序開(kāi)發(fā)試驗(yàn)序號(hào)三試驗(yàn)曰期\12\8總耗時(shí)8小時(shí)試驗(yàn)3.1:簡(jiǎn)要試驗(yàn)環(huán)節(jié)一、打開(kāi)VS,新建Wince項(xiàng)目工程二、新建數(shù)據(jù)庫(kù):選擇c#語(yǔ)言的智能設(shè)備工程,平臺(tái)選擇pocketpc,程序類型選擇應(yīng)用程序。選擇菜單中的數(shù)據(jù)-》添加新數(shù)據(jù)源-》下一步-》新建連接-》創(chuàng)立-》起名,即可建立新的數(shù)據(jù)庫(kù)文獻(xiàn)。點(diǎn)擊測(cè)試連接,應(yīng)當(dāng)成功。此後回到數(shù)據(jù)連接向?qū)Ю^續(xù)點(diǎn)擊下一步,會(huì)提醒與否將該數(shù)據(jù)庫(kù)文獻(xiàn)引入本工程中,選擇是,再點(diǎn)完畢即可。至此,空的數(shù)據(jù)庫(kù)建立完畢,下面添加數(shù)據(jù)表以及表內(nèi)的項(xiàng)目。在屏幕左側(cè)點(diǎn)擊標(biāo)簽“服務(wù)器資源管理器”(假如沒(méi)有此框,可在視圖菜單中選定即可),可見(jiàn)剛剛添加的數(shù)據(jù)庫(kù)文獻(xiàn)擴(kuò)展名為.sdf,此時(shí)點(diǎn)擊展開(kāi)此項(xiàng),可看到table欄目,在table欄目上點(diǎn)擊右鍵拉出菜單可選擇創(chuàng)立表。此後彈出創(chuàng)立表向?qū)?,首先給此表起名,隨即直接在列描述的框裏輸入表中所有的列和列中的數(shù)據(jù)類型即可完畢表列的定義。此後,還是在“服務(wù)器資源管理器”中,可以看到table展開(kāi)後來(lái)裏面有剛剛建立的表,在表上右鍵拉出菜單項(xiàng)選擇擇打開(kāi)。此時(shí)可以向表中添加數(shù)據(jù),至此數(shù)據(jù)庫(kù)建立以及數(shù)據(jù)添加措施完畢。添加三個(gè)form窗體和對(duì)應(yīng)的控件如圖:為對(duì)應(yīng)的form配置數(shù)據(jù)源,添加對(duì)應(yīng)的實(shí)現(xiàn)代碼form1實(shí)現(xiàn)代碼:privatevoidmenuItem2_Click(objectsender,EventArgse){Form2f=newForm2();f.Show();}privatevoidmenuItem4_Click(objectsender,EventArgse){this.Close();}privatevoidmenuItem1_Click(objectsender,EventArgse){stringname=textBox1.Text;stringphone=textBox2.Text;stringqq=textBox3.Text;stringaddress=textBox4.Text;SqlCeConnectioncon=newSqlCeConnection("DAtasource=ProgramFiles\\DeviceApplication1\\MyDatabase#1.sdf");try{con.Open();SqlCeCommandcmd=newSqlCeCommand();cmd.Connection=con;cmd.CommandText="insertintoperson(name,phone,QQ,address)values('"+name+"','"+phone+"','"+qq+"','"+address+"')";cmd.ExecuteNonQuery();MessageBox.Show("添加成功!");}catch(Exceptionex){MessageBox.Show("添加失?。?);}finally{con.Close();}}privatevoidmenuItem3_Click(objectsender,EventArgse){stringname=textBox1.Text;stringphone=textBox2.Text;stringqq=textBox3.Text;stringaddress=textBox4.Text;SqlCeConnectioncon=newSqlCeConnection("DAtasource=ProgramFiles\\DeviceApplication1\\MyDatabase#1.sdf");try{con.Open();SqlCeCommandcmd=newSqlCeCommand();cmd.Connection=con;cmd.CommandText="deletfrompersonwherename='"+name+"'";cmd.ExecuteNonQuery();MessageBox.Show("刪除成功!");}catch(Exceptionex){MessageBox.Show("刪除失敗!");}finally{con.Close();}}為form2配置數(shù)據(jù)源,添加實(shí)現(xiàn)代

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論