AVR microcontroller uses fuse bits to set its operational parameters like watchdog timer settings and change speed of the internal oscillator. Most fuse bits can be set or reset without worry. You can flash it into one state and then flashed back again using an SPI programmer. However, some fuse bits like RSTDISBL fuse are irreversible using SPI programmer. Once the RSTDISBL fuse is set you need a high voltage programmer like the STK500, which is costly, to bring alive the chip.
If you don’t have STK500 you can try to build your own AVR High Voltage Programmer using Arduino like Jeff Keyzer did. The recovery fuse programming process is easy. First, upload the HVFuse sketch to the Arduino. And then Install the shield and apply +12VDC to the terminals on the left. Wait for the red LED to turn on (if it isn’t already). Install the ATmega to be repaired. Push the button. When the LED turns back on, the AVR is fixed and ready to be used. Download Arduino-based Hight Voltage Programmer schematic.