Note que la operación de escritura de la EEPROM bloquearía toda la
programación de software en la Flash. Leyendo los fusibles y los bits de
bloqueo desde software
esto también prevendría durante la operación de
escritura de la EEPROM. Se recomienda que el usuario cheque el bit de estado
(EEPE) en el registro EECR y verifique que el bit es antes escrito en el Registro
SPMCSR.
25.8.9 Leyendo el Fusible y los Bits de Bloqueo por Software
Es posible leer ambos bits el de Fusibles y de Bloqueo por software. Al leer los
bits de bloqueo, cargar el puntero Z con 0x0001 y poner en uno a los bits
BLBSET y SPMEN. Cuando la instrucción (E) LPM es ejecutada dentro de tres
ciclos de CPU después los bits BLBSET y SPMEN son puestos en uno en
SPMCSR, el valor de los bits de bloqueo serían cargados en el registro de
destino. Los bits BLBSET y SPMEN auto limpiarían en la realización de la
lectura de los bits de bloqueo o si la instrucción (E) LPM es ejecutada dentro de
tres ciclos CPU o la instrucción no es ejecutada dentro de cuatro ciclos de CPU.
Cuando BLBSET y SPMEN son limpiados, (E) LPM trabajaría como se describe
en la habilitación de instrucciones en el manual.
El algoritmo para lectura del byte bajo del fusibles es similar a uno descrito para
lectura de los bits de bloqueo. Para leer el byte bajo del fusible, cargar el
puntero Z con 0x0000 y poner en uno los bits BLBSET y SPEM en SPMCSR.
Cuando la instrucción (E) LPM es ejecutada dentro de tres ciclos después los
bits BLBSET y SPMEN son puestos en uno en SPMCSR, el valor del byte bajo de
los Fusibles (FLB) sería cargado en el registro de destino como se muestra a
continuación:
Similarmente, cuando se lee el byte alto del Fusible, cargar 0x0003 en el puntero
Z. Cuando la instrucción (E) LPM es ejecutada dentro de tres ciclos después que
los bits BLBSET y SPEM son puestos en uno en SPMCSR, el valor del byte alto
del Fusible (FHB) sería cargado en el registro de destino como se muestra a
continuación:
Cuando se lee el byte extendido del fusible, cargar 0x0002 en el puntero Z.
Cuando la instrucción (E) LPM es ejecutada dentro de tres ciclos después los