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

正文內(nèi)容

基于51單片機(jī)控制的自動(dòng)停泊小車的設(shè)計(jì)與實(shí)現(xiàn)畢業(yè)設(shè)計(jì)論文(參考版)

2025-07-07 12:49本頁面
  

【正文】 a 10。 PWM2 = 1。 Back()。 PWM2 = 0。 goto A。 PWM2 = 0。 } delayms(1)。 a++) { if(a%2 == 0){ PWM2 = ~PWM2。 for(a =0。 PWM1 = 1。 delayms(100)。 } PWM1 = 0。 } } Sound = 1。 if(!flag_c){ ceju()。 PWM1 = 0。 } delayms(1)。 a++) 青島理工大學(xué)琴島學(xué)院畢業(yè)設(shè)計(jì)(論文) 34 { if(a%2 == 0){ PWM2 = ~PWM2。 for(a =0。 PWM1 = 1。 PWM2 = 0。 flag_c = 0。 flag_c = 1。 PWM2 = 0。 } delayms(1)。 a++) { if(a%2 == 0){ PWM2 = ~PWM2。 for(a =0。 PWM1 = 1。 delayms(100)。 } PWM1 = 0。 } } Sound = 1。 if(!flag_c){ ceju()。 PWM1 = 0。 } delayms(1)。 a++) { if(a%2 == 0){ PWM2 = ~PWM2。 for(a =0。 PWM1 = 1。 delayms(100)。 } PWM1 = 0。 } } Sound = 1。 if(!flag) { ceju()。 PWM2 = 0。 } delayms(1)。 a++) { if(a%2 == 0) { PWM2 = ~PWM2。 for(a =0。 PWM1 = 1。 flag_c = 0。 BZ_L=1。 ET0=1。 TH0=0。 DisplayListChar(0, 1, Cls)。 Sound = 1。 / } 主函數(shù): void main(void) { uint a。 Conut()。 while(RX)。 while(!RX)。 IN4=0。 IN2=1。 IN4=1。 IN2=0。 IN4=0。 IN2=0。 IN4=0。 IN2=0。 IN4=1。 IN2=1。b++)。a++) for(b=0。 for(a=0。 } void delayms(unsigned int ms) { unsigned int a。 _nop_()。 _nop_()。 _nop_()。 _nop_()。 _nop_()。 _nop_()。 _nop_()。 _nop_()。 _nop_()。 _nop_()。 _nop_()。 } } void zd0() interrupt 1 { flag=1。 DisplayOneChar(3, 1, ASCII[disbuff[2]])。 DisplayOneChar(1, 1, ASCII[10])。 disbuff[2]=S%1000%10 %10。 } else { disbuff[0]=S%1000/100。 DisplayOneChar(3, 1, ASCII[11])。 DisplayOneChar(1, 1, ASCII[10])。 if((S=700)||flag==1) { 青島理工大學(xué)琴島學(xué)院畢業(yè)設(shè)計(jì)(論文) 31 flag=0。 TL0=0。 } void Conut(void) { time=TH0*256+TL0。 a0。 c 125 。 b 125。 } } } void Delays(uint a) { uchar b,c。 ListLength++。= 0xF。= 0x1。 ListLength = 0。 WriteDataLCM(DData)。 X |= 0x80。= 0xF。= 0x1。 WriteCommandLCM(0x0F,1)。 WriteCommandLCM(0x01,1)。 WriteCommandLCM(0x38,1)。 WriteCommandLCM(0x38,0)。 WriteCommandLCM(0x38,0)。 WriteCommandLCM(0x38,0)。 / return(LCM_Data)。 while (LCM_Data amp。 LCM_E = 0。 LCM_RW = 1。 } 青島理工大學(xué)琴島學(xué)院畢業(yè)設(shè)計(jì)(論文) 30 unsigned char ReadStatusLCM(void) { LCM_Data = 0xFF。 LCM_E = 1。 LCM_E = 0。 } unsigned char ReadDataLCM(void) { LCM_RS = 1。 LCM_E = 0。 LCM_RW = 0。 LCM_Data = WCLCM。 LCM_E = 1。 LCM_E = 0。 LCM_RS = 1。 void WriteDataLCM(unsigned char WDLCM) { ReadStatusLCM()。 bit flag =0。 unsigned int time=0。}。,39。,39。,39。,39。,39。,39。,39。,39。,39。,39。,39。,39。 unsigned char code ASCII[15] = {39。 unsigned char ReadStatusLCM(void)。 define Busy 0x80 void Delay5Ms(void)。 sbit LCM_E = P2^4。 sbit LCM_RW = P2^5。 sbit PWM2 = P1^5。 sbit IN4=P1^3。 sbit IN2=P1^1。 sbit RX=P3^2。 sbit BZ_R=P1^7。最后我要感謝我的同學(xué)們,每當(dāng)一個(gè)人遇到問題時(shí),其它同學(xué)都會(huì)無私的利用自己的時(shí)間幫助其解決問題,讓我感覺到了集體的力量,讓我明白了只要我們團(tuán)結(jié),沒有什么不可戰(zhàn)勝。其次,我要感謝教研組的其它老師,因?yàn)樵谖业膶?dǎo)師不在或者忙碌時(shí),我遇到困難后經(jīng)常麻煩他們,不過老師們都會(huì)細(xì)心地為我講解。如果不是他們,我在設(shè)計(jì)制作期間遇到的無數(shù)艱難將會(huì)無法度過。除了對知識(shí)的掌握和深化,我還知道了團(tuán)隊(duì)的重要性,因?yàn)闆]有同學(xué)們的幫助,此次設(shè)計(jì)也就很難完成,團(tuán)隊(duì)作 用是偉大的。并且讓我感覺到自己的知識(shí)面和動(dòng)手能力等多方面都得到了加強(qiáng),比起以前更上一層樓。但是通過此次設(shè)計(jì) ,使我把課堂上學(xué)到的 C 語言知識(shí)、單片機(jī)知識(shí)全部應(yīng)用到實(shí)踐中去,讓理論與實(shí)踐有了完美的結(jié)合,在此結(jié)合的過程中讓自己的知識(shí)得到強(qiáng)化和復(fù)習(xí), 溫故而知新,學(xué)到了不少新的知識(shí)。它讓我知道只有不斷摸索,不斷創(chuàng)新,不斷超越自己才能掃盡眼前的霧霾,迎接和煦的陽光,創(chuàng)造美好的新生活。雖然我做出來的設(shè)計(jì)與期望相差很大,但我看著自己的成果還是很欣慰,很高興。 青島理工大學(xué)琴島學(xué)院畢業(yè)設(shè)計(jì)(論文) 26 結(jié) 論 在大學(xué)的最后這段時(shí)間里,我把全身心投入到畢業(yè)設(shè)計(jì)中去,雖然學(xué)校給的時(shí)間是兩個(gè)月,但由于自身原因和課 題原因,我不得不提前準(zhǔn)備,期間嘗遍了設(shè)計(jì)帶給我的酸甜苦辣。其次,對單片機(jī)進(jìn)行升級,變 為可以進(jìn)行更強(qiáng)大的數(shù)據(jù)處理的芯片,在對此進(jìn)行功能附加,讓小車完成自動(dòng)尋找車位,并且完成倒車;然后對程序進(jìn)行調(diào)整,簡化主函數(shù),這樣有利于程序更好的運(yùn)行,并且在運(yùn)行期間不會(huì)出錯(cuò);而且在功能改進(jìn)時(shí)程序更加簡易明了。 設(shè)計(jì)的不足: 此次設(shè)計(jì)完成 后,小車可以實(shí)現(xiàn)的功能符合課題的基本要求,雖然在制作、調(diào)試過程中歷盡艱辛,并付出了很多,但是設(shè)計(jì)中還存在著不足和需要改進(jìn)的地方,具體如下: 需要計(jì)算好地面與車輪的摩擦,會(huì)導(dǎo)致誤差; 小車可以自動(dòng)尋找車位,并完成倒車; 主函數(shù)太大,運(yùn)行時(shí)會(huì)出現(xiàn)問題; 對電機(jī)的控制不準(zhǔn)確,會(huì)出現(xiàn)碰撞; 萬向輪有時(shí)會(huì)影響小車的前進(jìn)方向。到最后解決問題也好點(diǎn)了不少時(shí)間,不過,問題都已迎刃而解: 此次涉及小車不需要自動(dòng)尋找停車位,那樣會(huì)多附加很多功能,難以實(shí)現(xiàn); 初始位置應(yīng)該與左側(cè)的障礙物平行; 入彎切入角約為 40176。 本次設(shè)計(jì)主要考慮的問題有: 小車是否需要自動(dòng)尋找泊車位置; 小車的初始位置如何 選擇; 切入角度大小是多少; 超聲波模塊測得與后方距離為多少時(shí)向前移動(dòng); 如果需要向前移動(dòng),需要移動(dòng)多少。不論是 L298N 電機(jī)驅(qū)動(dòng)模塊,還是超聲波測距模塊、紅外避障模塊,都能正常工作。 青島理工大學(xué)琴島學(xué)院畢業(yè)設(shè)計(jì)(論文) 24 第五章 自動(dòng)停泊小車的測試 第一次測試的時(shí)候伴隨著我緊張的心情,小車還是出現(xiàn)了一些小問題。 … . 青島理工大學(xué)琴島學(xué)院畢業(yè)設(shè)計(jì)(論文) 23 以上所顯示程序代碼就是在忙檢測和顯示設(shè)置方面完成的前提下,進(jìn)行 數(shù)據(jù)的讀與寫的過程,并且將得到的數(shù)據(jù)顯示在液晶屏上。 LCM_E = 1。 LCM_E = 0。 } unsigned char ReadDataLCM(void) { LCM_RS = 1。 LCM_E = 0。 LCM_RW = 0。 LCM_Data = WCLCM。隨著液晶屏的初始化操作完成以后,就該對其忙檢測來確定 LCD 液晶屏當(dāng)前的狀態(tài)。 delay(5)。 …… . delay(5)。 LCD1602 液晶顯示程序中初始化程序部分如下所示: 青島理工大學(xué)琴島學(xué)院畢業(yè)設(shè)計(jì)(論文) 22 void LcdInitiate(void) { delay(15)。而當(dāng)不存在障礙物則完成泊車過程。 紅外避障模塊工作流程圖如圖 43 所示: 開始完成泊車初始化開始泊車是否檢測到障礙物?是否檢測到障礙物?結(jié)束是否是否 圖 43 紅外避障流程圖 在此 流程圖中,我們可以看出紅外模塊在不同的工作狀態(tài)下所執(zhí)行的運(yùn)行狀態(tài)和執(zhí)行的操作也不相同。當(dāng)左右兩側(cè)檢測到障礙物時(shí),蜂鳴器進(jìn)行報(bào)警,小車進(jìn)行停車操作,并打開延時(shí)。紅外模塊的功能可以獨(dú)立完成,只需要給此模塊一個(gè)高或低的電平即可。 紅外避障模塊程序 在本次設(shè)計(jì)中,紅外模塊的作用是對小車的運(yùn)動(dòng)狀態(tài)進(jìn)行控制。 } 以上程序?yàn)槌暡y距的實(shí)現(xiàn),當(dāng)模塊輸出口( RX)為 0 時(shí)開始等 待,并且開啟計(jì)數(shù),當(dāng)模塊輸出口為 1 時(shí)開始計(jì)數(shù)并等待,然后關(guān)閉計(jì)數(shù),最后調(diào)用Conut 函數(shù)進(jìn)行計(jì)算對距離進(jìn)行計(jì)算,并且進(jìn)行延時(shí)。 Conut()。 while(RX)。 while(!RX)。當(dāng)紅外避障模塊監(jiān)測到后方有障礙物時(shí),小車進(jìn)行停車操作,此時(shí)超聲波進(jìn)行距離檢測。本次設(shè)計(jì)采用的是 IN1 和 IN2 引腳控制左端電機(jī), IN3 和 IN4 控制右端電機(jī)的 2輪小車,通過控制不同的電平對引腳的輸入從而控制小車當(dāng)前的狀態(tài)。 N4=0。 IN2=1。 IN3=1。 L298N 電機(jī)驅(qū)動(dòng)模塊程序如下所示: void Go() { IN1=1。 L298N 電機(jī)驅(qū)動(dòng)程序 L298N 電機(jī)驅(qū)動(dòng)模塊可以實(shí)現(xiàn)小車的 5 個(gè)運(yùn)動(dòng)狀態(tài)
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1