Hallo, Ich habe ein problem mit einem c programm und zwar folgendes ich habe einen Atmega 168 der mir per UART nach drücken eines tasters einen text aus geben soll der dan auf einem 320x240 LCD wieder gegeben wird. Und nun zum problem, Bis das ich text4 ein gefügt hatte funktionierte alles einbahnfrei die Seiten konnten nacheinander aufgerufen werden aber jetzt sendet das programm als start seite folgendes uartPutChar (0x0c); uartPutChar (0x09); uartPutChar (0x30); uartPutChar (0x0c); bis hier ja soweit richtig dan aber sendet er (r copy goods for which the ) etc. hat einer eine Idee wo der Fehler ist??? schon mal ein DANKESCHÖN, Gruß, Max
Was wird denn beim Compilieren am Ende für die RAM-Auslastung angezeigt? Ich wette, du hast bei den ganzen Strings das Ende der Fahnenstange erreicht. Du musst die Strings ins Flash packen.
danke für deinen tip, mein programmer zeigt an das er 2512 bytes ins flasch gerschrieben hat. habe selber aber nicht soviel ahnung vom programmieren des halb währe es nett wen du mir nen tip geben würdest wie man die strings im flasch spiechert dachte nämlich das das sowieso so währe.
Max schrieb: > danke für deinen tip, > mein programmer zeigt an das er 2512 bytes ins flasch gerschrieben hat. Das ist nicht der interessante Wert. Interessant ist der Wert, den du unter Data wieder findest. Und den Wert gibt dir die Entwicklungsumgebung nach dem Compilieren. (Zumindest AVR-Studio macht das)
Max schrieb: > nett wen du mir nen tip geben würdest wie man die strings im flasch > spiechert dachte nämlich das das sowieso so währe. http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial#Programmspeicher_.28Flash.29
ja danke toll! keiene ahnung wie mir das weiter helfen soll [[http://www.mikrocontroller.net/articles/AVR-GCC-Tu...]] ein Profi kann das, Max schrieb: > habe selber aber nicht soviel ahnung vom programmieren geht das nicht 2 bis 3 Nummern leichter? weil damit komm ich gar nicht zurecht!!!!
Max schrieb: > ja danke toll! > keiene ahnung wie mir das weiter helfen soll > [[http://www.mikrocontroller.net/articles/AVR-GCC-Tu...]] > ein Profi kann das, Sorry. Aber dazu muss man nun wirklich kein Profi sein. Es hilft aber, wenn man weiß was man tut. Zb in der String Ausgabefunktion.
1 | void uartPutString_P(char *buffer) |
2 | {
|
3 | char c; |
4 | |
5 | c = pgm_read_byte( buffer++ ); |
6 | while( c != '\0' ) { |
7 | uartPutChar( c ); |
8 | c = pgm_read_byte( buffer++ ); |
9 | }
|
10 | }
|
11 | |
12 | ...
|
13 | |
14 | |
15 | uartPutString_P( PSTR( " THIS IS " ) ); |
hi, habe gerade das Programm ab geändert und es funktioniert jetzt super wollte mich für deine Hilfe vielmals bedanken. Danke für deine Hilfe gruß, max
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.