Hallo, Ich habe ein Problem und zwar habe ich einen string der Zeichen enhält (ASCII). Ein solchen ASCII Zeichen ist ja ein Hex wert zb. 0x.. Diese Zeichen will ich nach der Reihe mit SPI zum einem Modul rauschreiben. Dieses Modul benödigt Am Anfang jedes Bytes den Wert 0xB8. Im String steht zb. ABCDEF Also muss ich vor jedem Zeichen im String den Wert 0xB8 hinzufügen, das das Modul die Daten erkennt. Normal würde ich den String mit eine Schleife rauschreiben: for(i;i<10;i++) { string[i]; } Nur ich habe keine Ahnung wie ich jetzt die 0xB8 vor jedes Element bekomme?
so zum Beispiel unter der Vorraussetzung dass dein String im idata Bereich liegt und du eine writeSpi() Funktion zum Schreiben hast. void SendString(UINT8 idata *pString) { UINT8 ch; ch = *pString; // first element while (ch) { writeSpi(0xB8); // send start writeSpi(ch); // send element ch = *(pString++); // get next element } } Thomas
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.