#概要
avrでeepromやってみた。
attiny85でアセンブラで書いた。
attiny85には、512byteのeepromがある。
#環境
avr studio 4
attiny85 1mhz
tera term
usb-serial
#写真
#サンプルコード
eepromの先頭から255→1まで、書き込んで読んでみる。
rom_w:
sbic EECR, EEPE
rjmp rom_w
ldi r16, (0 << EEPM1) | (0 << EEPM0)
out EECR, r16
out EEARH, YH
out EEARL, YL
out EEDR, r22
sbi EECR, EEMPE
sbi EECR, EEPE
ret
rom_r:
sbic EECR, EEPE
rjmp rom_r
clr r0
out EECR, r0
out EEARH, YH
out EEARL, YL
sbi EECR, EERE
in r16, EEDR
ret
setup:
ldi r16, high(RAMEND)
out SPH, r16
ldi r16, low(RAMEND)
out SPL, r16
cbi DDRB, PB0
sbi DDRB, PB1
sbi PORTB, PB1
loop:
ldi YL, 0
ldi YH, 0
ldi r22, 255
inc YL
rcall rom_w
dec r22
brne PC - 3
ldi YL, 0
ldi YH, 0
ldi r22, 255
inc YL
rcall rom_r
rcall bin2hex2
ldi r19, ' '
rcall send
dec r22
brne PC - 6
rcall wait
rjmp PC - 1
以上。