Hallo, ich habe ein sehr seltsames Problem. Ich wollte mir ein Programm schreiben, dass Messerte aufnimmt und über den LCD ausgibt, nur bleibt die Anzeige des LCDs leer. Ich habe das Programm durch auskommentieren soweit zusammen gekürzt, dass ich das Problem ermitteln konnte. Es liegt an meinem 2D Array: "volatile uint16_t matrix[20][150];" Klammere ich dieses aus, funktioniert alles, wie es soll. Probleme gab es vorher nie, auch nicht bei normalen Arrays. Kommt ein 2D Array der LCD Routine in die Quere? Die LCD Routine habe ich hierher (4bit Modus): http://www.mikrocontroller.net/articles/AVR-GCC-Tutorial/LCD-Ansteuerung Mikrocontroller: Atmega644 LCD: LCD 162C LED Der Code (aufs kürzeste zusammengestutzt):
1 | #include <avr/io.h> |
2 | #include "lcd-routines.h" |
3 | |
4 | volatile uint16_t nameDerMatrix[20][150]; |
5 | |
6 | int main( void ) |
7 | {
|
8 | lcd_init(); |
9 | lcd_string("Text"); |
10 | lcd_setcursor( 0, 2 ); |
11 | lcd_string("Nochwas"); |
12 | |
13 | while(1){}; |
14 | return(0); |
15 | }
|
Mfg, Brian