The device can be locked so that the memories cannot be read using the UPDI. The locking protects both the Flash (all BOOT, APPCODE, and APPDATA sections), SRAM, and the EEPROM including the FUSE data. This prevents successful reading of application data or code using the debugger interface. Regular memory access from within the application still is enabled.
The device is locked by writing any non-valid value to the LOCKBIT bit field in FUSE.LOCKBIT.
Memory Section | CPU Access | UPDI Access | ||
---|---|---|---|---|
Read | Write | Read | Write | |
SRAM | Yes | Yes | Yes | Yes |
Registers | Yes | Yes | Yes | Yes |
Flash | Yes | Yes | Yes | Yes |
EEPROM | Yes | Yes | Yes | Yes |
USERROW | Yes | Yes | Yes | Yes |
SIGROW | Yes | No | Yes | No |
Other Fuses | Yes | No | Yes | Yes |
Memory Section | CPU Access | UPDI Access | ||
---|---|---|---|---|
Read | Write | Read | Write | |
SRAM | Yes | Yes | No | No |
Registers | Yes | Yes | No | No |
Flash | Yes | Yes | No | No |
EEPROM | Yes | No | No | No |
USERROW | Yes | Yes | No | Yes(2) |
SIGROW | Yes | No | No | No |
Other Fuses | Yes | No | No | No |