Forum: Mikrocontroller und Digitale Elektronik LCD ausprobieren


von O. A. (sokrates1989)


Lesenswert?

Hallo,
ich möchte gerne den unten stehenden Code ausprobieren. Ich bekomme eine 
Fehlermeldung:
" ../LCD_uebung.c:3:26: fatal error: lcd-routines.h: No such file or 
directory"

Ich denke das liegt damit zusammen oder..?
-----------------------------------------
Der folgende Satz von Ansteuerroutinen für ein Text-LCD ist in der Datei 
lcd-routines.c zusammengefasst. Diese Datei muss man beim Einrichten 
zusätzlich zum eigenen Hauptprogramm in sein Projekt aufnehmen. Dies 
geschieht beim AVR Studio unter Source Files im Fenster AVR GCC oder bei 
WinAVR im Makefile (z. B. durch SRC += lcd-routines.c).
-----------------------------------------

Ich verwende AVR Studio 4..wie kann ich diese Datei einrichten bzw. 
hinzufügen ?

1
#include <avr/io.h>
2
#include "lcd-routines.h"
3
#define F_CPU 3686400
4
5
int main(void)
6
{
7
  // Initialisierung des LCD
8
  // Nach der Initialisierung müssen auf dem LCD vorhandene schwarze Balken
9
  // verschwunden sein
10
  lcd_init();
11
12
  // Text in einzelnen Zeichen ausgeben
13
  lcd_data( 'T' );
14
  lcd_data( 'e' );
15
  lcd_data( 's' );
16
  lcd_data( 't' );
17
18
  // Die Ausgabemarke in die 2te Zeile setzen
19
  lcd_setcursor( 0, 2 );
20
21
  // erneut Text ausgeben, aber diesmal komfortabler als String
22
  lcd_string("Hello World!");
23
24
  while(1)
25
  {
26
  }
27
28
  return 0;
29
}

: Bearbeitet durch User
von Stefan F. (Gast)


Lesenswert?

Verwendet dein Projekt ein Makefile? Dann zeige es mal her.

Wenn nicht, geh mal die Projektoptionen durch. Da kann st du irgendwo 
Quelltext-Dateien hinzufügen.

von Baldrian (Gast)


Lesenswert?

Statt

#include <lcd-routines.h>

muss es

#include "lcd-routines.h"

heißen.

Zudem muss u. U. der vollständige Pfad zur Datei lcd-routines.h 
angegeben werden.

von O. A. (sokrates1989)


Angehängte Dateien:

Lesenswert?

Stefan U. schrieb:
> Verwendet dein Projekt ein Makefile? Dann zeige es mal her.

habs hochgeladen.

> Wenn nicht, geh mal die Projektoptionen durch. Da kann st du irgendwo
> Quelltext-Dateien hinzufügen.

schaue ich jetzt mal...

von O. A. (sokrates1989)


Lesenswert?

Baldrian schrieb:
> Statt
>
> #include <lcd-routines.h>
>
> muss es
>
> #include "lcd-routines.h"
>
> heißen.
>

ja das habe ich auch so...hatte es vorher kurz geändert. Aber auch mit 
der richtigen Schreibweise bleibt der Fehler bestehen.

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Dann musst Du die Datei lcd-routines.h suchen. Irgendwo wirst Du die 
korrespondierende Datei lcd-routines.c ja auch her haben.

von Werner (Gast)


Lesenswert?

> lcd-routines.c

Diese Quelldatei wird aber auch nicht kompiliert, soweit ich das 
Makefile interpretiere.

Das ist aber auch nur ein weiterer Fehler.
Scheinbar kompiliert der TO weder die Quelldatei, noch gibt es eine 
Header-datei.

Also:
- Makefile überarbeiten, so dass lcd-routines.c auch kompileirt wird.
- Die Header datei mit ins Verzeichnis legen, damit diese von 
LCD_uebung.c
  auch inkludiert werden kann.
  Bei nicht vorhanden sein von lcd-routines.h diese ggf. kurz selber
  schreiben.

Werner

von Stefan F. (Gast)


Lesenswert?

Du musst im Makefile bei

> OBJECTS = LCD_uebung.o

Noch "lcd-routines.o" anhängen. Dadurch wird die Datei lcd-routines.c 
mit compiliert.

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

