
Har skrivit ett program (till AT90S8515) som bla ska sparar lite data på EEPROM:et men det funkar inte om man skriver så här:
Kod: Markera allt
// Lite skräp innan
clr temp // Sätter EEPROM adress till 0
sts eearh,temp
sts eearl,temp
lds temp1,$0091 // Sparar $0091 på EEPROM
out eedr,temp1
sbi eecr,eemwe
sbi eecr,eewe
// Lite skräp efter
Kod: Markera allt
// Lite skräp innan
clr temp // Sätter EEPROM adress till 0
sts 0x3f,temp
sts 0x3e,temp
lds temp1,$0091 // Sparar $0091 på EEPROM
out eedr,temp1
sbi eecr,2
sbi eecr,1
// Lite skräp efter
0x1e till 0x3e
0x1f till 0x3f
då funkar det. Men dessa nya adresser är i include-filen definierade som SPH och SREG.

utdrag ur 8515def.inc
Kod: Markera allt
.
.
.
.equ SREG = 0x3f
.equ SPL = 0x3d
.equ SPH = 0x3e
.equ GIMSK = 0x3b
.
.
.
.equ WDTCR = 0x21
.equ EEARL = 0x1e
.equ EEARH = 0x1f
.equ EEDR = 0x1d
.equ EECR = 0x1c
.
.
.
;EECR - EEPROM Control Register
.equ EERE = 0 ; EEPROM Read Enable
.equ EEWE = 1 ; EEPROM Write Enable
.equ EEMWE = 2 ; EEPROM Master Write Enable
.
.
.