|
/****************************
R M L 1 0 1 小車(chē)正對(duì)軌跡
R M L 1 1 0 小車(chē)右偏
R M L 0 1 1 小車(chē)左偏
****************************/
#include<reg51.h>
sbit R=P1^0;//左邊傳感器
sbit M=P1^1;//中間傳感器
sbit L=P1^2;//右邊傳感器
sbit RM=P1^3;//右邊電機(jī)
sbit LM=P1^4;//左邊電機(jī)
void main()
{
RM=1;
LM=1;//左右兩個(gè)電機(jī)同時(shí)啟動(dòng),直線前進(jìn)
while(1)
{
if((R==1)&&(M==1)&&(L==0))//小車(chē)右偏
{
RM=1;
LM=0;//左邊的電機(jī)停止轉(zhuǎn)動(dòng),右邊的電機(jī)轉(zhuǎn)動(dòng),這樣就實(shí)現(xiàn)了左轉(zhuǎn)
}
if((R==0)&&(M==1)&&(L==1))//小車(chē)左偏
{
RM=0;
LM=1;//右邊的電機(jī)停止轉(zhuǎn)動(dòng),左邊的電機(jī)轉(zhuǎn)動(dòng),這樣就實(shí)現(xiàn)了右轉(zhuǎn)
}
if((R==0)&&(M==1)&&(L==1))//小車(chē)居中
{
RM=1;
LM=1;//左右電機(jī)同時(shí)轉(zhuǎn),直線前進(jìn)
}
}
}
|
|