In AVR Studio 4 sollte es reichen, 'lcd-routines.h' ins 
Projektverzeichnis zu kopieren und 'lcd-routines.c' mit 'Add existing 
file...' (rechte Maustaste) in den 'Source Files' Ordner im Projekt 
Fenster zu addieren, sollte aber auch im Projektverzeichnis liegen. Will 
man Edit Zugriff auf 'lcd-routines.h' haben, kann man die Datei noch in 
den 'Header Files' Ordner addieren.
Rumfummeln am Makefile ist unnötig.

: Bearbeitet durch User
von O. A. (sokrates1989)


Angehängte Dateien:

Lesenswert?

Hallo,

ich habe das Problem dass ich weder eine Quelldatei, noch eine 
Headerdatei besitze. Ich habe zwar ein PDF Dokument vorliegen, welcher 
"LCD-Ansteuerung" heißt. (von unserem Dozenten zur Verfügung gestellt)
Ich weiß aber bei diesem Dokument nicht genau was ich mit dem Code 
anfangen soll.

Beitrag #5037168 wurde von einem Moderator gelöscht.
Beitrag #5037174 wurde von einem Moderator gelöscht.
von c-hater (Gast)


Lesenswert?

O. A. schrieb:

> ich habe das Problem dass ich weder eine Quelldatei, noch eine
> Headerdatei besitze. Ich habe zwar ein PDF Dokument vorliegen, welcher
> "LCD-Ansteuerung" heißt. (von unserem Dozenten zur Verfügung gestellt)
> Ich weiß aber bei diesem Dokument nicht genau was ich mit dem Code
> anfangen soll.

Wenn das kein Troll ist, was denn dann?

Also, meine lieben Moderatoren, die ihr ja sonst so leicht zur Zensur 
neigt: löscht doch bitte diesen Thread gleich komplett!

von Manfred (Gast)


Lesenswert?

c-hater schrieb:
> Wenn das kein Troll ist, was denn dann?

Ein Teil der aktuellen Bildungselite.

von O. A. (sokrates1989)


Lesenswert?

Ich bin kein Troll. Ich bin halt nicht so drinn in der Materie..und 
wollte eben mal diesen LCD Code ausprobieren.. ich dachte diese Routine 
würde so eingebundne wie es z.b bei der include datei bei Assembler der 
Fall war. Ich denke man muss deswegen nicht so ausarten? Vermutlich habt 
ihr noch nie eine dumme Frage gestellt und seid extrem intelligent. Hut 
ab. Und danke für die freundlichen Worten.

Beitrag #5037710 wurde von einem Moderator gelöscht.
Beitrag #5037714 wurde von einem Moderator gelöscht.
von Stefan F. (Gast)


Lesenswert?

> ich dachte diese Routine würde so eingebundne wie es z.b bei
> der include datei bei Assembler der Fall war.

So ist es ja auch fast. In deinem Fall scheitert das Vorhaben aber schon 
daran, dass das was du einbinden willst gar nicht vorhanden ist.

Versuchst du auch Kuchen ohne Mehl und Eier zu backen?

von Nick S. (c0re)


Lesenswert?

Stefan U. schrieb:
> Versuchst du auch Kuchen ohne Mehl und Eier zu backen?

Im Gegensatz zu seinem PDF steht in einem Backrezept aber nicht wo man 
Mehl und Eier herbekommt ;)

von Patrick J. (ho-bit-hun-ter)


Lesenswert?

Hi

Nick S. schrieb:
> Im Gegensatz zu seinem PDF steht in einem Backrezept aber nicht wo man
> Mehl und Eier herbekommt ;)

Eier immer am Mann ;), ganz ohne DaBla

von Nop (Gast)


Lesenswert?

O. A. schrieb:

> ich habe das Problem dass ich weder eine Quelldatei, noch eine
> Headerdatei besitze.

In Deinem PDF, von Seite 1 ab dem "-------" bis Seite 4 zu dem 
"------------------------------------------------------", das ist ist 
Deine "lcd-routines.c". Kopier diesen Abschnitt in eine so benannte 
Datei rein.

Ab dem "------------------------------------------------------" auf 
Seite 4 bis zum Ende, das ist der Inhalt Deiner "lcd-routines.h".

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.