Forum: Mikrocontroller und Digitale Elektronik Tabelle im Speicher schreiben


von Stefan (Gast)


Lesenswert?

Hallo zusammen,

Ich arbeite derzeit an einem kleinen Projekt für das ich verschiedene 
kalibrier und einstelldaten benötige. Ich arbeite mit dem atsam3x8e und 
programmiere in atmel studio in c. Zunächst ein kleines Beispiel. Es 
wird eine temperaturmessung über einen ptc durchgeführt. Hierzu werden 
die digit-temperatur umrechnungswerte in einer tabelle gespeichert. Gibt 
es nun die nöglichkeit verschiedene ptcs anzuschließen, sind auch die 
tabellenwerte für jeden ptc unterschiedlich. Nun würde ich dem programm 
gerne sagen die tabelle liegt an der adresse xyz ohne dass an dieser 
adresse zum zeitpunkt des kompilierens die tatsächliche tabelle 
vorhanden ist. Dies ist ja ohne weiteres über einen pointer möglich. Die 
tabelle würde ich dann gerne zu einen späteren zeitpunkt in form eines 
textfiles oä. an das bereits kompilierte programm anfügen und dann das 
komplette programm auf den yc laden. Gibt es hierzu schon projekte oder 
wird das eine ewige bastellösung?

von S. R. (svenska)


Lesenswert?

Du kannst deine Kalibrierwerte als Binärdatei abspeichern, in ein 
Objectfile konvertieren und dann mit den anderen Objekten zu deinem 
Binary zusammenlinken.

Das wird gelegentlich mit Fonts oder Bildern gemacht. Forensuche hilft.

von Peter D. (peda)


Lesenswert?

Viele MCs haben zu diesem Zweck einen EEPROM-Bereich, in dem die 
Applikation Daten ablegen kann.

Notfalls kann man auch dafür eine Flash-Page reservieren, aber die 
Programmierung ist deutlich komplizierter. Bei manchen MCs muß die 
Applikation dafür sogar angehalten werden (100ms .. 10s).

Über ein Programmiergerät lassen sich nur umständlich Daten zum Programm 
hinzufügen. Man muß den alten Inhalt erst auslesen, mit einem Editor die 
Daten hinzufügen, den Chip löschen und neu programmieren.

von Dennis (Gast)


Lesenswert?

Mal ein kleines Beispiel für "Daten im Flash ablegen"

Beitrag "Re: Daten ins Flash speichern mit dem STM32"

Die Daten werden dann z.B. mit UART übertragen.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.