'OUTPUT' was not declared in this scope

Hi guys,

I am having error messages in my code and I have no idea why.

int micVal;
int cdsVal;
int irLval; // Left IR
int irCval;
int irRval;

int i;
int x;
int PLval; // Pulse Width for Left Servo
int PRval;
int cntr; // Generic Counter Used for Determining amt. of Object Detections
int counter;
int clrpth; // amt. of Milliseconds Of Unobstructed Path
int objdet; // Time an Object was Detected
int task; // Routine to Follow for Clearest Path
int pwm; // Pulse Width for Pan Servo
long add; // Whether to Increment or Decrement PW Value for Pan Servo
int distance; // Distance to Object Detected via Ultrasonic Ranger
int oldDistance; // Previous Distance Value Read from Ultrasonic Ranger

float scale = 1.9866666666666666666666666666667; // Not Currently Used

int LeftPin = 6; // Left Servo
int RightPin = 9; // Right Servo
int PiezoPin = 11; // Piezo
int PingServoPin = 5; // Pan Servo
int irLPin = 0; // Analog 0; Left IR
int irCPin = 1; // Analog 1; Center IR
int irRPin = 2; // Analog 2; Right IR

int ultraSoundSignal = 7; // Ultrasound signal pin
int val = 0; // Used for Ultrasonic Ranger
int ultrasoundValue = 0; // Raw Distance Val
int oldUltrasoundValue; // Not used
int pulseCount; // Generic Counter
int timecount = 0; // Echo counter
int ledPin = 13; // LED connected to digital pin 13

#define BAUD 9600
#define CmConstant 1/29.034

void setup() {
// Serial.begin(9600);
//pinMode(PiezoPin, OUTPUT);
// pinMode(ledPin, OUTPUT);
pinMode(LeftPin, OUTPUT);
pinMode(RightPin, OUTPUT);
pinMode(PingServoPin, OUTPUT);
pinMode(irLPin, INPUT);
pinMode(irCPin, INPUT);
pinMode(irRPin, INPUT);
for(i = 0; i < 500; i++) {
digitalWrite(PiezoPin, HIGH);
delayMicroseconds(1000);
digitalWrite(PiezoPin, LOW);
delayMicroseconds(1000);
}
for(i = 0; i < 20; i++) {
digitalWrite(PingServoPin, HIGH);
delayMicroseconds(655 * 2);
digitalWrite(PingServoPin, LOW);
delay(20);
}
ultrasoundValue = 600;
i = 0;
}

