www.mikrocontroller.net

Forum: Compiler & IDEs Peter Fleurys library einbinden fehlgeschlagen


Autor: Julius (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

ich verscuhe gerade einen HD44780 an meinen µC anzuschließen, dazu habe 
ich die "4-Bit Ansteuerung mit Busy(I/O Mode)" benutzt, wie sie auf 
http://www.roboternetz.de/wissen/index.php/LCD-Modul_am_AVR beshrieben 
wird (ich habe VEE auch auf GND gesetzt ist das in Ordnung?).

Dann hab ich mir die library von Herrn Felury heruntergeladen und in das 
Verzeichnis D:\WinAVR\share\doc\avr-libc-1.4.4\examples\stdiodemo von 
WINAVR kopiert. Anschließend ein neues Projekt geöffnet und die makefile 
im avr studio bei Project -> Configuration Options -> Use external 
Makefile ausgewählt.

In der lcd.h Datei hab ich die Änderungen wie in 
http://www.roboternetz.de/wissen/index.php/LCD-Modul_am_AVR beschrieben 
vorgenommen und zusätzlich die Zeile:

#define LCD_PORT         PORTC        /**< port for the LCD lines   */

in

#define LCD_PORT         PORTB        /**< port for the LCD lines   */

geändert.

Jetzt gibt mir das AVR Studio aus:

Build succeeded with 0 Warnings...

Allerdings steht bei Message:

Loaded plugin STK500
Loaded plugin AVR GCC
Loaded partfile: D:\Programme\Atmel\AVR 
Tools\PartDescriptionFiles\ATtiny2313.xml
gcc plug-in: Output directory D:\Progi\test003\default\ does not exist
gcc plug-in: Created directory D:\Progi\test003\default\
gcc plug-in: Error: Object file not found on expected location
(roter 
Punkt)D:\WinAVR\share\doc\avr-libc-1.4.4\examples\stdiodemo\test003.elf
Make sure your makefile specifies the output .elf file as test003.elf


Jetzt hab ich das ganze auf den µC übertragen wollen, aber es gibt keine 
hexfile mit dem namen des geöffneten Projekts, weswegen ich die lcd_test 
Datei genommen habe, aber mit der geht es auch nicht.

Könnte mir bitte jemand damit helfen?

Danke schon einmal im Vorraus

Autor: Oliver (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ein roter Punkt heisst nunmal, daß der Compile/Linkprozess irgendwo 
fehlgeschlagen ist.

Entweder du vergisst AVRStudio, passt das Original makefile an deine 
Bedürfnisse (MPU/Pfade/...) an, und tippst dann ein lässiges "make all" 
in die Dos-Box, oder du verwendest AVRStudio, erzeugst dort ein 
richtiges Projekt mit allen sourcefiles, und lässt das Studio den Rest 
machen. Das erzeugt dann schon ein passendes makefile, da brauchst du 
dich nicht weiter drum zu kümmern.

AVTStudio mit externen, nicht passenden makefiles gibt nur Probleme.

Oliver

Autor: Julius (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn ich die externe Makefile weglasse, was muss ich dann machen?

Ich kann ja das lcd.h trotzdem benutzen, oder? (wenn ja, wie?9

Ich habe noch fast nichts mit dem AVR Stduio gemacht, weswegen ich etwas 
überfordert bin...

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Als erstes schmeist du mal das externe Makefile über Bord
und änderst die Konfiguration wieder zurück, dass sich
AVR Studio selbst das makefile generiert.

Klar kannst du das lcd.h benutzen.
Du schreibst wie gewohnt
#include "xyz\lcd.h"
wobei du anstelle von xyz den Pfad einsetzt, auf den du lcd.h bzw.
lcd.c kopiert hast. Wenn das das Projektverzeichnis ist, dann
lässt du die Pfadangabe komplett weg.

Danach klickst du im AVR-Studio links im Projektbaum mit
der rechten Maustaste auf "Source Files". Im daraufhin aufgehenden
Kontextmenü wählst du aus: "Add existing source file(s)" und
zeigst ihm die lcd.c. Die gehört ja schliesslich auch zum Projekt.

Wenn du ganz genau sein willst, dann machst du dasselbe
mit den Header files und lcd.h (also lcd.h zu den zum
Projekt gehörenden Header Files hinzufügen).

Projekt neu erstellen lassen (F5) und dann sollte es
funktionieren.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.