新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應用 > 機器人教程4:紅外循跡及LM339模塊

機器人教程4:紅外循跡及LM339模塊

作者: 時間:2016-12-01 來源:網(wǎng)絡(luò) 收藏



圖7紅外循跡原理圖

5、紅外循跡程序

下面給出一個簡單的程序用以實現(xiàn)小車的循跡,為了便于對程序的理解,此處用非PWM的方法寫出,即電源電壓直接加了電機兩端,以固定速度實現(xiàn)循跡。

#include

#define uint unsigned int

#define uchar unsigned char

sbit PWM1=P2^0;//接IN1控制正轉(zhuǎn)

sbit PWM2=P2^1;//接IN2控制反轉(zhuǎn)

sbit PWM3=P2^2;//接IN1控制正轉(zhuǎn)

sbit PWM4=P2^3;//接IN2控制反轉(zhuǎn)

sbit PWM5=P2^4;//接IN1控制正轉(zhuǎn)

sbit PWM6=P2^5;//接IN2控制反轉(zhuǎn)

sbit PWM7=P2^6;//接IN1控制正轉(zhuǎn)

sbit PWM8=P2^7;//接IN2控制反轉(zhuǎn)

sbit ss1=P1^0;//左二級

sbit ss2=P1^1;//左一級

void main()

{

while(1)

{

if(ss1==0&&ss2==0)//直走

{

PWM1=1;

PWM2=0;

PWM3=1;

PWM4=0;

PWM5=1;

PWM6=0;

PWM7=1;

PWM8=0;

}

if(ss1==1&&ss2==0)//右邊檢測到,向右轉(zhuǎn)

{

PWM1=0;

PWM2=0;

PWM3=0;

PWM4=0;

PWM5=1;

PWM6=0;

PWM7=1;

PWM8=0;

}

if(ss1==0&&ss2==1)//左邊檢測到,向左轉(zhuǎn)

{

PWM1=1;

PWM2=0;

PWM3=1;

PWM4=0;

PWM5=0;

PWM6=0;

PWM7=0;

PWM8=0;

}

}

}


上一頁 1 2 下一頁

評論


技術(shù)專區(qū)

關(guān)閉