void loop()
{
//Scan();
Look();
Go();
}
void Look() {
irLval = analogRead(irLPin);
irCval = analogRead(irCPin);
irRval = analogRead(irRPin);
//if(counter > 10) {
//counter = 0;
//readPing();
//}
if(irLval > 200) {
PLval = 820;
PRval = 850;
x = 5;
cntr = cntr + 1;
clrpth = 0;
objdet = millis();
}
else if(irCval > 200) {
PLval = 820;
PRval = 850;
x = 10;
cntr = cntr + 1;
clrpth = 0;
objdet = millis();
}
else if(irRval > 200) {
PLval = 620;
PRval = 650;
x = 5;
cntr = cntr + 1;
clrpth = 0;
objdet = millis();
}
else {
x = 1;
PLval = 620;
PRval = 850;
counter = counter + 1;
clrpth = (millis() - objdet);
if(add == true) {
pwm = pwm + 50;
}
else if(add == false) {
pwm = pwm - 50;
}
if(pwm < 400) {
pwm = 400;
add = true;
}
if(pwm > 950) {
pwm = 950;
add = false;
}
digitalWrite(PingServoPin, HIGH);
delayMicroseconds(pwm * 2);
digitalWrite(PingServoPin, LOW);
delay(20);
readPing();
if(ultrasoundValue < 500) {
cntr = cntr + 1;
switch(pwm) {
case 400:
x = 7;
PLval = 650;
PRval = 650;
Go();
break;
case 500:
x = 10;
PLval = 650;
PRval = 650;
Go();
break;
case 600:
x = 14;
PLval = 850;
PRval = 850;
Go();
break;
case 700:
x = 10;
PLval = 850;
PRval = 850;
Go();
break;
case 950:
x = 7;
PLval = 850;
PRval = 850;
Go();
break;
}
}
}
//Serial.print("clrpth: ");
//Serial.println(clrpth);
//Serial.print("objdet: ");
//Serial.println(objdet);
//Serial.print("cntr: ");
//Serial.println(cntr);
if(cntr > 25 && clrpth < 2000) {
clrpth = 0;
cntr = 0;
Scan();
}
}
void Go() {
for(i = 0; i < x; i++) {
digitalWrite(LeftPin, HIGH);
delayMicroseconds(PLval * 2);
digitalWrite(LeftPin, LOW);
digitalWrite(RightPin, HIGH);
delayMicroseconds(PRval * 2);
digitalWrite(RightPin, LOW);
delay(20);
}
}
void readPing() { // Get Distance from Ultrasonic Ranger
timecount = 0;
val = 0;
pinMode(ultraSoundSignal, OUTPUT); // Switch signalpin to output

/* Send low-high-low pulse to activate the trigger pulse of the sensor


*/

digitalWrite(ultraSoundSignal, LOW); // Send low pulse
delayMicroseconds(2); // Wait for 2 microseconds
digitalWrite(ultraSoundSignal, HIGH); // Send high pulse
delayMicroseconds(5); // Wait for 5 microseconds
digitalWrite(ultraSoundSignal, LOW); // Holdoff

/* Listening for echo pulse


*/

pinMode(ultraSoundSignal, INPUT); // Switch signalpin to input
val = digitalRead(ultraSoundSignal); // Append signal value to val
while(val == LOW) { // Loop until pin reads a high value
val = digitalRead(ultraSoundSignal);
}

while(val == HIGH) { // Loop until pin reads a high value
val = digitalRead(ultraSoundSignal);
timecount = timecount +1; // Count echo pulse time
}

/* Writing out values to the serial port


*/

ultrasoundValue = timecount; // Append echo pulse time to ultrasoundValue

//serialWrite('A'); // Example identifier for the sensor
//printInteger(ultrasoundValue);
//serialWrite(10);
//serialWrite(13);

/* Lite up LED if any value is passed by the echo pulse


*/

if(timecount > 0){
digitalWrite(ledPin, HIGH);
}
}
void Scan() { // Scan for the Clearest Path
oldDistance = 30;
task = 0;
for(i = 1; i < 5; i++) {
switch(i) {
case 1:
//Serial.println("Pos. 1");
pwm = 1125; /// incr. by 100 from 1085
break;
case 2:
//Serial.println("Pos. 2");
pwm = 850; //// increased by 100 from 850
break;
case 3:
//Serial.println("Pos. 3");
pwm = 400;
break;
case 4:
//Serial.println("Pos. 4");
pwm = 235;
break;
}
for(pulseCount = 0; pulseCount < 20; pulseCount++) { // Adjust Pan Servo and Read USR
digitalWrite(PingServoPin, HIGH);
delayMicroseconds(pwm * 2);
digitalWrite(PingServoPin, LOW);
readPing();
delay(20);
}
distance = ((float)ultrasoundValue * CmConstant); // Calculate Distance in Cm
if(distance > oldDistance) { // If the Newest distance is longer, replace previous reading with it
oldDistance = distance;
task = i; // Set task equal to Pan Servo Position
}
}
//Serial.print("Task: ");
//Serial.println(task);
//Serial.print("distance: ");
//Serial.println(distance);
//Serial.print("oldDistance: ");
//Serial.println(oldDistance);
distance = 50; // Prevents Scan from Looping
switch(task) { // Determine which task should be carried out
case 0: // Center was clearest
x = 28;
PLval = (850);
PRval = (850);
Go();
break;
case 1: // 90 degrees Left was Clearest
x = 14;
PLval = (650);
PRval = (650);
Go();
break;
case 2: // 45 degrees left
x = 7;
PLval = (650);
PRval = (650);
Go();
break;
case 3: // 45 degrees right
x = 7;
PLval = (850);
PRval = (850);
Go();
break;
case 4: // 90 degrees right
x = 14;
PLval = (850);
PRval = (850);
Go();
break;
}
}

Your help will be much appreciated

Will

