If you have ever damaged your ftdi programmer or shorted a connection on your Atmel based board, it is quite possible that the only way to program the device is using an ISP programmer. This tutorial will show you how to compile and flash a binary from arduino to your Atmel processor.
First you will need to download WinAVR available from here.
After installing WinAVR, open your arduino sketch and select “verify”.
When compiling has completed navigate to the directory where the compiled binary is located. This can be found within your computer’s temporary files:
Windows XP: C:\Documents and Settings\”username”\Local Settings\Temp
Windows 7: C:\users\”username”\AppData\Local\Temp
Connect your ISP programmer and launch the command prompt. Type the first command followed by [ENTER]:
Type the second command for which the format is:
avrdude.exe -c “programmer” -p “device” -U flash:w:”Firmware.hex”
avrdude.exe -c usbasp -p m2560 -U flash:w:ArduCopter.cpp.hex
After several minutes avrdude will complete the writing and verification of the binary followed by the message ”avrdude done. Thank you.” At this point you’re done and you can unplug your programmer. Be sure not to disconnect your device in the process of uploading the firmware binary. If the process fails or you receive an error message, be sure to check the syntax of your command and check that you have correctly input the programmer name, device name and firmware file name.
Additional information can be found here.