Atmega:
Atmel Atmega family microcontrollers use special configuration bits (Fuses) and Lock Bits to protect program code and data. These bits are set using an external programmer and define the access levels to memory and programming interfaces.
Important: Incorrectly setting the Fuses can lead to a complete lockout of the microcontroller, which may require a high-voltage programmer to recover.
Lock bits are the primary means of protecting the Flash and EEPROM memory from being read or written via external programming interfaces (ISP, JTAG).
Protection Modes (LB2, LB1 bits):
Mode
LB2
LB1
Description
Note: "1" means "unprogrammed", "0" means "programmed".
These bits (BLB01, BLB02, BLB11, BLB12) allow setting read or write protection between the application section and the bootloader section. This enables secure firmware updates without the risk of the main application corrupting the bootloader.
Some Fuse bits directly affect the ability to access the microcontroller.
Key Fuse Bits:
Bit
Description
The only way to reset the Lock Bits (LB1/LB2) is to execute a "Chip Erase" command via a programmer. This command completely erases the Flash memory and usually the EEPROM. Afterward, all lock and configuration bits are returned to their default (unprotected) state. The `EESAVE` fuse bit allows preserving the EEPROM data during a chip erase.
Atmega microcontrollers have several bytes for identification. Unlike STM32, they do not have a globally unique serial number.
Identification Bytes:
Name
Description
Microchip Technology (AVR)
Ask your question: RussianSemiResearch@ya.ru