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

正文內(nèi)容

畢業(yè)論文-避障小車-基于80c51單片機的智能小車設(shè)計(參考版)

2024-11-20 18:43本頁面
  

【正文】 delay_nus(1000n)。 delay_nus(n)。 } 基于 80C51 單片機的智能小車設(shè)計 41 } } e=500。 //設(shè)置等待按鍵按下的時間 while(d) { if(key2==0) { delay(0)。 if(key1==0) { n++。 //設(shè)置最初的占空比為 50% d=1000。 init()。 temp=*(high*256+low)*。 high=TH0。 //當 echo 為 1 計數(shù)并等待 TR0=0。amp。 //當 echo 為零時等待 TR0=1。amp。 tri=1。 tri=0。 ET1=1。//先做好在測距范圍的準備 tri=1。 TL0=0。 p3=0。 p1=0。 TL1=0。 //設(shè) T0 為方式 1, GATE=1; EA=1。 p3=0。 p1=0。 P1=0。 delay_xus(100)。 delay_xus(100)。 P1=0。 delay_xus(100)。 delay_xus(100)。 P1=0。 delay_xus(100)。 delay_xus(100)。 deal[2]=temp/100。 deal[0]=temp%10。 } void delay_nus(uchar n) { while(n) { delay_100us()。c61。b1。a1。 //關(guān)閉計數(shù)器 T1 } void delay_100us() // 100us 固定延時函數(shù) { uchar a,b,c。 TL1=0。 } } void T1_timer() interrupt 1 //T1 中斷用來計數(shù)器溢出 ,超過測距范圍 { flag=0。 uchar code table[]={0xeb,0x88,0xb3,0xba,0xd8,0x7a,0x7b,0xa8,0xfb, 基于 80C51 單片機的智能小車設(shè)計 38 0xfa}。 uchar high,low。 int flag,a=0。 sbit key1=P2^7。 // 口輸出 持續(xù)時間 20us 的觸發(fā)脈沖給超聲波探測器 sbit echo=P3^2。 //為高時左拐 sbit p3=P2^3。 sbit p1=P2^1。最后,對在畢業(yè)設(shè)計期間給予我?guī)椭乃卸鲙熀屯瑢W(xué)表示最誠摯地感謝和最衷心 的 祝福。通過我們師生的共同努力,本 次 設(shè)計 基本上達到題目 規(guī)定的要求 。畢設(shè)期間 xxxx 老師對我在設(shè)計中出現(xiàn)的一些疑難問題給予了充分的指導(dǎo)和幫助。 ● 小車避障方式單一,超聲波模塊的穩(wěn)定性不是很高,偶有失靈的現(xiàn)象,單片機程序有時也會出現(xiàn)亂飛的現(xiàn)象 , 這些問題都需要我以后慢慢解決。 在懸空時 車輪轉(zhuǎn) 得很快,但一放到地上就跑的很慢。最好是前后輪分開供電。 這個問題主要是由于直流電機的內(nèi)驅(qū)力不夠,還有就是 小車的前輪轉(zhuǎn)向時拉低了驅(qū)動后輪所需的電壓導(dǎo)致小車不能前進。每天在實驗室 查資料學(xué)習(xí)單片機的知識 ,還可以上機編程,使我軟件調(diào)試 水平 也提高了。這使我深深感受到理論與實際間的差距。有時是 我程序編寫錯誤 的原因,有時可能是 組合程序時邏輯上 出了 錯誤 。 其 使用方法 為 : ● 先把學(xué) 習(xí)實驗板和計算機連接好(接好串口線和電源) ● 打開 STCISP v480,在 MCU Type 欄目下選中單片機,如 STC89C52RC:根據(jù)您的 9 針的數(shù)據(jù)線連接情況選中 COM 端口,最好把波特率適當下調(diào)一些, 如 圖61 中所示 : 基于 80C51 單片機的智能小車設(shè)計 33 圖 61 STCISP v480 的界面圖 ● 先確認硬件連接正確,按下圖點擊 “ 打開文件 ” 并在對話框內(nèi)找到您要下載的 HEX 文件 ; 選中兩個條件項,這樣可以使您在每次編譯 KEIL 時 HEX 代碼能自動加載到 STCISP,點擊 “Download/ 下載 ” ; 手動按下電源開關(guān)便即可把可執(zhí)行文件 HEX 寫入到單片機內(nèi),圖 62是正在寫入程序截圖: 圖 62 單片機程序下載截圖 基于 80C51 單片機的智能小車設(shè)計 34 7 總結(jié) 歷時 將近 三個月的設(shè)計過程中, 剛開始 我 在圖書館 邊查資料, 邊學(xué)習(xí)郭天祥老師的視頻教程 。掌握這一軟件的使用對于使用 51系列單片機的愛好者來說是十分必要的,如 果你使用 C語言編程,那么 Keil 幾乎就是你的不二之選,即使不使用 C語言而僅用匯編語言編程,其方便易用的集成環(huán)境、強大的軟件仿真調(diào)試工具也會令你事半功倍。 Keil 提供了包括 C 編譯器、宏匯編、連接器、庫管理和一個功能強大的仿真調(diào)試器等在內(nèi)的完整開發(fā)方案,通過一個集成開發(fā)環(huán)境( uVision)將這些部份組合在一起。 圖 51看門狗電路圖 基于 80C51 單片機的智能小車設(shè)計 32 6 軟件的簡單介紹 Keil 軟件 簡介 單片機開發(fā)中除必要的硬件外,同樣離不開軟件,我們寫的 C 語言源程序要變?yōu)?CPU 可以執(zhí)行的機器碼有兩種方法,一種是手工匯編,另一種是機器匯編,目前已極少使用手工匯編的方法了。否則,正好在哪里有死循環(huán),看門狗就不產(chǎn)生記滿輸出信號,不能重新啟動 CPU。若沒有微分電路,掃描輸入信號上的“ 1”狀態(tài)封死 4060,使之不能記數(shù),看門狗不起作用。 ● 幾個原則 : 看門狗電路必須由硬件邏輯組成,不宜由可編程計數(shù)器充當,因為 CPU 失控后,可能會修改可編程器件參數(shù),使看門狗失效。如果 Rs=450Ω, RT=45Ω, CT=1uF,則 f=10HZ。 Rs用于改善振蕩器的穩(wěn)定性, Rs 要大于 RT。如系統(tǒng)工作不正常(如程序跑飛、死循環(huán)等),程序?qū)?4060 發(fā)不出掃描信號,分頻器記滿 輸出一脈沖號使 CPU 復(fù)位。 4060 記數(shù)頻率由 RT和 CT決定。 本設(shè)計采用第三種方案實現(xiàn) “ 看門狗”電路,下面就對該方案作以介紹。實現(xiàn)硬件 “ 看門狗”電路方案較多,目前采用較多的方案有以下幾種: ● 采用微處理器監(jiān)控器; ● 采用單穩(wěn)態(tài)電 路來實現(xiàn) “ 看門狗”,單穩(wěn)定電路可采用 74LS123。 “ 看門狗”技術(shù)可由硬件實現(xiàn),可由軟件實現(xiàn),也可由兩者結(jié)合實現(xiàn)。為使程序脫離“死循環(huán)”,通常采用“看門狗技術(shù)”。如果操作者在場,就可以按下人工復(fù)位安鈕,強制系統(tǒng)復(fù)位 。 //設(shè)置周期為 1000us,即頻率為 1kHz } } 基于 80C51 單片機的智能小車設(shè)計 30 5“看門狗”技術(shù) PC 受到干擾而失控,引起程序亂飛,也可能使程序陷入“死循環(huán)”。 //占空比為: n*100/1000 p1=0。//設(shè)置前進的時間 advance(uchar e) { while(e) { p1=1。 if(key2==0) { n。 } } } d=1000。 //設(shè)置等待按鍵按下的時間 ,通過按鍵改變 n的值即可改變占空比 while(d) { if(key1==0) { delay(0)。 } } n==5。c++)。b++) for(c=0。a++) for(b=0。 for(a=0。 sbit key2=P2^6。 //厘米 } 初始化 發(fā)送觸發(fā)信號 開始計 時 等待回響信號 等待回響信號結(jié)束 關(guān)閉定時器 取出計數(shù)值 計算距離 基于 80C51 單片機的智能小車設(shè)計 28 按鍵改變占空比 程序設(shè)計 sbit G=P2^0。 low=TL0。 //關(guān)閉計數(shù) TR1=0。flag)。 //開啟定時器 T0用于計算時間 while(echoamp。flag)。 while((!echo)amp。 //發(fā)送觸發(fā) 脈沖 delay_xus(1)。 //允許 T1 中斷 圖 43 測距子程序流程圖 TR1=1。 echo=0。 flag=1。 //關(guān)閉計數(shù)器 T1 } void sensor() { TH0=0。 TL1=0。 } void T1_timer() interrupt 1 { flag=0。 P0=0。 P1=data_wei[1]。 P0=table[deal[2]]。 P0=0。 P1=data_wei[2]。 P0=table[deal[1]]。 P0=0。 P1=data_wei[3]。 P0=table[deal[0]]。 //轉(zhuǎn)換距離變量送數(shù)碼管顯示 deal[1]=temp/10%10。 void display() { uchar deal[3]。 基于 80C51 單片機的智能小車設(shè)計 25 4 軟件設(shè)計 系統(tǒng)主程序流程圖 圖 41系統(tǒng)主程序流程圖 N 前方有障礙否 前進 倒車 Y 右轉(zhuǎn) 發(fā)射檢測信號 減速 左轉(zhuǎn) 前方有障礙否 Y N 開始 初始化 小車 加速 勻速前進 顯示距離 里程 發(fā)射檢測信號 基于 80C51 單片機的智能小車設(shè)計 26 顯示子程序設(shè)計 及流程圖 顯示程序: uchar code data_wei[]={0x01,0x02,0x04,0x08}。 D1為電源指示燈。因此,對電源中的高頻分量,電解電容均含有電感,而集成穩(wěn)壓器內(nèi)部帶有負反饋,在高頻下,通過 C1 C18 的耦合,可能會使穩(wěn)壓器的輸出端產(chǎn)生有害振蕩。 C1 C18 均為電解電容。電路中的濾波電容 C16 可以改善輸出的電壓紋波。電機啟動時產(chǎn)生的電壓波動會嚴重影響單片機的正常工作,為了使系統(tǒng)更加穩(wěn)定,系統(tǒng)采用兩組電源供電如圖 318, 319所示∶ 1 2 3 4 5 6ABCD654321DCBAT i t l eN um be r R e vi s i o nS iz eBD a t e : 28 D e c 2 00 8 S h e e t of F il e : E : \單片機材料 \材料 \自動進出庫小車 \ L ove Z Y X .D dbD r a w n B y:1 32V VG N DIN O U TI C 578 05D1L E D C 170. 1C 190. 15VG N D162534K G 112J6R 22 1KC 1810 00 UC 1647 0U12 V 圖 318 5V供電電路 基于 80C51 單片機的智能小車設(shè)計 24 1 2 3 4 5 6ABCD654321DCBAT i t l eN um be r R e vi s i o nS iz eBD a t e : 28 D e c 2 00 8 S h e e t of F il e : E : \單片機材料 \材料 \自動進出庫小車 \ L ove Z Y X .D dbD r a w n B y:1 32V VG N DIN O U TI C 678 09 C 11
點擊復(fù)制文檔內(nèi)容
黨政相關(guān)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1