Hallo Alle zusammen, ich will gerade mein Display mit dem lcd Programm von Ullrich Radig test. Jedoch bekomme ich eine unmenge an Fehlern in der lcd.c obwohl ich in der main.c und lcd.c beide male #include "lcd.h" geschrieben habe. Build started 18.1.2008 at 19:19:49 avr-gcc.exe -mmcu=atmega32 -Wall -gdwarf-2 -O0 -MD -MP -MT lcd.o -MF dep/lcd.o.d -c ../Abschlussprojekt/Programmcode/LCD/SourceCode1.0/lcd.c ../Abschlussprojekt/Programmcode/LCD/SourceCode1.0/lcd.c: In function 'LCD_Init': ../Abschlussprojekt/Programmcode/LCD/SourceCode1.0/lcd.c:24: error: 'DDRC' undeclared (first use in this function) ../Abschlussprojekt/Programmcode/LCD/SourceCode1.0/lcd.c:24: error: (Each undeclared identifier is reported only once ../Abschlussprojekt/Programmcode/LCD/SourceCode1.0/lcd.c:24: error: for each function it appears in.) ../Abschlussprojekt/Programmcode/LCD/SourceCode1.0/lcd.c: In function 'Write_LCD': ../Abschlussprojekt/Programmcode/LCD/SourceCode1.0/lcd.c:55: error: 'DDRC' undeclared (first use in this function) ../Abschlussprojekt/Programmcode/LCD/SourceCode1.0/lcd.c:59: warning: implicit declaration of function 'cbi' ../Abschlussprojekt/Programmcode/LCD/SourceCode1.0/lcd.c:59: error: 'PORTC' undeclared (first use in this function) ../Abschlussprojekt/Programmcode/LCD/SourceCode1.0/lcd.c:63: warning: implicit declaration of function 'sbi' ../Abschlussprojekt/Programmcode/LCD/SourceCode1.0/lcd.c:76: warning: implicit declaration of function 'loop_until_bit_is_clear' ../Abschlussprojekt/Programmcode/LCD/SourceCode1.0/lcd.c: In function 'Read_LCD': ../Abschlussprojekt/Programmcode/LCD/SourceCode1.0/lcd.c:83: error: 'DDRC' undeclared (first use in this function) ../Abschlussprojekt/Programmcode/LCD/SourceCode1.0/lcd.c:85: error: 'PORTC' undeclared (first use in this function) ../Abschlussprojekt/Programmcode/LCD/SourceCode1.0/lcd.c:100: error: 'PINC' undeclared (first use in this function) ../Abschlussprojekt/Programmcode/LCD/SourceCode1.0/lcd.c: In function 'LCD_Print': ../Abschlussprojekt/Programmcode/LCD/SourceCode1.0/lcd.c:131: error: 'va_list' undeclared (first use in this function) ../Abschlussprojekt/Programmcode/LCD/SourceCode1.0/lcd.c:131: error: expected ';' before 'ap' ..... ..... make: *** [lcd.o] Error 1 Build failed with 13 errors and 9 warnings... Wer hätte dafür eine Erkärung? Gruß Georg
>../Abschlussprojekt/Programmcode/LCD/SourceCode1.0/lcd.c:24: error: >'DDRC' undeclared (first use in this function) >../Abschlussprojekt/Programmcode/LCD/SourceCode1.0/lcd.c:83: error: >'DDRC' undeclared (first use in this function) >../Abschlussprojekt/Programmcode/LCD/SourceCode1.0/lcd.c:85: error: >'PORTC' undeclared (first use in this function) >../Abschlussprojekt/Programmcode/LCD/SourceCode1.0/lcd.c:100: error: >'PINC' undeclared (first use in this function) Du hast nicht die passende Header-Datei (io.h) für deinen Controller eingebunden, welcher AVR?
/* Copyright: Radig Ulrich mailto: mail@ulrichradig.de Author: Radig Ulrich Remarks: known Problems: none Version: 28.05.2004 Description: Dieses Programm dient als Beispiel zur Ansteuerung einer MMC/SD-Memory-Card. Zum Zugriff auf eine MMC/SD-Karte, muß man nur die Datei mmc.c in sein eigenes Programm einfügen. */ #include <stdio.h> #include <stdlib.h> #include <avr/io.h> #include "lcd.c" //Hauptprogramm int main (void) { //Initzialisierung des LCD - Displays LCD_Init(); //Hauptprogramm läuft ständig in einer schleife und macht nichts while (1) { int c; for (c=0;c<0xff;c++) { LCD_Clear (); LCD_Print(0,0,"Int Wert:%i Hex Wert:%x ",c,c); LCD_Print(1,0,"Mikrocontroller and more"); int a; for (a=0;a<6000;a++) { int b; for (b=0;b<2000;b++); } } } return (1); } Sollte doch eigentlich der fall sein, oder ist das irgend wie falsch?
Als MC hab ich den Atmgea 32 auf dem rn-cotroll Board. Georg
Stooooooooooooooooooooooooop, ich hatte das Makefile nicht eingebunden. Sorry und dennoch danke, Georg
Ich hab jetzt nur noch eine Fehler, lcd.c:76: error: lvalue required as unary '&' operand was könnte dies sein? Georg
>loop_until_bit_is_clear(Read_LCD(0),BusyBit); //Wartet bis LCD wieder bereit
loop_until_bit_is_clear() mag keine Funktion als Parameter.
Das schein nicht das Problem zu sein. Im gegenteil, ich bekomme eher mehr Fehler. Ich bin auch noch auf der Suche. Ich hoffe wir finden den Fehler. Gruß Georg
>lcd.c:76: error: lvalue required as unary '&' operand >was könnte dies sein? Das unary & ist entweder das logische "Und" oder der Adressoperator (Pointer-Arithmetik). Ich tippe auf den Pointer.
Ich zeige Euch mal meine kompletten Files. Eventuel findet ja von Euch einer den Fehler. danke Georg
Sorry, aber hat von Euch wirklich keiner eine Idee wo mein Fehler liegen könnte? Gruß Georg
Darf ich mal fragen, wo du diesen völlig veralteten Quellcode her hast?
>Sorry, aber hat von Euch wirklich keiner eine Idee wo mein Fehler liegen >könnte? Doch, aber sei ehrlich, Fragen der Art: "Ich habe hier irgendeinen Quellcode, von irgendwo runtergeladen, irgendwie geht das alles nicht, bitte alle Fehler beseitigen" beantwortet halt niemand. Du solltest dich schon selber soweit in das Thema einarbeiten, um konkrete Fragen stellen zu können. Das ist erkennbar bisher nicht der Fall. Oliver
Recht herzlichen Dank für Eure sehr hilfreichen Beiträge, aber ich merke schon, wenn man ein recht simples Problem hat, bekommt man überhaupt keine Hilfe. Im gegenteil, man bekommt nur sau dumme Kommentare. Sorry, dass es Menschen gibt, die sich mit so einem MC eben noch nicht all zu gut auskennen. Da bekommt man echt Lusst auf mehr. Ich freue mich über hilfreiche Antorten. Um mich rund machen zu lassen, brauch ich nichts ins Forum zu posten. Gruß Georg
Niemand wird hier "rundgemacht" Wenn allerdings die Fragestellung etwas daneben ist, dann muss man sich unter umständen schonmal etwas Kritik gefallen lassen. Du kannst nicht einfach den Quellcode posten und sagen "hey, macht mal!". Die Fragen sollten schon etwas gezielter sein. Problem ist eigentlich ganz einfach: dein Quellcode ist zu alt um mit einer aktuellen Verison des AVR-GCC spielen zu können. Geh auf die Webseite von Herrn Radig, lad dir dort ne aktuelle Version runter und du wirst sehen: dann läufts auch mit den Nachbarn...
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.