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

正文內(nèi)容

基于單片機(jī)的循跡小車畢業(yè)論文-資料下載頁

2025-06-24 16:05本頁面
  

【正文】 社. 1999:1361[11] 李全利,遲榮強(qiáng)編著.,2004:14191[12] 王守中編著.. 人民郵電出版社,2007:103108附錄A 原理圖及PCB圖 系統(tǒng)總設(shè)計(jì)電路圖單片機(jī)原理圖TCRT5000 傳感器模塊原理圖L298電機(jī)控制驅(qū)動(dòng)模塊原理圖PCB圖:?jiǎn)纹瑱C(jī)PCB圖L298N電機(jī)驅(qū)動(dòng)模塊PCB圖附錄B 程序代碼/智能循跡小車的C程序/include/*********************第一部分*********************/ //以下是電機(jī)驅(qū)動(dòng)芯片L298N 管腳位聲明 sbit PWM1=P1^0。 //電機(jī)A/B使能端 sbit PWM2=P1^1。 sbit IN1=P1^2。 //電機(jī)控制端 sbit IN2=P1^3。sbit IN3=P1^4。 sbit IN4=P1^5。 sbit RP1=P2^0。 //傳感器管腳位聲明sbit RP2=P2^1。 sbit RP3=P2^2。 sbit RP4=P2^3。int count1,count2。 //用于中斷計(jì)數(shù)//延時(shí)函數(shù),延時(shí)z秒void delay(int z) { int x,y。 for(x=z。x0。xp for(y=124。y0。y)。 } /*********************第二部分 電機(jī)控制子函數(shù)*********************/void forward1() //電機(jī)1前進(jìn) { IN1=0。 IN2=1。 } void forward2() //電機(jī)2前進(jìn) { IN3=0。 IN4=1。 }void back1() //電機(jī)1后退{(lán) IN1=1。 IN2=0。 } void back2() //電機(jī)2后退{(lán) IN3=1。 IN4=0。 } /*********************電機(jī)的速度控制 用PWM調(diào)速*********************/void speed(int t1,int sd1,int t2,int sd2) { if(t1sd1) //電機(jī)1 PWM調(diào)速 PWM1=1。 else PWM1=0。 if(t2sd2) //電機(jī)2 PWM調(diào)速PWM2=1。 else PWM2=0。 }/**************電機(jī)的前進(jìn)、左轉(zhuǎn)、右轉(zhuǎn)控制***************/void turn(int t1,int sd1,int t2,int sd2){ forward1()。 forward2()。 speed(t1,sd1,t2,sd2)。 } /*********************電機(jī)的后退控制*********************/void back(int t1,int sd1,int t2,int sd2) { back1()。 back2()。 speed(t1,sd1,t2,sd2)。 } /*********************第三部分 主函數(shù)*********************/void main() { int num=0。TMOD=0x01。 //中斷模式設(shè)置 EA=1。 TH0=(655361000)/256。 //定時(shí) 1ms TL0=(655361000)%256。 ET0=1。 TR0=1。 turn(count1,250,count2,250)。 //使小車沖上黑色軌道 delay(350)。 //延時(shí)等待小車沖上黑色軌道while(1) { if(RP1==1amp。amp。RP2==1amp。amp。RP3==1amp。amp。RP4==1) back(count1,50,count2,50)。 //1111 當(dāng)四個(gè)LED都沒檢測(cè)到黑線時(shí),小車后退 if(RP1==1amp。amp。RP2==0amp。amp。RP3==0amp。amp。RP4==1) turn(count1,200,count2,200)。 //1001 當(dāng)?shù)诙?、第三個(gè)LED檢測(cè)到黑線時(shí),小車前進(jìn)if(RP1==0amp。amp。RP2==1amp。amp。RP3==1amp。amp。RP4==0)turn(count1,150,count2,150)。 // 0110 當(dāng)?shù)谝?、第四個(gè)LED檢測(cè)到黑線時(shí),小車減速前進(jìn) /*********************小車左轉(zhuǎn)*********************/if(RP1==0amp。amp。RP2==1amp。amp。RP3==1amp。amp。RP4==1) turn(count1,0,count2,150)。 // 0111 當(dāng)只有第一個(gè)LED檢測(cè)到黑線時(shí),小車左轉(zhuǎn)if(RP1==1amp。amp。RP2==0amp。amp。RP3==1amp。amp。RP4==1)turn(count1,80,count2,150)。 // 1011 當(dāng)?shù)诙€(gè)LED檢測(cè)到黑線時(shí),小車偏左轉(zhuǎn) if(RP1==0amp。amp。RP2==0amp。amp。RP3==1amp。amp。RP4==1) turn(count1,0,count2,100)。 // 0011 當(dāng)?shù)谝?、二個(gè)LED檢測(cè)到黑線時(shí),小車左轉(zhuǎn)if(RP1==0amp。amp。RP2==0amp。amp。RP3==0amp。amp。RP4==1) turn(count1,0,count2,200)。 // 0001 當(dāng)?shù)谝?、二、三個(gè)LED檢測(cè)到黑線時(shí),小車左大轉(zhuǎn) /*********************小車右轉(zhuǎn)*********************/if(RP1==1amp。amp。RP2==1amp。amp。RP3==0amp。amp。RP4==1)turn(count1,150,count2,80)。 // 1101 當(dāng)?shù)谌齻€(gè)LED檢測(cè)到黑線時(shí),小車偏右轉(zhuǎn)if(RP1==1amp。amp。RP2==1amp。amp。RP3==1amp。amp。RP4==0) turn(count1,180,count2,0)。 // 1110 當(dāng)?shù)谒膫€(gè)LED檢測(cè)到黑線時(shí),小車右轉(zhuǎn) if(RP1==1amp。amp。RP2==1amp。amp。RP3==0amp。amp。RP4==0) turn(count1,100,count2,0)。 // 1100 當(dāng)?shù)谌⑺膫€(gè)LED檢測(cè)到黑線時(shí),小車右轉(zhuǎn) if(RP1==1amp。amp。RP2==0amp。amp。RP3==0amp。amp。RP4==0)turn(count1,200,count2,0)。 // 1000當(dāng)?shù)诙?、三、四個(gè)LED檢測(cè)到黑線時(shí),小車右大轉(zhuǎn) /****************小車檢測(cè)到全黑情況的處理****************/if(RP1==0amp。amp。RP2==0amp。amp。RP3==0amp。amp。RP4==0) { if(num==0){ back1()。 // 0000 當(dāng)四個(gè)LED第一次檢測(cè)到黑線時(shí),左輪后退右輪前進(jìn),小車左轉(zhuǎn) forward2()。 delay(100)。 //延時(shí)100ms,等待小車轉(zhuǎn)過彎道} if(num0 amp。amp。 num6) { turn(count1,200,count2,200)。 // 0000 當(dāng)四個(gè)LED再次檢測(cè)到黑線的次數(shù)小于6次時(shí) //即到達(dá)黑線時(shí)小車前進(jìn)速度大于后退速度 } if(num=6){ PWM1=0。 PWM2=0。 //當(dāng)四個(gè)LED第六次檢測(cè)到黑線時(shí),小車停止} num++。 } } /*************第四部分 中斷服務(wù)函數(shù)*************/ void time0()interrupt 1 { TH0=(655361000)/256。 //定時(shí)1ms TL0=(655361000)%256。 count1++。 count2++。 if(count1=500) //周期是500ms count1=0。 if(count2=500) //周期是500ms count2=0。 }附錄C 硬件實(shí)物圖自動(dòng)循跡小車TCRT5000 循跡傳感器模塊L298N 電機(jī)驅(qū)動(dòng)模塊單片機(jī)電路3
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報(bào)告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1