.IFNDEF EEPSUPPORT_INC_ .EQU EEPSUPPORT_INC_ = 1 ;->@0: name of the the label to set to access mapped EEPROM .MACRO EEMAP @0_EEP: .EQU @0=@0_EEP+EEPROM_START .ENDMACRO ;->@0: SFIOR to unlock and write to ; @1: value to write to SFIOR ;destroyed: R16 .MACRO SPMUNLOCK ldi R16,CPU_CCP_SPM_gc out CPU_CCP,R16 ldi R16,@1 sts @0,R16 .ENDMACRO .MACRO EEWAIT push R16 wait: lds R16,NVMCTRL_STATUS sbrc R16,NVMCTRL_EEBUSY_bp rjmp wait pop R16 .ENDMACRO .MACRO EEUPDATE push R16 SPMUNLOCK NVMCTRL_CTRLA,NVMCTRL_CMD_EEERWR_gc pop R16 .ENDMACRO .MACRO EEEND push R16 SPMUNLOCK NVMCTRL_CTRLA,NVMCTRL_CMD_NONE_gc pop R16 .ENDMACRO .ENDIF