




下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、/*/5路超聲波避障實(shí)驗(yàn):51單片機(jī)+HC-SR04超聲波/*/#include/器件配置文件#include#defineRX1P3_6/小車(chē)左側(cè)超聲波HC-SR04接收端#defineTX1P1_7/發(fā)送端#defineRX2P3_3/左前方超聲波#defineTX2P0_2#defineRX3P2_4/正前方超聲波#defineTX3P2_5#defineRX4P3_5/右前方超聲波#defineTX4P3_4#defineRX5P3_7/右側(cè)超聲波#defineTX5P1_6#defineLeft_moto_pwmP1_5/PWM信號(hào)端#defineRight_moto_pwmP1_4
2、/PWM信號(hào)端/定義小車(chē)驅(qū)動(dòng)模塊輸入IO口sbitIN1=P10;sbitIN2=P11;sbitIN3=P12;sbitIN4=P13;sbitEN1=P14;sbitEN2=P15;bitRight_moto_stop=1;bitLeft_moto_stop=1;#defineLeft_moto_goIN1=0,IN2=1,EN1=1;/左電機(jī)向前走#defineLeft_moto_backIN1=1,IN2=0,EN1=1;/左邊電機(jī)向后走#defineLeft_moto_StopEN1=0;/左邊電機(jī)停轉(zhuǎn)#defineRight_moto_goIN3=1,IN4=0,EN2=1;/右邊
3、電機(jī)向前走#defineRight_moto_backIN3=0,IN4=1,EN2=1;/右邊電機(jī)向后走#defineRight_moto_StopEN2=0;/右邊電機(jī)停轉(zhuǎn)unsignedcharpwm_val_left=0;/變量定義unsignedcharpush_val_left=0;/左電機(jī)占空比N/20unsignedcharpwm_val_right=0;unsignedcharpush_val_right=0;/右電機(jī)占空比N/20unsignedinttime=0;unsignedinttimer=0;unsignedlongS1=0;unsignedlongS2=0;un
4、signedlongS3=0;unsignedlongS4=0;1 / 5unsignedlongS5=0;voiddelay_1ms(unsignedcharx)/1ms延時(shí)函數(shù),100ms以內(nèi)可用unsignedchari;while(x-)for(i=124;i0;i-);/*/voidCount1()/計(jì)算左側(cè)超聲波距離的函數(shù)while(!RX1);/當(dāng)RX1為零時(shí)等待TR0=1;/開(kāi)啟計(jì)數(shù)while(RX1);/當(dāng)RX1為1計(jì)數(shù)并等待TR0=0;/關(guān)閉計(jì)數(shù)time=TH0*256+TL0;TH0=0;TL0=0;S1=(time*1.7)/100;/算出來(lái)是CMvoidCount2(
5、)/計(jì)算函數(shù)while(!RX2);/當(dāng)RX2為零時(shí)等待TR0=1;/開(kāi)啟計(jì)數(shù)while(RX2);/當(dāng)RX2為1計(jì)數(shù)并等待TR0=0;/關(guān)閉計(jì)數(shù)time=TH0*256+TL0;TH0=0;TL0=0;S2=(time*1.7)/100;/算出來(lái)是CMvoidCount3()/計(jì)算函數(shù)while(!RX3);/當(dāng)RX3為零時(shí)等待TR0=1;/開(kāi)啟計(jì)數(shù)while(RX3);/當(dāng)RX3為1計(jì)數(shù)并等待TR0=0;/關(guān)閉計(jì)數(shù)time=TH0*256+TL0;TH0=0;TL0=0;S3=(time*1.7)/100;/算出來(lái)是CMvoidCount4()/計(jì)算函數(shù)while(!RX4);/當(dāng)RX4為
6、零時(shí)等待TR0=1;/開(kāi)啟計(jì)數(shù)while(RX4);/當(dāng)RX4為1計(jì)數(shù)并等待TR0=0;/關(guān)閉計(jì)數(shù)time=TH0*256+TL0;TH0=0;TL0=0;S4=(time*1.7)/100;/算出來(lái)是CMvoidCount5()/計(jì)算函數(shù)while(!RX5);/當(dāng)RX5為零時(shí)等待TR0=1;/開(kāi)啟計(jì)數(shù)while(RX5);/當(dāng)RX5為1計(jì)數(shù)并等待TR0=0;/關(guān)閉計(jì)數(shù)time=TH0*256+TL0;TH0=0;TL0=0;S5=(time*1.7)/100;/算出來(lái)是CMvoidleftrun(void)push_val_left=20;push_val_right=20;Left_mo
7、to_back/左電機(jī)往后走Right_moto_go/右電機(jī)往前走/*/右轉(zhuǎn)voidrightrun(void)push_val_left=20;push_val_right=20;Left_moto_go/左電機(jī)往前走Right_moto_back/右電機(jī)往后走/*/停止voidstoprun(void)Left_moto_Stop/左電機(jī)停Right_moto_Stop/右電機(jī)停/*/*PWM調(diào)制電機(jī)轉(zhuǎn)速*/*/*左電機(jī)調(diào)速*/*調(diào)節(jié)push_val_left的值改變電機(jī)轉(zhuǎn)速,占空比*/voidpwm_out_left_moto(void)if(Left_moto_stop) if(pw
8、m_val_left=20)pwm_val_left=0;elseLeft_moto_pwm=0;/*/*右電機(jī)調(diào)速*/voidpwm_out_right_moto(void)if(Right_moto_stop)if(pwm_val_right=20)pwm_val_right=0;elseRight_moto_pwm=0;/*/voidtimer0()interrupt1/T0中斷/*/*TIMER1中斷服務(wù)子函數(shù)產(chǎn)生PWM信號(hào)*/voidtimer1()interrupt3TH1=(65536-1000)/256;/1ms定時(shí)TL1=(65536-1000)%256;timer+;pwm
9、_val_left+;pwm_val_right+;pwm_out_left_moto();pwm_out_right_moto();/*/voidmain(void)TMOD=0x11;/設(shè)T0為方式1,GATE=1;TH0=0;TL0=0;TH1=(65536-1000)/256;/1ms定時(shí)TL1=(65536-1000)%256;ET0=1;/允許T0中斷ET1=1;/允許T1中斷TR1=1;/開(kāi)啟定時(shí)器EA=1;/開(kāi)啟總中斷while(1)TX1=1;/開(kāi)啟超聲波1探測(cè)delay_1ms(1);TX1=0;Count1();/測(cè)距TX2=1;delay_1ms(1);TX2=0;Count2();TX3=1;delay_1ms(1);TX3=0;Count3();TX4=1;delay_1ms(1);TX4=0;Count4();TX5=1;delay_1ms(1);TX5=0;Count5();if(S320&S120&S520)/進(jìn)入狹窄通道backrun();/倒車(chē)delay_1ms(100);elseif(S320&S1S5)/車(chē)子與障礙物90度垂直,左邊距離小右轉(zhuǎn)rightrun();elsei
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 天津理工大學(xué)中環(huán)信息學(xué)院《數(shù)據(jù)科學(xué)與工程引論》2023-2024學(xué)年第一學(xué)期期末試卷
- 宜春學(xué)院《現(xiàn)代舞技術(shù)(2)》2023-2024學(xué)年第二學(xué)期期末試卷
- 上海大學(xué)《全球變化導(dǎo)論》2023-2024學(xué)年第二學(xué)期期末試卷
- 江蘇省徐州市豐縣2024-2025學(xué)年四下數(shù)學(xué)期末學(xué)業(yè)水平測(cè)試試題含解析
- 山東現(xiàn)代學(xué)院《中級(jí)英語(yǔ)閱讀1》2023-2024學(xué)年第一學(xué)期期末試卷
- 蘇州百年職業(yè)學(xué)院《知識(shí)管理》2023-2024學(xué)年第二學(xué)期期末試卷
- 克孜勒蘇職業(yè)技術(shù)學(xué)院《無(wú)線寬帶接入技術(shù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 二零二五版品牌加盟合作協(xié)議書(shū)
- 綜合研究論證
- 英語(yǔ)演講藝術(shù)
- 醫(yī)院“雙培養(yǎng)”制度
- 時(shí)區(qū)與區(qū)時(shí)課件
- 許慎《說(shuō)文解字》(全文)
- DB34∕T 1948-2013 建設(shè)工程造價(jià)咨詢檔案立卷標(biāo)準(zhǔn)
- 國(guó)內(nèi)外橋梁垮塌事故案例分析
- GB∕T 20721-2022 自動(dòng)導(dǎo)引車(chē) 通用技術(shù)條件
- 通用門(mén)座機(jī)安裝工藝2
- 企業(yè)集團(tuán)財(cái)務(wù)管理綜合練習(xí)計(jì)算
- 養(yǎng)老機(jī)構(gòu)服務(wù)高質(zhì)量115項(xiàng)明細(xì)
- 圓管涵結(jié)構(gòu)計(jì)算
- 船舶首制船設(shè)計(jì)任務(wù)書(shū)doc
評(píng)論
0/150
提交評(píng)論