Forum: Mikrocontroller und Digitale Elektronik ATXmega128A3 C Programm error: stray '\34'


von tired (Gast)


Lesenswert?

Guten Tag Forum

Wie im Betreff zu erlesen ist, hab ich ein Problem mit AVR Studio bzw. 
meinem Programm.

Die Version ist: 4.18 Build 684
Controller ist: ATXmega128A3
Programmiersprache ist: C
Als Fehler spuckt AVR Studio mir:

C:\Users\XXX\Documents\AVR-Files\XMega\XMega128A3\Projekt1\GCC\RGB-LCD\r 
gbdisp.c:33:  error: stray '\34' in program
make: *** [RGB.o] Error 1

Teilcode:
1
void disp_init(void)
2
{
3
  CMD_OUT &= ~RES;
4
  _delay_us(10);
5
  CMD_OUT |= RES;
6
7
  write_lcd(0,SLPOUT);
8
  write_lcd(0,IDMOFF);
9
  write_lcd(0,NORON);
10
  write_lcd(0,DISPON);  <<= Fehlerstelle
11
}

Nun, wenn ich diese stelle Auskomentiere, ist alles bestens d.h. keine 
Fehler werden angezeigt.

Hat jemand rat was das für eine Fehlerursache sein kann?

Grüße

von jason (Gast)


Lesenswert?

Ist denn die Konstante DISPON überhaupt vorhanden?

MfG

von tired (Gast)


Lesenswert?

Hallo jason

Ja und zwar in der Header Datei
1
...
2
#define DISPOFF 0x28
3
#define DISPON 0x29
4
...

Muss dazu sagen das ich es auch versucht hab mit DISPOFF statt mit 
DISPON und mit erfolg!?(im Bezug auf Fehrler)

Mir Kommt das sehr Komisch vor :(

von Carsten W. (eagle38106)


Lesenswert?

Hi!

So wie der mitgelieferte Quellcode aussieht, würde ich auch darauf 
tippen, daß irgendwas bei der Konstanten-Definition in die Hose gegangen 
ist.

Immer wieder ein beliebter Fehler bei #define: Das die Zeile 
abschließende Semikolon, das dort natürlich nicht hingehört. Die daraus 
resultierenden Fehlermeldungen lassen sich manchmal nur mit viel 
Phantasie deuten.

Gruß
Carsten

von Carsten W. (eagle38106)


Lesenswert?

tired schrieb:
> Hallo jason
>
> Ja und zwar in der Header Datei
>
>
1
> ...
2
> #define DISPOFF 0x28
3
> #define DISPON 0x29
4
> ...
5
>
>
> Muss dazu sagen das ich es auch versucht hab mit DISPOFF statt mit
> DISPON und mit erfolg!?(im Bezug auf Fehrler)
>
> Mir Kommt das sehr Komisch vor :(

Was ist denn das für ein Zeichen vor den 0x29? Vielleicht ein illegales 
Steuerzeichen?

von Simon K. (simon) Benutzerseite


Lesenswert?

Hast du den Text im vorherigen Post direkt 'reinkopiert? Das Zeichen 
direkt vor der "0" in der zweiten define-Zeile scheint kein Whitespace 
zu sein, sondern ein anderes Zeichen. Lösche das mal und setze da eine 
Leertaste (Oder Tab) hin.
(Ist hier im Forum rot unterlegt).

von jason (Gast)


Lesenswert?

1
#define 0xFF

von jason (Gast)


Lesenswert?

Aaaah.

Sorry. Einfach ignorieren.

MfG

von tired (Gast)


Lesenswert?

Kein Problem jason...

So nun Gehts wieder :)

DANKE DANKE DANKE

Aber was ist denn die Ursache gewesen?

Kann mir das bitte noch jemand sagen zum hinter die Ohren schreiben fürs 
nächste mal? :P

von Simon K. (simon) Benutzerseite


Lesenswert?

Kommt drauf an, wo der Fehler jetzt war? Wenn wie vermutet ein 
"falsches" Zeichen im C File war, dann muss wohl entweder der Editor das 
Zeichen reingeschummelt haben, oder aber du warst es mit ALT+ASCII Code 
(NumBlock) unter Windows.

von Jan (Gast)


Lesenswert?

Hi,

passiert mir ständig - meist schreibe ich versehentlich irgendein 
Sonderzeichen dahin (alt+irgendwas gedrückt), was da nicht hingehört. 
Aus irgendeinem Grund löscht mein Editor dann beim Backspace nur ein 
Byte und bei manchen Unicode- charaktern bleibt eins stehen, was der 
Compiler dann nicht versteht - im Editor sehe ich's aber nicht.

Jan

von tired (Gast)


Lesenswert?

Na schönes Ding ich als C Anfänger und dann das ...als ob ich nicht 
schon mit C probleme hätte :D

Naja "aufgeschrieben" hab ich und dazu gelehrnt.

Dafür bedanke ich mich ganz herzlich und einen Sonnigen sonnigen Tag.

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
Noch kein Account? Hier anmelden.