AVR ATmega16/32 Fuse Bits

Table of Contents:

Summary

Updating with the era of technology, the new microcontrollers are coming with lots of inbuilt peripherals and features. These inbuilt peripherals and features not only reduce the cost of additional circuits to be used with the controller but also provide an ease to interface additional devices (such as Modems etc) directly with the microcontroller.

 

The new generations of microcontrollers are capable of working on internal as well as on external clock option. But then the question comes as to how do we make them work on a desired clock option? How to disable/enable a particular peripheral? As a beginner when you get a new chip (ATmega16/32) you may complain that ‘PORTC of the chip is not working!’ or ‘when the reset pin and 6th pin of PORTC (in ATmega8) are common how shall I select them/distinguish between them?’. These questions may taste bitter when you try to skip them and go ahead, but all these issues can be solved by properly setting the FUSE BITS of your device.

 
There are few parameters in the chip which are used to configure it before it can be used for external environment. These parameters are set with the use of Fuse Bits. In other words, the fuse bit determines the behavior of the chip, whether it has a boot loader, what is the speed and voltage it runs at, the Watchdog Timer conditions, etc. The main advantage of fuse bits is that the microcontroller can be configured as per the requirement.
 
Once the fuse bits are set for a particular configuration, the controller can be used again and again (program can be burned again and again). You don’t have to set the fuse bits every time you are using the controller till the time you want to use it under the same configuration. Fuse bits need to be changed only in case you want to change the initial configuration of the controller.  The fuse bits are very confusing for the beginners. This tutorial will explore the fuse bits and also give a clear understanding of what fuses you need to set for your device.