freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于距離感知的自動(dòng)玩具小車(chē)系統(tǒng)的設(shè)計(jì)實(shí)現(xiàn)畢業(yè)論文-資料下載頁(yè)

2025-07-14 14:32本頁(yè)面
  

【正文】 ”設(shè)置設(shè)備名稱(chēng)AT+NAMEParamOK查詢(xún)模塊角色AT+ROLE+ROLE=ParamOKParam:參數(shù)取值如下:0 從角色(Slave)1 主角色(Master)默認(rèn)值:0設(shè)置模塊角色AT+ROLEParamOK查詢(xún)配對(duì)碼AT+PIN+PIN=ParamOKParam:配對(duì)碼默認(rèn)值:“1234”設(shè)置配對(duì)碼AT+PINParamOK查詢(xún)串口波特率AT+BAUD+BAUD=ParamOKParam:波特率1—12002—24003—48004—96005—192006—384007—576008—1152009—230400A—460800B—921600C—1382400默認(rèn):4—9600設(shè)置串口波特率AT+BAUDParamOK 下位機(jī)程序設(shè)計(jì)下位機(jī)的程序開(kāi)發(fā)環(huán)境為Keil uVision4,開(kāi)發(fā)語(yǔ)言為C52。C52的語(yǔ)法規(guī)則與標(biāo)準(zhǔn)C類(lèi)似,但是比標(biāo)準(zhǔn)C更接近底層,也比匯編更接近高級(jí)語(yǔ)言,對(duì)于單片機(jī)的程序開(kāi)發(fā)提供了很方便的庫(kù)和開(kāi)發(fā)方法,可以提高下位機(jī)程序的開(kāi)發(fā)效率。 程序的主要組成部分系統(tǒng)程序主要包括環(huán)境數(shù)據(jù)采集與處理、小車(chē)控制、數(shù)據(jù)上傳三個(gè)部分,主程序的流程圖如下:開(kāi)始初始化下位機(jī)狀態(tài)及中斷(中斷)是否接受到指令?NY是否為小車(chē)運(yùn)行控制指令?Y執(zhí)行指令,控制小車(chē)運(yùn)行N環(huán)境數(shù)據(jù)采集與處理上傳環(huán)境數(shù)據(jù)結(jié)束串口中斷子程序清接受標(biāo)志RI讀接受緩沖區(qū)指令SBUF設(shè)置接收標(biāo)志CONTROL_FLAG返回主程序是否有障礙物且不是倒退與檢測(cè)指令?N停止小車(chē)運(yùn)行Y圖311 主程序及中斷子程序流程圖小車(chē)控制部分可以根據(jù)表21和表33來(lái)實(shí)現(xiàn),當(dāng)檢測(cè)到有新指令接收到,即CONTROL_FLAG為1時(shí),通過(guò)switch語(yǔ)句對(duì)不同的指令做相應(yīng)的操作,實(shí)現(xiàn)代碼如下:switch (CMD) { case TURN_LEFT://左轉(zhuǎn)指令 if (BACK_FLAG == ON) { BACK_FLAG=OFF。 stop_car()。 delay_ms(300)。//直流電機(jī)瞬間倒轉(zhuǎn)前做停止延時(shí)操作 } CAR_STATE=ON。 MOTOR_IN11=OFF。 MOTOR_IN12=OFF。 MOTOR_IN21=ON。 MOTOR_IN22=OFF。 break。 case TURN_RIGHT://右轉(zhuǎn) if (BACK_FLAG == ON) { BACK_FLAG=OFF。 stop_car()。 delay_ms(300)。 //直流電機(jī)瞬間倒轉(zhuǎn)前做停止延時(shí)操作 } CAR_STATE=ON。 MOTOR_IN11=ON。 MOTOR_IN12=OFF。 MOTOR_IN21=OFF。 MOTOR_IN22=OFF。 break。 case RUN://前進(jìn) if (BACK_FLAG == ON) { BACK_FLAG=OFF。 stop_car()。 delay_ms(300)。 //直流電機(jī)瞬間倒轉(zhuǎn)前做停止延時(shí)操作 } CAR_STATE=ON。 MOTOR_IN11=ON。 MOTOR_IN12=OFF。 MOTOR_IN21=ON。 MOTOR_IN22=OFF。 break。 case STOP://停止指令 CAR_STATE=OFF。 BACK_FLAG=OFF。 stop_car()。 break。 case BACK://后退指令 BACK_FLAG=ON。 if (CAR_STATE == ON) { CAR_STATE=OFF。 stop_car()。 delay_ms(300)。 //直流電機(jī)瞬間倒轉(zhuǎn)前做停止延時(shí)操作 } MOTOR_IN11=OFF。 MOTOR_IN12=ON。 MOTOR_IN21=OFF。 MOTOR_IN22=ON。 break。 case CHECK_CMD://檢測(cè)指令 if (CAR_STATE == 0) { check()。//檢測(cè)環(huán)境 send_msg()。//上傳數(shù)據(jù) } break。 }在case CHECK_CMD中,分別是環(huán)境數(shù)據(jù)檢測(cè)與處理check()和數(shù)據(jù)上傳操作send_msg()。check()中,主要做兩件事,一件事是從傳感器獲取環(huán)境參數(shù)值,另一件事是將獲得的原始數(shù)據(jù)稍作處理并把數(shù)據(jù)打包以便上傳。數(shù)據(jù)打包完后,就可以send_msg()了。 程序文件的結(jié)構(gòu)對(duì)于一般的C52開(kāi)發(fā),當(dāng)程序較小時(shí),對(duì)于本次課題,由于程序量較大,且不同的傳感器對(duì)應(yīng)著不同的總線時(shí)序,此時(shí)若將所有代碼放入一個(gè)文件中不方便閱讀,也顯得很混亂。在Keil中開(kāi)發(fā)下位機(jī)程序時(shí),命名規(guī)則就是傳感器的名稱(chēng),這樣,方便調(diào)試和修改。,,第四章 系統(tǒng)整體調(diào)試 上位機(jī)程序調(diào)試上位機(jī)程序,即Android應(yīng)用程序是在Eclipse開(kāi)發(fā)環(huán)境,Android應(yīng)用程序一般來(lái)說(shuō)可以通過(guò)啟動(dòng)模擬器來(lái)實(shí)現(xiàn)調(diào)試,但是由于模擬器沒(méi)有藍(lán)牙功能,故本次Android程序的調(diào)試是通過(guò)將真機(jī)用USB與電腦連接然后做調(diào)試的。在程序中,我添加了很多調(diào)試點(diǎn),()方法就可以在調(diào)試窗口看到設(shè)置調(diào)試斷點(diǎn)的信息,調(diào)試信息如下所示:圖41 Eclipse調(diào)試窗口將需要調(diào)試的應(yīng)用程序安裝到手機(jī)上后,就可以點(diǎn)擊界面上每個(gè)按鈕,如果沒(méi)有報(bào)錯(cuò)信息,且調(diào)試信息輸出正常,說(shuō)明沒(méi)有問(wèn)題。 下位機(jī)調(diào)試 硬件調(diào)試將硬件連接前,需要對(duì)每個(gè)模塊進(jìn)行調(diào)試,以確保每個(gè)模塊能正常工作。首先要將VCC和GND用萬(wàn)用電表測(cè)量電壓和正負(fù)極,防止因設(shè)計(jì)和焊接問(wèn)題而導(dǎo)致模塊燒毀等問(wèn)題出現(xiàn)。測(cè)量無(wú)誤后,將各個(gè)模塊的電源引腳接入開(kāi)發(fā)板,一般的模塊都有電源指示燈,若顯示正常,則說(shuō)明模塊的電源沒(méi)問(wèn)題。圖42 DHT11模塊調(diào)試圖圖43 MQ2模塊調(diào)試圖圖44 SPPCA藍(lán)牙模塊調(diào)試圖 軟件調(diào)試 軟件的調(diào)試一般來(lái)說(shuō)主要包括兩部分,分別是keil C52開(kāi)發(fā)時(shí)的語(yǔ)法邏輯調(diào)試和開(kāi)發(fā)板上實(shí)際功能調(diào)試。語(yǔ)法錯(cuò)誤一般在keil中的編譯階段可以報(bào)錯(cuò),主要是功能的調(diào)試。 由于不知道硬件中真正做了什么事,所以軟件調(diào)試起來(lái)相對(duì)麻煩。為了方便查看哪部分的軟件有問(wèn)題,我設(shè)置了一些硬件顯示來(lái)作為軟件的調(diào)試斷點(diǎn)。軟件功能調(diào)試的最重要部分就是上下位機(jī)通信的問(wèn)題,而軟件是通過(guò)中斷的方式來(lái)接收由上位機(jī)發(fā)送的指令的,所以,我在中斷函數(shù)中添加了P0=~P0這段代碼,P0與LED燈相連,當(dāng)有指令接收到時(shí)LED燈會(huì)由亮變暗或者由暗變亮這種閃爍。通過(guò)這種方式可以了解下位機(jī)是否接收到指令。當(dāng)然,為了能更好的了解接收指令的內(nèi)容,可以將指令發(fā)送到P0口,即P0=CMD,這樣通過(guò)LED的顯示可以知道接收到指令的內(nèi)容,不過(guò)顯示的是指令二進(jìn)制數(shù)。第四章 系統(tǒng)測(cè)試與分析 測(cè)試過(guò)程 檢查好連接后,就可以給小車(chē)通電。調(diào)試時(shí)用的是電源適配器,但是實(shí)際測(cè)試時(shí)小車(chē)是要實(shí)際跑動(dòng)起來(lái)的,所以,小車(chē)的電源就改為了電池。通電后,分別按下電池電源開(kāi)關(guān),單片機(jī)電源開(kāi)關(guān),直流電機(jī)開(kāi)關(guān),全部打開(kāi)后,檢查每個(gè)傳感器模塊的電源指示燈是否顯示正常,若不正常需要斷電檢查并解決問(wèn)題。藍(lán)牙模塊在沒(méi)有與其他設(shè)備建立連接時(shí)電源燈處于閃爍狀態(tài)。小車(chē)一切正常時(shí),打開(kāi)手機(jī)APP,點(diǎn)擊“藍(lán)牙開(kāi)”按鈕,點(diǎn)擊后按鈕會(huì)變?yōu)椤八{(lán)牙關(guān)”,稍等一會(huì)兒,可以在狀態(tài)欄上看到藍(lán)牙標(biāo)志出現(xiàn),說(shuō)明手機(jī)藍(lán)牙設(shè)備已經(jīng)打開(kāi),然后點(diǎn)擊“搜索”按鈕,可以看到按鈕下方出現(xiàn)已配對(duì)和未配對(duì)的藍(lán)牙設(shè)備,尋找下位機(jī)的SPPCA藍(lán)牙模塊,這里已經(jīng)將SPPCA藍(lán)牙模塊的名稱(chēng)改為了“designSGM”,點(diǎn)擊連接。若是已經(jīng)配對(duì)過(guò)的,則可以直接連接;若未配對(duì),點(diǎn)擊后會(huì)彈出輸入配對(duì)碼的對(duì)話框,這里的配對(duì)碼是默認(rèn)的“1234”,輸入,確定。上述兩種情況連接成功后會(huì)有“連接成功”的Toast提示。連接成功后,可以發(fā)現(xiàn)SPPCA藍(lán)牙模塊的電源指示燈由閃爍變?yōu)榱碎L(zhǎng)亮,這說(shuō)明連接成功了。連接成功后,點(diǎn)擊“控制”按鈕,就跳轉(zhuǎn)到了車(chē)的控制界面。搖動(dòng)模擬搖桿,小車(chē)便可以隨搖桿搖動(dòng)的方向移動(dòng),釋放搖桿后,小車(chē)自動(dòng)停止。小車(chē)停止時(shí)點(diǎn)擊“檢測(cè)”按鈕,屏幕中間便顯示出了小車(chē)所處位置的環(huán)境信息。 測(cè)試結(jié)果通電后,小車(chē)的狀態(tài)見(jiàn)下圖:圖45 小車(chē)通電后狀態(tài)打開(kāi)APP:圖46 APP打開(kāi)界面搜索藍(lán)牙:圖47 搜索藍(lán)牙界面連接成功,進(jìn)入控制界面:圖48 前進(jìn)圖49 右轉(zhuǎn)圖410 左轉(zhuǎn)圖411 倒退檢測(cè)環(huán)境:圖412 環(huán)境信息顯示 結(jié)果分析小車(chē)對(duì)上位機(jī)的指令響應(yīng)時(shí)間很短,所以小車(chē)的控制很靈敏,當(dāng)小車(chē)停止后,可以根據(jù)顯示的環(huán)境信息來(lái)判斷小車(chē)指定地點(diǎn)的環(huán)境情況,從而做出相應(yīng)決策。當(dāng)小車(chē)遇到障礙物時(shí),小車(chē)自動(dòng)停止,可以通過(guò)后退指令讓小車(chē)遠(yuǎn)離障礙物。結(jié) 論本次的系統(tǒng)設(shè)計(jì)是從人們很關(guān)注的一個(gè)點(diǎn)—安全出發(fā)參考文獻(xiàn)[1] 王向輝,張國(guó)印,賴(lài)明珠. Android應(yīng)用程序開(kāi)發(fā)(第二版)[M]. 北京:清華大學(xué)出版社,2012.[2] 李寧. Android應(yīng)用開(kāi)發(fā)實(shí)戰(zhàn)(第2版)[M]. 北京:機(jī)械工業(yè)出版社,2012.[3] 林長(zhǎng)青,成海量. 基于Android系統(tǒng)和藍(lán)牙通信的手機(jī)遙控車(chē)設(shè)計(jì)[J]. 山西電子技術(shù), 2012. [4] 李華明. Android游戲開(kāi)發(fā)二十四:360176。平滑游戲搖桿(觸屏方向?qū)Ш剑OL].2011. [5] 張毅剛,彭喜元,姜守達(dá)等. 新編MCS52單片機(jī)應(yīng)用設(shè)計(jì)(第3版)[M]. 哈爾濱:哈爾濱工業(yè)大學(xué)出版社,2008.[6] 劉彥文,張向東,譚峰. 微型計(jì)算機(jī)原理與接口技術(shù)[M]. 北京:中國(guó)林業(yè)出版社;北京大學(xué)出版社,2006.[7] DHT11中文說(shuō)明書(shū)[OL]. .[8] Michael McRoberts著,楊繼志,郭敬譯. Arduino從基礎(chǔ)到實(shí)踐[M]. 北京:電子工業(yè)出版社,2013.[9] 王成華,潘雙來(lái),江愛(ài)華. 電路與模擬電子學(xué)(第二版)[M]. 北京:科學(xué)出版社,2007.[10] 談敏,劉高平,陳紅良. 基于手機(jī)藍(lán)牙接口的小車(chē)遙控系統(tǒng)[N]. 浙江萬(wàn)里學(xué)院學(xué)報(bào),2012.致謝
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫(kù)吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1