Uploading "get_sync" error

I’m still working on a program to control a servo using a photoresitor, and the program I’ve written compiles fine, but when I try and upload the program, I get teh following error:
Binary sketch size: 2352 bytes (of a 14336 byte maximum)

avrdude: stk500_getsync(): not in sync: resp=0x30
avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x51

Here’s the program I’m using:
#include <Servo.h>

Servo myservo; // create servo object to control a servo

int circuitpin = 0; // analog pin used to connect the circuit
int circuitValue; // variable to read the value from the analog pin

void setup()
myservo.attach(9); // attaches the servo on pin 9 to the servo object

void loop()
circuitValue = analogRead(circuitpin); // reads the value of the circuit (value between 3 and 4.27)
circuitValue = (circuitValue - 3)/.00707; // scale it to use it with the servo (value between 0 and 180)
myservo.write(circuitValue); // sets the servo position according to the scaled value
delay(30); // waits for the servo to get there

Can anyone help me?

Not sure if this is your problem, but on a Boarduino, you need to push the reset button before beginning the code upload or you get this message.

The reset button's the little push button on the board, yeah? It's a silly question, I know, but I only see one button on the board, and I'm pressing it just before I hit upload. Should I hold it while it uploads, or something?

Yep. On the Diecimila and Duemilanove and mega, you don't need to hit reset when you upload, but on other models you do.

It doesn't hurt to hit reset on any of the models, though, so if you're unsure, hit the reset button on upload.

Yeah, I'm hitting it just before I upload. It's still giving me the error. I think it might be a hardware error- I've tried around 4 computers, and no one can get it to work. I'm going to borrow another board tomorrow and see what happens.

Here are some troubleshooting suggestions for upload failure: