eddi schrieb:
> for (const char * p = "Das ist ein Test!\n" ; c = *p; p++) {
ja, eben!
Fange endlich mal an, wenigstens EINIGERMASSEN sauber zu schreiben.
Trenne die Dinge!!!
Also Meldetext, Pointerdeklaration und Schleifen-Gestaltung in
getrennten Anweisungen. Also ungefähr so:
const char Meldetext[] = { "Das ist ein Test" };
void loop (void)
{ const char* P; // <-- const und so bei ATmegas, siehe unten
P = Meldetext;
while (*P) SPI.transfer(*P++);
}
(wegen const und so: Die Atmels unterscheiden Zeiger auf konstante Dinge
und nicht konstante Dinge. Das hängt mit der Architektur zusammen und
hat mich damals sehr geärgert, weil es allweil Späne macht. Ein const
muß also rein, man kann das auch nicht casten, hab momentan bloß
vergessen, an welche Position das const kommt...)
Und schreibe bei mehrzeiligen Blöcken die öffnende Klammer in die
gleiche Spalte wie die schließende, damit man die Blöcke erkennen kann,
ohne sich in deinem Spaghetticode zu verirren.
W.S.