When I try to compile the code I get the message 'OUTPUT' was not declared in this scope. Then I get the message:
BOB_V2_sketch.cpp:1:21: error: Arduino.h: No such file or directory
BOB_V2_sketch.cpp: In function 'void setup()':
BOB_V2_sketch:45: error: 'OUTPUT' was not declared in this scope
BOB_V2_sketch:45: error: 'pinMode' was not declared in this scope
BOB_V2_sketch:48: error: 'INPUT' was not declared in this scope
BOB_V2_sketch:52: error: 'HIGH' was not declared in this scope
BOB_V2_sketch:52: error: 'digitalWrite' was not declared in this scope
BOB_V2_sketch:53: error: 'delayMicroseconds' was not declared in this scope
BOB_V2_sketch:54: error: 'LOW' was not declared in this scope
BOB_V2_sketch:58: error: 'HIGH' was not declared in this scope
BOB_V2_sketch:58: error: 'digitalWrite' was not declared in this scope
BOB_V2_sketch:59: error: 'delayMicroseconds' was not declared in this scope
BOB_V2_sketch:60: error: 'LOW' was not declared in this scope
BOB_V2_sketch:61: error: 'delay' was not declared in this scope
BOB_V2_sketch.cpp: In function 'void Look()':
BOB_V2_sketch:74: error: 'analogRead' was not declared in this scope
BOB_V2_sketch:87: error: 'millis' was not declared in this scope
BOB_V2_sketch:95: error: 'millis' was not declared in this scope
BOB_V2_sketch:103: error: 'millis' was not declared in this scope
BOB_V2_sketch:110: error: 'millis' was not declared in this scope
BOB_V2_sketch:125: error: 'HIGH' was not declared in this scope
BOB_V2_sketch:125: error: 'digitalWrite' was not declared in this scope
BOB_V2_sketch:126: error: 'delayMicroseconds' was not declared in this scope
BOB_V2_sketch:127: error: 'LOW' was not declared in this scope
BOB_V2_sketch:128: error: 'delay' was not declared in this scope
BOB_V2_sketch.cpp: In function 'void Go()':
BOB_V2_sketch:180: error: 'HIGH' was not declared in this scope
BOB_V2_sketch:180: error: 'digitalWrite' was not declared in this scope
BOB_V2_sketch:181: error: 'delayMicroseconds' was not declared in this scope
BOB_V2_sketch:182: error: 'LOW' was not declared in this scope
BOB_V2_sketch:186: error: 'delay' was not declared in this scope
BOB_V2_sketch.cpp: In function 'void readPing()':
BOB_V2_sketch:192: error: 'OUTPUT' was not declared in this scope
BOB_V2_sketch:192: error: 'pinMode' was not declared in this scope
BOB_V2_sketch:198: error: 'LOW' was not declared in this scope
BOB_V2_sketch:198: error: 'digitalWrite' was not declared in this scope
BOB_V2_sketch:199: error: 'delayMicroseconds' was not declared in this scope
BOB_V2_sketch:200: error: 'HIGH' was not declared in this scope
BOB_V2_sketch:208: error: 'INPUT' was not declared in this scope
BOB_V2_sketch:209: error: 'digitalRead' was not declared in this scope
BOB_V2_sketch.cpp: In function 'void Scan()':
BOB_V2_sketch:261: error: 'HIGH' was not declared in this scope
BOB_V2_sketch:261: error: 'digitalWrite' was not declared in this scope
BOB_V2_sketch:262: error: 'delayMicroseconds' was not declared in this scope
BOB_V2_sketch:263: error: 'LOW' was not declared in this scope
BOB_V2_sketch:265: error: 'delay' was not declared in this scope

Your code compiles for me without error in V1.0

Pete

When posting code, please use the "#" button in the editor to wrap your code in "code" tags.

This code compiles fine for me on both 0022 and 1.0.

Looks like you are compiling with 1.0, is that the case? What operating system are you running? Do examples like the the simple "Blink" sketch work?

I have tried in both Vista with 1.0 and Ubuntu with 22, and I just tried "blink" with no success

I shouldn't comment on Vista, but it is obvious why 22 on ubuntu can't find 'Arduino.h' (It simply doesn't exist there). Did you install the compiler/avr-libc/binutils as well?

And for the future: "No success" is not an error message that we know. It certainly doesn't come from the compiler.