版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
CivilAviationUniversityofChina嵌入式技術(shù)應(yīng)用實踐報告專業(yè):姓名:學(xué)號:學(xué)院:二O—三年九月一、學(xué)習(xí)目的了解處理器的發(fā)展掌握WmCE嵌入式系統(tǒng)開發(fā)方法和開發(fā)流程。掌握WmCE嵌入式C#編程方法。掌握WmCE嵌入式網(wǎng)絡(luò)通信技術(shù)。掌握Bluetooth編碼技術(shù)二、實踐要求設(shè)計藍牙文件傳輸系統(tǒng)(包括服務(wù)器端和客戶端),主要設(shè)計文件發(fā)送(客戶端)三、實踐內(nèi)容了解什么是OBEX文件傳輸OEEX全稱為ObjectExchange,中文對象交換,所以稱之為對彖交換協(xié)議。OEEX傳輸協(xié)議定義了數(shù)據(jù)對彖和兩個設(shè)備用來交換這些對彖的通信協(xié)議。藍牙協(xié)議棧允許采用多種方法,包括RFCOMM和ObjectExchange(OBEX),在設(shè)備之間發(fā)送和接收文件。如果想發(fā)送和接收流數(shù)據(jù),那么RFCOMM更好。反過來,如呆想發(fā)送對象數(shù)據(jù)即文件,則OEEX最好。OEEX協(xié)議通過簡單的使用“PUT”和“GET”命令實現(xiàn)在不同的設(shè)備、不同的平臺之間方便、高效的交換信息。支持的設(shè)備廣泛,例如PC,PDA、嵌入式設(shè)備。在層次結(jié)構(gòu)的藍牙協(xié)議棧中,對彖交換協(xié)議OEEX(ObjectExchange)是一種面向應(yīng)用的會話層協(xié)議,它運行于藍牙協(xié)議棧的頂部,支持文件傳輸(FileTransfer),對彖“推”操作(ObjectPushProfile)等多種應(yīng)用,提供了設(shè)備間簡單易行的對彖交換于?段??山粨Q的對彖可以是文件、圖像,也可是應(yīng)用支持的任何數(shù)據(jù)單位。對象交換采用了基于查詢一應(yīng)答方式的ClienVSeiver模式,任意兩臺藍牙設(shè)備間都可組成主從關(guān)系,主動發(fā)起方是主設(shè)備(Client),被找到者是從設(shè)備(Seiver)o藍牙文件發(fā)送在放置控件的區(qū)域繪制下圖,控件屬性自行更改在編輯程序前進行必要的引用usingI11TheHand.Net;usingIiiTheHand.Net.Bluetooth;usingIiiTheHand.Net.Ports;usingInTheHand.Net.Sockets;搜索藍牙設(shè)備privatevoidbutton1_Click(objectsender,EventAigse){BluetootliRadioradio=BluetootliRadio.Pnniai-yRadio;〃扌巴BluetootliRadio設(shè)置成主設(shè)備if(radio==null)〃判斷如果radio為空{(diào)MessageBox.Sliow("^有藍牙設(shè)備或者沒有支持的藍牙協(xié)議棧”);//消息框顯示沒有藍牙設(shè)備?????return;〃結(jié)束并返回}radio.Mode=RadioMode.Discoverable;//將接收機模式設(shè)置成可發(fā)現(xiàn)模式BluetoothClientclient=newBluetoothClient();〃創(chuàng)建一個新的藍牙客戶端this.statusLabell.Text="JE在搜索藍牙設(shè)備...";〃狀態(tài)欄顯示正在..…Application.DoEventsQ;//執(zhí)彳亍上述文件操作,原因搜索需要時間BluetootliDeviceInfo[]cbbtliDevices=client.DiscoverDevices();//定義一個數(shù)組,類型是藍牙設(shè)備信息,名稱cbbtliDevices,內(nèi)容comboBoxl.DataSource=cbbtliDevices;〃將數(shù)組賦值給卜拉列表comboBox1.DisplayMember="DeviceName";//卜拉列表顯示設(shè)備名稱comboBox1.ValueMember="DeviceAddress";//'F拉列表隱藏顯示設(shè)備物理地址statusLabell.Text="藍牙設(shè)備搜索完成";//狀態(tài)欄顯示藍牙設(shè)備.…Application.DoEventsQ;//執(zhí)行文件}瀏覽文件privatevoidbutton2_Click(objectsender.EventAigse){OpeiiFileDialogofd=newOpeiiFileDialog();if(ofd.ShowDialogQ==System.Wmdows.Forms.DialogResult.OK)〃如杲用戶在對話框中單擊"確定”,則為System.Wmdows.Forms.DialogResult.OK:否則為System.Windows.Foims.DialogResult.CanceltextBoxl.Text=ofd.FileName;}elsetextBoxl.Text=,n,;}}發(fā)送文件privatevoidbutton3_Click(objectsender,EventAigse){if(comboBoxl==null||textBoxl==null){MessageEox.Show(”沒有選擇藍牙設(shè)備或者傳送文件”);}ObexWebResponseresponse=null;〃判斷是否已選擇藍牙設(shè)備和文件try{statusLabell.Text=”正在發(fā)送中???”;System.Uriuri=newUii(nobex://H+comboBoxl.SelectedValue.ToStrmgQ+'7H+System.IO.Path.GetFileName(textBoxl.Text.Triin())+System.Net.Dns.GetHostNaine());ObexWebRequestrequest=newObexWebRequest(uri);request.ReadFile(textBoxl.Text.Triiu());response=(Ob亡xWbbRespons亡)代qu亡st?GetResponse();MessageBox.Show(response.StatusCode.ToStringO);}catch{MessageBox.Show(n發(fā)送失敗!H);}filially{if(response!=null)response.CloseQ;}}//try..catch...finally??處理異常,如果try之后的內(nèi)容不能正常運行則執(zhí)行catch后的內(nèi)容附加功能:創(chuàng)建一個名為MyText.txt的文本文件privatevoidbutton4_Click_l(objectsender,EventAigse){Stringpath="MyText.txt”;tryif(Flie.Exists(path))File.Delete(path);}using(FileStreamfs=File.Create(path)){Bvte[]info=newUTF8Encodmg(tnie).GetB}les(HTliisissometextinthefile:);fs.Wnte(info.0.mfb.Length);}using(StieaniReadersr=File.OpenText(path)){strings="qwqwq”;while((s=sr.ReadLmeQ)!=null){Console.WriteLiiie(s);}}}catch(ExceptionEx){Console.WnteLme(Ex.ToStiiiig());}}//簡單解釋,先判斷該文件是否已存在,存在則不再取消該創(chuàng)建,然后建立一個存放文件字節(jié)的數(shù)組,寫入內(nèi)容,創(chuàng)建即成功。下載到實驗箱,在實驗箱上進行程序調(diào)試和運行文件發(fā)送一直失敗―開始是程序出錯:if(response==null)必須改成1f(response!=null),表示當結(jié)果為時輸出“發(fā)送失敗”。不過,程序修改后仍然發(fā)送失敗,經(jīng)檢查發(fā)現(xiàn)是實驗箱的問題,這個結(jié)果告訴我們在做實驗的時候,檢查錯誤時不能拘泥于一個方面,在確認以為的錯誤不存在的時候,就應(yīng)該把目光放向其他方面尤其是最容易遺漏的地方。遺漏引用或引用錯誤在生產(chǎn)時出現(xiàn)引用有誤,此時應(yīng)該查看必要的引用是否缺少,添加引用。在無法理解時可以將光標移至出錯處按下F1,查看幫助。在實驗過程中,或多或少都會出現(xiàn)錯誤,這時不應(yīng)該光想著詢問老師,運用幫助完全可以自己解決。沒有解決的問題:附加功能進度條在進行進度條功能的編輯時出現(xiàn)了引用錯誤,但是由于電腦自身的病毒無法進行引用的添加,導(dǎo)致程序無法正常進行。五、心得體會在這次實驗中,了解了簡單的C卄語言和程序設(shè)計,學(xué)會了藍牙設(shè)備的發(fā)送和接收,同時也認識了Visualsnidio2005這個軟件。這次實踐還鍛
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026廣西來賓市忻城縣經(jīng)濟貿(mào)易局招聘編外人員4人考試備考題庫及答案解析
- 2026江蘇省數(shù)據(jù)集團中層管理崗位招聘1人考試參考試題及答案解析
- 2026海南儋州市市場監(jiān)督管理局招聘公益性崗位人員1人考試備考試題及答案解析
- 2026福建南平市公路應(yīng)急保障中心招聘1人考試參考題庫及答案解析
- 2026云南省煙草專賣局(公司)畢業(yè)生招聘65人(第一批)考試備考試題及答案解析
- 2026年南陽淅川縣重點企業(yè)引進人才10名筆試備考題庫及答案解析
- 2026廣東梅州市梅縣區(qū)融媒體中心招聘見習(xí)人員考試參考題庫及答案解析
- 2026年甘肅隴南西和縣城鎮(zhèn)公益性崗位招聘96人筆試參考題庫及答案解析
- 2026河南漯河經(jīng)濟技術(shù)開發(fā)區(qū)公益性崗位招聘11人考試參考題庫及答案解析
- 2026廣西百色城市產(chǎn)業(yè)發(fā)展集團有限公司招聘19人考試參考題庫及答案解析
- 汽輪機本體知識講解
- 2021年云南公務(wù)員考試行測試題及答案
- 如何撰寫優(yōu)秀的歷史教學(xué)設(shè)計
- GB/Z 42217-2022醫(yī)療器械用于醫(yī)療器械質(zhì)量體系軟件的確認
- 中醫(yī)學(xué)基礎(chǔ)臟腑經(jīng)絡(luò)詳解演示文稿
- JJF(蘇)211-2018 倒角卡尺、倒角量表校準規(guī)范-(現(xiàn)行有效)
- 餐飲垃圾處理
- 安全技術(shù)交底情況監(jiān)理核查記錄表
- 施工電梯通道方案
- 畢業(yè)設(shè)計論文晉華宮礦340萬噸新井通風(fēng)設(shè)計含全套CAD圖紙
- 閥門基礎(chǔ)知識下.
評論
0/150
提交評論