智能循跡小車變速轉(zhuǎn)彎程序_第1頁
智能循跡小車變速轉(zhuǎn)彎程序_第2頁
智能循跡小車變速轉(zhuǎn)彎程序_第3頁
智能循跡小車變速轉(zhuǎn)彎程序_第4頁
免費預(yù)覽已結(jié)束,剩余1頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、#include <reg52 . h>#defineucharunsigned char#defineuintunsignedintuchar a,i,time_count=0, count =0,Dutycycle0=50,Dutycycle1 =50,flag;uchar state;/* 定義電機(jī)控制位 */sbit INT11=P00;/ 電機(jī)控制位,左電機(jī)左,芯片中的總開關(guān)sbit INT22=P01;/右電機(jī)控制位,高電平有效sbit INT33=P02;/控制左電機(jī),從而控制其中的車輪sbit INT44=P03;sbit funpwm0 =P13;/兩個控制 PW

2、M的端口sbit funpwm1 =P14;sbit IO4=P20;/ST188 輸出端口sbit IO1=P21;sbit IO2=P22;sbit IO3=P23;sbit IO5=P07;sfrCCON= 0xD8;/ PCA 控制寄存器sbitCCF0= CCON0;/ PCA 模塊 0 中斷標(biāo)志sbitCCF1= CCON1;/ PCA 模塊 0 中斷標(biāo)志sbitCR= CCON6;/ PCA 計數(shù)器陣列溢出標(biāo)志位sbitCF= CCON7;/ PCA 計數(shù)器陣列運行控制位sfrCMOD= 0xD9;/ PCA 工作模式寄存器sfrCL= 0xE9;/ PCA 的 16 位計數(shù)器

3、-低 8 位sfrCH= 0xF9;/ PCA 的 16 位計數(shù)器 -高 8 位sfrCCAPM0= 0xDA;/ PCA 模塊 0 的輸出脈沖頻率sfrCCAP0L= 0xEA;/ PCA 捕獲、比較寄存器低位字節(jié)sfrCCAP0H= 0xFA;/ PCA 捕獲、比較寄存器高位字節(jié)sfrCCAPM1= 0xDB;/ PCA 模塊 1 的輸出脈沖頻率sfrCCAP1L= 0xEB;/同上sfrCCAP1H= 0xFB;/同上sfrPCAPWM0= 0xf2;/ PCA 模塊 0 的 PWM寄存器sfrPCAPWM1= 0xf3;/ PCA 模塊 1 的 PWM寄存器/*-uS 延時函數(shù),含有輸

4、入?yún)?shù)unsigned char t,無返回值unsigned char是定義無符號字符變量,其值的范圍是0255這里使用晶振12M,精確延時請使用匯編, 大致延時長度如下T=tx2+5 uS-*/void DelayUs2x( unsignedchar t)while ( - t);/*-mS 延時函數(shù),含有輸入?yún)?shù)unsigned char t,無返回值unsigned char是定義無符號字符變量,其值的范圍是0255 這里使用晶振 12M,精確延時請使用匯編-*/void DelayMs( unsignedchar t)while (t - )/ 大致延時 1mSDelayUs2x(2

5、45);DelayUs2x(245);/*速度設(shè)定: 通過改變參數(shù)a,b來來改變兩路pwm的占空比數(shù)值越大占空比越小*/void pwm0(unsignedinta)CCAP0L=a;CCAP0H=a;void pwm1(unsigned intb)CCAP1L=b;b;=CCAP1Hvoid pwm_Init()CL =0;CH=0;CMOD=0x00;CCAP0H=CCAP0L=0x00;CCAPM0=0x42;CCAP1H=CCAP1L=0x00;CCAPM1=0x42;CR=1;delay(i)intk,j;for (j =1000;j >0;j - )for (k =200;k

6、 >0;k - )i - ;former()INT11=1;INT22=0;INT33=1;INT44=0;pwm0(45);pwm1(40);DelayMs(1000);turnleft0()pwm0(130);pwm1(30);DelayMs(1000);turnright0()pwm0(30);pwm1(130);DelayMs(1000);turnleft1()pwm0(0Xff);pwm1(0);DelayMs(1000);turnright1()pwm0(0);pwm1(0Xff);DelayMs(1000);stop()INT11=1;INT22=1;1;=INT33 IN

7、T44=1;void turnleft2()INT11=1;INT22=0;INT33=0;INT44=1;pwm0(0);pwm1(30);void turnright2()INT11=0;INT22=1;INT33=1;INT44=0;pwm0(30);pwm1(0);/*main()while (1)pwm_Init();DelayMs(20);主函數(shù) */while (1)if (IO5 =1)turnright2();elseINT11=1;INT22=1;INT33=1;INT44=1;/*if(IO3=0&&IO2=0&&IO1=0&&am

8、p;IO4=0) former(); if(IO3=0&&IO2=0&&IO1=0&&IO4=1) turnright1(); if(IO3=0&&IO2=0&&IO1=1&&IO4=0) turnright0(); if(IO3=0&&IO2=0&&IO1=1&&IO4=1) turnleft2(); if(IO3=0&&IO2=1&&IO1=0&&IO4=0) turnleft0(); if(IO3=

9、0&&IO2=1&&IO1=0&&IO4=1) turnright1(); if(IO3=0&&IO2=1&&IO1=1&&IO4=0) former(); if(IO3=0&&IO2=1&&IO1=1&&IO4=1) turnleft2(); if(IO3=1&&IO2=0&&IO1=0&&IO4=0) turnleft1(); if(IO3=1&&IO2=0&&IO1=1&&IO4=0) turnleft0();if(IO3=1&&IO2=0&&IO1=0&&IO4=1) former(); if(IO3=1&&IO2=0&&IO1=1&&IO4=1) turnright1(); if(IO3=1&&IO2=1&&IO1=0&&IO4=0) turnright2(); if(IO3=1&&IO2=1&&IO1=0&&a

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論