Void main()
{
While (1)
{
SR = PORTA.0;
SL = PORTA.1;
SC = PORTA.2;
if (SR==1) center();
if (SL==1) moveright();
if (SC==1) moveleft();
} }
function center()
{
PORTD.4=1;
PORTD.5=0;
PORTD.6=1;
PORTD.7=0;
Return 0;
}
function moveright()
{
PORTD.4=1;
PORTD.5=0;
PORTD.6=0;
PORTD.7=0;
Return 0;
}
function moveleft()
{
PORTD.4=0;
PORTD.5=0;
PORTD.6=1;
PORTD.7=0;
Return ;
}
یک مثال برای کنترل ربات با 5 سنسور در ساده ترین حالت
SR1 Porta.4 سنسور سمت راست ما و به وصل است
SR2 Porta.3 سنسور سمت راست ما و به وصل است
SL1 Porta.2 سنسور سمت چپ ما و به وصل است
SL2 Porta.1 سنسور سمت چپ ما و به وصل است
SC Porta.0 سنسور وسط ما و به وصل است
موتور های ما نیز به Portd.4 , Portd.5 , Portd.6 , Portd.7 وصل است
Void main()
{
While (1)
{
SR1 = PORTA.4;
SR2 = PORTA.3;
SL1 = PORTA.2;
SL2 = PORTA.1;
SC = PORTA.0;
if (SC==1) center();
if (SL1==1) moveleft();
if (SR1==1) moveright();
if (SL2==1) moveleftfast ();
if (SR2==1) moverightfast ();
}
}
function center()
{
PORTD.4=1;
PORTD.5=0;
PORTD.6=1;
PORTD.7=0;
Return 0;
}
function moveright()
{
PORTD.4=1;
PORTD.5=0;
PORTD.6=0;
PORTD.7=0;
Return 0;
}
function moveleft()
{
PORTD.4=0;
PORTD.5=0;
PORTD.6=1;
PORTD.7=0;
Return ;
}
function moverightfast()
{
PORTD.4=1;
PORTD.5=0;
PORTD.6=0;
PORTD.7=1;
Return 0;
}
function moveleftfast()
{
PORTD.4=0;
PORTD.5=1;
PORTD.6=1;
PORTD.7=0;
Return ;
}
البته به این نکته توجه داشته باشید که برای کنترل با سرعت زیاد باید بشتر ار 5 سنسور استفاده کنید و حتما از تکنولوژی PWM کنترل سرعت با فرکانس استفاده کنید

لطفا" نظر بدید.