eeprom verwenden

Gast #18059
Lesenswert?

hi gibts wo ein einfaches tutorial wie man den eeprom benurtz ??
vor allem wie man das dann zb das im avr studio simuliert und wie wie 
das hex-file dafür aussieht ...
wie man in den eeprom schreibt und was davon rausliest
weiß ich nur wie ich jetzt was in den eeprom reinschreibe nicht
Gast #18061
Lesenswert?

hmm tja habs selber rausgefunden ...
für den fall das jemmand das problem mal hat
hier die antwort :)


.include "4433def.inc"
.def temp     = r16
.def counter   = r17
.def leds     = r18
.def leds2    = r19
.def null     = r20
.def a       = r21
.def b       = r22
.def rSREG_BAK   = r23

.equ start = 256 - 244  ;  bei 8 MHz entspricht das ca. 1/32 sec
.equ loops = 1;

rjmp reset           ; Reset Handler
reti                 ; IRQ0 Handler
reti                 ; IRQ1 Handler
reti                 ; Timer1 Capture Handler
reti                 ; Timer1 compare Handler
reti                 ; Timer1 Overflow Handler
reti;rjmp timer0          ; Timer0 Overflow Handler
reti                 ; SPI Transfer Complete Handler
reti                 ; UART RX Complete Handler : RXCIE
reti                 ; UDR Empty Handler
reti                 ; UART TX Complete Handler
reti                 ; ADC Conversion Complete Interrupt Handler
reti                 ; EEPROM Ready Handler
reti                 ; Analog Comparator Handler

.def adresse  = r21
.def data    = r22


reset:
   main:

;---EEPROM-Daten lesen-----------
  ldi adresse,2
eeprom_read:
  out  EEAR,adresse  ; EEPROM Adresse setzten
  sbi  EECR,0      ; EEPROM lese Bit setzen (Set Bit in I/O Reg)
eeprom_read_wait:
  sbic EECR,0      ; beschäftigt ? (skip if bit in I/O Reg clear)
  rjmp eeprom_read_wait
  in   data,EEDR
;---EEPROM-Daten lesen ende------
  loop:

    rjmp loop


;**************************************************
.eseg ; EEPROM-Segment
.org 0; "start-adresse"
table1: .db 0x00,0x01,0x02,0x03,0x04,0x05,0x06,0x7
;**************************************************

das mit dem simulieren ist so ne sache weil das avr studio
nicht aktualisiert ...
aber bei
Debug->UP/DownMemories
das generierte *.eep file auswählen
und "Load and Programm" wählen ...
nun kann man im debug modus
bei View->Memory Window
denn eeprom inhalt sehen ...

so und wehe es meint jemmand ich führe selbstgespräche :)

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren