Hier sind deine Fehlermeldungen:
1 | ../hw_control.c: In function `tempAusgeben':
|
2 | ../hw_control.c:109: warning: implicit declaration of function `lcd_gotoxy'
|
3 | ../hw_control.c:110: warning: implicit declaration of function `lcd_puts'
|
4 | ../hw_control.c: In function `LEDsSetzen':
|
5 | ../hw_control.c:162: warning: implicit declaration of function `LEDrt0'
|
6 | ../hw_control.c:163: warning: implicit declaration of function `LEDge0'
|
7 | ../hw_control.c:164: warning: implicit declaration of function `LEDgn1'
|
8 | ../hw_control.c:169: warning: implicit declaration of function `LEDge1'
|
9 | ../hw_control.c:170: warning: implicit declaration of function `LEDgn0'
|
10 | ../hw_control.c:174: warning: implicit declaration of function `LEDrt1'
|
11 | ../hw_control.c: At top level:
|
12 | ../hw_control.c:184: error: conflicting types for 'LEDgn1'
|
13 | ../hw_control.c:164: error: previous implicit declaration of 'LEDgn1' was here
|
14 | ../hw_control.c:189: error: conflicting types for 'LEDgn0'
|
15 | ../hw_control.c:170: error: previous implicit declaration of 'LEDgn0' was here
|
16 | ../hw_control.c:194: error: conflicting types for 'LEDrt1'
|
17 | ../hw_control.c:174: error: previous implicit declaration of 'LEDrt1' was here
|
18 | ../hw_control.c:199: error: conflicting types for 'LEDrt0'
|
19 | ../hw_control.c:162: error: previous implicit declaration of 'LEDrt0' was here
|
20 | ../hw_control.c:204: error: conflicting types for 'LEDge1'
|
21 | ../hw_control.c:169: error: previous implicit declaration of 'LEDge1' was here
|
22 | ../hw_control.c:209: error: conflicting types for 'LEDge0'
|
23 | ../hw_control.c:163: error: previous implicit declaration of 'LEDge0' was here
|
Jede Zeile beginnt mit
../hw_control.c
Das ist der Dateiname der Source Code Datei, in der der Fehler
aufgetreten ist. Du hast zwar 2 *.c Dateien in dein ZIP File
reingepackt, aber keines von beiden ist hw_control.c
Die ersten beiden Fehlermeldungen lauten:
../hw_control.c: In function `tempAusgeben':
../hw_control.c:109: warning: implicit declaration of function
`lcd_gotoxy'
Aha. Der Fehler befindet sich also in der Funktion tempAusgeben()
Dort wird eine Funktion lcd_gotoxy() aufgerufen. Nur hat der Compiler
keinen Prototyp für lcd_gotoxy() gesehen. Also sagt er dir das.
Wahrscheinlich hast du einfach vergessen in hw_control() ebenfalls
einen #include "lcd.h" zu machen.
Was viele Neulinge nicht bedenken:
Jedes *.c File wird unabhängig von allen anderen *.c Files
übersetzt. Wenn du in main.c einen #include auf lcd.h machst,
dann ist das zwar nett, ist aber für hw_control.c völlig
uninteressant.
Das Konzept von C sieht vor, dass jedes einzelne *.c File,
dass zu einem Projekt gehört, unabhängig von allen anderen
übersetzt werden kann. Wenn du in einem Projekt 2000 *.c
Files hast und nur an einem eine Änderung machst, dann muss
daher auch nur dieses eine*.c File und nicht alle neu
übersetzt werden.
> Kennt jemand ein Online-Tutorial oder -Kompendium für C ?
Kauf dir ein Buch. Zu empfehlen ist
immer noch der Klassiker 'Kernighan & Ritchie'
Online Tutorials kommen selten über 20 Seiten hinaus und
sind oft fehlerhaft. Ein gutes Buch hat aber mindestens
150 Seiten. Irgendeinen Unterschied muss die unterschiedliche
Seitenzahl ja haben :-)