Zeiger auf Felder
-
Habe folgendes Problem:
Ich möchte einen Zeiger haben der einem Feld entlang läuft und das eingelesene in den Feldern ablegt.
Dies habe ich hier für einen Lesevorgang getan:
uint16 rdbuff[ 8 ] ; uint16* const cptr = rdbuff; ReadParallel (uint16 *cptr, uint16 adr, int16 anz) { int16 j; int16 werte; for (j=0;j<anz;j++) { werte = rdlmode(adr+j); pbtim = ticks(1500000); while(pbtim); cptr++; } }Nun möchte ich diesen Lesebefehl im Einsatz kontrollieren:
uint16 *wrptr; uint16 wrbuffer[2] = {0x03,0x05}; wrptr = wrbuffer; WriteParallel( wrptr, 0x3800, 2 ); pbtim = ticks(1500000); while(pbtim); ReadParallel( cptr, 0x3800, 2 );Anzeige am Display:
Wie kann ich jetzt die beiden Werte anzeigen lassen ? Gibt es eine Möglichkeit bei Zeigern wie bei Feldern, wie z.B. rdbuff[1] ?
putshex(ZS(22,0),[b]*cptr[/b],NORML(BLK,WHT)); putshex(ZS(22,5),[b]cptr[1] ???[/b],NORML(BLK,WHT));Danke schon mal....

-
cptr[1]
-
Was bezweckst du hiermit?
pbtim = ticks(1500000); while(pbtim);Wenn pbtim!=0 ist, hast du hier eine schöne Endlosschleife produziert...
-
pbtim = ticks(1500000); while(pbtim);--> bitte nicht beachten...es stellt nur eine Verzögerung zwischen Schreib- und Lesevorgang dar.
Wollte nur die einzelnen Werte der Felder durch einen Zeigerausdruck aufrufen und anzeigen lassen.
Danke