Hallo, ich versuche gerade die "AVR323 - Interfacing GSM modems" von
Atmel für den GCC anzupassen.
in der AVR323 für IAR:
void COM_putsf( const unsigned char __flash *fstr )
{
for( ;*fstr != '\0'; )
{
COM_putchar( *fstr++ );
}
}
Meine version für GCC:
void COM_putsf( const unsigned char *fstr )
{
while ( pgm_read_byte(&fstr) != '\0')
{
COM_putchar( pgm_read_byte(fstr++) );
}
}
es passt auch fast... hier ausschnitt aus dem terminal
ATE0<CR><LF>
<NUL>AT+CNMI=1,1,,,1<CR><LF>
<NUL>AT+CPMS="ME","ME","ME"<CR><LF>
<NUL>AT+CMGD=<NUL>AT+CMGR=<NUL>AT+CMGS=<NUL><CR><LF>
<NUL>OK<CR><LF>
<NUL>+CMTI: <NUL>> <NUL><CR><LF>
ich bin beschäftige mich jetzt auch erst seit einem jahr mit den avrs,
deshalb dacht ich lieber etwas umschreiben. Könnte mir bitte jemand
einen tip geben?
danke fürs reinschauen ;)
while ( pgm_read_byte(&fstr) != '\0') Das "&" vor fstr ist falsch. fstr ist bereits eine Adresse auf deinen String.
ging ja schnell, danke für die Hilfe. bringt mich weiter... ;)
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.