Thread: ROBOTC help
View Single Post
  #1   Spotlight this post!  
Unread 09-02-2008, 11:58
Shivang1923 Shivang1923 is offline
I make robot go VROOM VROOM!
FRC #1923 (MidKnight Inventors)
Team Role: Programmer
 
Join Date: Feb 2008
Rookie Year: 2008
Location: West Windsor, NJ
Posts: 38
Shivang1923 has a spectacular aura aboutShivang1923 has a spectacular aura about
ROBOTC help

Hey. I'm having trouble programing a ROBOTC code into the RC. I keep getting this error:

Robot controller failed to respond

Possibly not powered on or corrupted firmware
Or low battery connection
or cable connections between controller and PC are wrong
Or incorrect port is selected on PC
Or FRC controller is not connected via tether or radio

-I checked every single one of these things and nothing fixes this error.
Heres the code I am using--

Code:
#include "FRC_Comp_Include.c"

void Initialization()
{
	bMotorReflected[port2] = true;
}

task Autonomous()
{
	motor[port1] = 30;
	motor[port2] = 30;
	wait1Msec(500);
	motor[port1] = 0;
	motor[port2] = 0;
}

task Human_Control()
{
		while(true)
		{
		motor[port1] = frcRF[p1_y];
		motor[port2] = frcRF[p2_y];
	}
}
the FRC_Comp_Include.c code is

Code:
void Initialization();
task Autonomous();
task Human_Control();

task main()
{
	bool bCurrentPhase;

	//
	// Run the user initialization function
	//
	Initialization();

	bCurrentPhase = !bIfiAutonomousPhase; // This will ensure that task will be started first time through

	//
	// Loop forever checking to see if the phase has changed
	//
	while (true)
	{
		//
		// Need to check whether the phase has switched. We only want to do action when a change has occurred.
		// This is because the "StartTask" function will either start a task running or restart an existing running task!
		//
		if (bCurrentPhase != bIfiAutonomousPhase)
		{
			//
			// Need to switch phases
			//
			//   1. Always stop the current task first
			//   2. Then start the new task.
			//
			// If you start the "new" task before stopping the current task, then for a brief time you may have both tasks
			// running simultaneously.
			//
			bCurrentPhase = bIfiAutonomousPhase;

			if (bCurrentPhase)
			{
				StopTask(Human_Control);
				StartTask(Autonomous);
			}
			else
			{
				StopTask(Autonomous);
				StartTask(Human_Control);
			}
		}

		// Delay a little so this task minimizes it's CPU execution time. Otherwise it will take 50% of the CPU time and
		// slow down the "Autonomous" or "Human_Control" tasks which are doing the "real" time.

		wait1Msec(20);
	}
}