Gast
#2112405
Hi Leuts, ich glaub ich stell mich grad doof an bei der Zeigerarithmetik. Folgendes ich möchte in eine bestimmte Adresse im Mikrocontroller einen Wert reinschreiben und wieder auslesen. Bisheriger Ansatz(in etwa): (die Variablentypen UINT8 usw sind extern festgelegt) #define ADRESS 0x00801000 //Ansatz 1: /*Reinschreiben*/ UINT8 *pTest1 = (UINT8*)ADRESS; *pTest1=0xFF; //Ansatz 2: /*Reinschreiben*/ volatile UINT8 u8test; u8test= *(volatile UINT32*)(BTLDR_APPL_VERSION_POS); u8test=0x11; //Ansatz 1 //Auslesen //In Wert sollte nun 0xFF Wert=(UINT8)(*pTest); //Ansatz 2 //Auslesen Wert=(UINT8)(u8Test); Bei allen Ansätzen hab ich nachher in Wert irgendwas anderes drin stehn. Ich denke über mehrere Fehlerquellen nach. - irgendwo Fehler in der Zuweisung der Pointer - da bei mir mehrer C-Code sources evt dort der Fehler - Fehler in der Größe der Zugewiesenen Variablen Ich weis nicht warum aber irgendwie stell ich mich grad doof an... . Über eure Hilfe wäre ich sehr dankbar. Danke schonmal! Grüße Visistor