-         
+ Antworten
Seite 1 von 4 123 ... LetzteLetzte
Ergebnis 1 bis 10 von 32

Thema: bin zu doof für WinAVR...

  1. #1
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    16.03.2004
    Beiträge
    259

    bin zu doof für WinAVR...

    Hi,
    also ich hab grade meinen Controller fertig aufgebaut (Mega und jetz versucht mit WinAVR in C das teil zu programmieren. Ich will nur das eine Diode die an PB0 hängt zu blinken beginnt.

    Also wie kann ich meinen Sourcecode in eine Controller verständliche datei compilieren? Das geht doch mit WinAVR oder täusche ich mich da?

    Danke schonmal
    Grind

  2. #2
    Gast
    Bei der aktuellen Version:
    - C-Datei im Programmers Notepad Öffnen
    - dann Makefile anpassen
    - dann bei Tools --> make all klicken
    - dann liegt die hex-Datei in deinem Verzeichnis
    - die kannst du dann mit avrdude per Tools --> program in den MC laden

    Lies der mal die entsprechenden Tutorials und Webseite in der Linksammlung bzw. die Artikel dieser Webseite zu dem Thema durch, dann hätte sich auch diese Frage erledigt gehabt.

    PS: Und vergiss nicht die Fusebits anzupassen.

  3. #3
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    16.03.2004
    Beiträge
    259
    also ich hab jetz das WinAVR Tutorial vom Kreativen-Chaos durchgemacht. Das thema das mich interessiert wird da nich wirklich besprochen.

    ok ich habs trotzdem ein bisschen weiter geschafft...

    ich bekomm wenn ich in WinAVR Makeall ausführe bekomme ich folgende Meldung:

    > "make.exe" all

    -------- begin --------
    avr-gcc (GCC) 3.4.1
    Copyright (C) 2004 Free Software Foundation, Inc.
    This is free software; see the source for copying conditions. There is NO
    warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

    make.exe: *** No rule to make target `Blinker.o', needed by `Blinker.elf'. Stop.

    > Process Exit Code: 2


    was bedeutet das bzw. was is da falsch eingestellt? oder ist des ein code fehler?

    Danke
    Grind

  4. #4
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    23.05.2004
    Ort
    Untersöchering(Bayern,Alpenvorland)
    Alter
    29
    Beiträge
    215
    Du musst das Makefile mit einem Editor an den Namen deiner Sourcecode Datei anpassen und du musst dich mit Programmers Notepad in dem Ordner mit den Headerdateien, Makefile usw. befinden.
    Notfalls einfach Datei nochmal speichern und dann make all ausführen.
    Gruß Muraad

  5. #5
    Neuer Benutzer Öfters hier
    Registriert seit
    21.07.2004
    Ort
    Luxemburg
    Beiträge
    12
    Ich kenne mich nicht mit WINAVR nicht aus aber koenntest du die komplette Ausgabe des makes posten, dann koennte ich vielleicht weiterhelfen.

    Es sieht so aus als haette dein Makefile keinen Eintrag fuer Blinker.o was durch kompilieren von Blinker.c generiert wird.


    Der Eintrag muesste in etwa so aussehn

    Blinker.o: Blinker.c
    usw....

  6. #6
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    22.11.2003
    Beiträge
    991
    Hi,

    ich vermutet mal das du dein Quelltextdatei "blinker.c" genannt hast. Dann musst du das auch im Makefile einstellen. Dazu einfach in der Datei "Makefile" bei dem Punkt
    Code:
    TARGET = main
    durch
    Code:
    TARGET = blinker
    ersetzen

    Ich werd das im Tutorial mal ergänzen.

    MfG Kjion

  7. #7
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    16.03.2004
    Beiträge
    259
    ach verdammt war wirklich ein sau blöder fehler... hatte die source datei nich im selben ordner wie das projekt und das makefile...

    also jetz hab ich aber ein anderes problem.

    Source:
    Code:
    #include <avr/io.h>                          	//Zugriff auf IO's des Controllers
    #include <simple_delayroutinen.c>
    
    int main (void) {
    	DDRB = 0xff;								//PB0...PB7 als Ausgänge definieren
    	for (;;) {									//Endlosschleife
    		PORTB = 0x00;							//LEDs leuchten
    		delay_ms (750);							//warte
    		PORTB = 0xff;							//LEDs aus
    		delay_ms (750);
    	}}
    Fehler:
    Code:
    > "make.exe" all
    
    -------- begin --------
    avr-gcc (GCC) 3.4.1
    Copyright (C) 2004 Free Software Foundation, Inc.
    This is free software; see the source for copying conditions.  There is NO
    warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
    
    
    Compiling: blinker.c
    avr-gcc -c -mmcu=atmega8 -I. -gstabs   -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=blinker.lst  -std=gnu99 -Wp,-M,-MP,-MT,blinker.o,-MF,.dep/blinker.o.d blinker.c -o blinker.o 
    blinker.c:2:34: simple_delayroutinen.c: No such file or directory
    blinker.c: In function `main':
    blinker.c:8: warning: implicit declaration of function `delay_ms'
    make.exe: *** [blinker.o] Error 1
    
    > Process Exit Code: 2
    Hoffe das war jetz nich zuviel text ich weiss nicht wie man so ein code fenster einfügt...

    ( Ich habs mal geändert, schaus dir mal im Edit Fenster an, Kjion )

  8. #8
    Gast
    Was soll die 'simple_delayroutinen.c' hier bewirken?

    Die Fehlermeldungen sagen Dir doch eigentlich hier alles:
    • -'simple_delayroutinen.c' nicht gefunden
      -'delay_ms' verwenden einer unbekannten Deklaration

    Ich beginne auch gerade damit mich in C hineinzufuchsen. Jedoch verwende ich für Verzögerungen die 'delay.h'

  9. #9
    Neuer Benutzer Öfters hier
    Registriert seit
    21.07.2004
    Ort
    Luxemburg
    Beiträge
    12
    In C werden Includes benutzt um die jeweiligen Funktions-Prototypen fuer den Preprozessor des Compilers zu definieren damit der Compiler die richtigen Symbole anlegt um die jeweiligen Funktionen aufzurufen. Die Funktionen an sich sind in den verschiedenen Source-Dateien (.c) festgelegt.


    Bis denne

  10. #10
    Erfahrener Benutzer Begeisterter Techniker
    Registriert seit
    16.03.2004
    Beiträge
    259
    ja mein problem is ich kann noch kein C und jetz gehts mir erstmal nur darum den controller zu testen ob der funktioniert. hab den source so wie der is auf der page gefunden. weiss einer wo ich nen funktionierenden code bekomme oder kann mir schnell einer was schreiben?

    mitm C lernen fang ich an sobald der controller funktioniert. das is mir grad wichtiger...

    danke schonmal vielmals!
    Grind

+ Antworten
Seite 1 von 4 123 ... LetzteLetzte

Berechtigungen

  • Neue Themen erstellen: Ja
  • Themen beantworten: Ja
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •