Log in

View Full Version : how are we going to do this


omega
22-03-2004, 10:02
This is what we have for our automous code but we want to go from the Navigate(); to what is beneath it when both of the sensors see nothing becuase we don't want to risk loseing all of that time.



void User_Autonomous_Code(void)
{
while (autonomous_mode) /* DO NOT CHANGE! */
{
if (statusflag.NEW_SPI_DATA) /* 26.2ms loop area */
{
Getdata(&rxdata); /* DO NOT DELETE, or you will be stuck here forever! */

/* Add your own autonomous code here. */

Navigate();

if(rc_dig_in01 ==1 )
{
pwm13 = 137;
pwm14=100;
}
else
{
pwm13 = pwm14 = 140;
}
if(rc_dig_in02 == 1)
{
pwm13 = 100;
pwm14 = 137;
}
else
{
pwm13 = pwm14 = 140;
}

Generate_Pwms(pwm13,pwm14,pwm15,pwm16);

Putdata(&txdata); /* DO NOT DELETE, or you will get no PWM outputs! */
}
}
}

gnormhurst
22-03-2004, 10:44
This is what we have for our automous code but we want to go from the Navigate(); to what is beneath it when both of the sensors see nothing becuase we don't want to risk loseing all of that time.



I think you said it yourself, just say it in C:

void User_Autonomous_Code(void)
{
while (autonomous_mode) /* DO NOT CHANGE! */
{
if (statusflag.NEW_SPI_DATA) /* 26.2ms loop area */
{
Getdata(&rxdata); /* DO NOT DELETE, or you will be stuck here forever! */

/* Add your own autonomous code here. */

Navigate();

if ( NEITHER_SENSOR_SEES )
{
if(rc_dig_in01 ==1 )
{
pwm13 = 137;
pwm14=100;
}
else
{
pwm13 = pwm14 = 140;
}
if(rc_dig_in02 == 1)
{
pwm13 = 100;
pwm14 = 137;
}
else
{
pwm13 = pwm14 = 140;
}
}
Generate_Pwms(pwm13,pwm14,pwm15,pwm16);

Putdata(&txdata); /* DO NOT DELETE, or you will get no PWM outputs! */
}
}
}

However, it may be more appropriate to change Navigate() to keep going when blind. Are you using IR trackers?

Kevin Karan
22-03-2004, 11:32
You should move navigate() to before the spidata thing if you are using the old navigate routine