I'm creating a robotics board using an Atmega 1280 with the Arduino libraries, and I'm having some trouble getting the chip to run at full (16Mhz) speed. I have a 16Mhz crystal just like in the Arduino Mega schematics, though I've switched it out for a surface mount SM49 package. I'm programming the chip using an AVRISP MKII without a bootloader because once I have my firmware on here, I should rarely need to change it.
I can successfully program the chip and blink an attached LED, but the program seems to run very slowly: delay(100) causes an actual delay of around 1 second (rather than 100 ms). This suggests to me that the chip is using the internal oscillator rather than my crystal. Does anyone know how to get the Arduino IDE to burn the proper fuse bits? I get very nervous when it comes to programming fuses - I've only just now come back to using Atmel chips, having bricked too many in the past with bad fuse bits.
The following is the section of my boards.txt file dealing with the board in question. I just copied it from the Arduino Mega section, and modified the name and upload.using fields.
I suppose the fuse bits aren't getting programmed when I do the normal code upload. Is there a way to just burn the fuses from the Arduino IDE without burning the bootloader as well?
Follow this tutorial and using the AVR Studio 4 to change Fuse Settings