Forum: Mikrocontroller und Digitale Elektronik R8C13 Programmierung


von Timo T. (tita)


Lesenswert?

Hallo,

ich möchte diverse Variablen-Werte, wenn diese geändert wurden gerne 
"irgendwo" im Speicher ablegen, damit diese beim nächsten Start 
(Spannung aus/an oder Reset) wieder verfügbar sind.
Gibt es hierfür Programm-Beispiele?
Ich programmiere in C mit der HEW.

Weiterhin möchte ich in einer Schleife z.B. den Port 1 bitweise 
abfragen.

for (i;i<8;i++)
{
if (p1_"irgendwas mit i" == 1)
.....
else
.....
}
Wodurch muß ich "irgendwas mit i" ersetzten?

Für eure Hilfe im Voraus vielen Dank.

Gruß Timo

von Benedikt K. (benedikt)


Lesenswert?

irgendwas mit i gibt es in C nicht.
Es gibt 2 Möglichkeiten:
- Den Port mit einem Struct in ein Bitarray zerlegen.
- Den gesamten Port einlesen und einzelne Bits markieren: if (p1&(1<<i))

Schau mal auf http://www.m16c.de/ unter AppNotes. Da wird vermutlich was 
dabei sein, zu deiner ersten Frage.

von Stefan B. (stefan) Benutzerseite


Lesenswert?

Die erste Frage beantwortet eine Application Note von Renesas namens 
"Virtual EEPROM". Dabei wird der 4 KB Data Flash Bereich benutzt.

http://documentation.renesas.com/eng/products/mpumcu/apn/reu05b0062_m16cap.pdf
http://documentation.renesas.com/eng/products/mpumcu/apn/zip/reu05b0062_src.zip

Die zweite Frage sehe ich genauso wie Benedikt

von Obelix (Gast)


Lesenswert?

> Den Port mit einem Struct in ein Bitarray zerlegen.

Das hat Renesas bereits getan. In "r8c13.h" oder so ähnlich.

von Obelix (Gast)


Lesenswert?

Ich habe jetz noch mal genau geschaut, die Datei heißt "sfr_r813.h".

Die Frage von Timo hört sich für mich eh danach an : Ich habe keine Lust 
im Internet zu suchen, oder die Beispiele anzuschauen, deswegen könnt 
ihr das für mich machen.

von Timo T. (tita)


Lesenswert?

@ obelix

natürlich habe ich im internet geschaut,
google kann sogar ich schon bedienen.
und die foren eigene suche habe ich auch
herangezogen.
wenn ich brauchbare ergebnisse gefunden hätte,
dann hätte ich hier wohl kaum gefragt.

@ all

danke für eure hilfe
nach dem ich die application notes studiert
habe, kommt der interne daten speicher wohl
eher nicht in frage. ich werde mich mit einem
24C01 beschäftigen, da ich dort auch einzelne
bytes lesen und schreiben kann, ohne vorher
ganze seiten löschen zu müssen.

von Obelix (Gast)


Lesenswert?

Schön, das du dich selbst widersprichst.

> wenn ich brauchbare ergebnisse gefunden hätte

> nach dem ich die application notes studiert habe

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.