-         

Ergebnis 1 bis 9 von 9

Thema: Anfängerproblem mit Lauflicht.

  1. #1
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    22.09.2009
    Ort
    Geilenkirchen
    Beiträge
    419

    Anfängerproblem mit Lauflicht.

    Anzeige

    SMARTPHONES & TABLETS-bis zu 77% RABATT-Kostenlose Lieferung-Aktuell | Cool | Unentbehrlich
    Also, ich bin eigentlich noch anfänger.
    Heute habe ich es geschafft mein atmega 32 zu flashen.
    Jetzt möchte ich erstmal ein lauflich bauen aber es will noch nicht ganz klappen.denn es ikommen 3 warnungen und die led leuchtet die ganze zei.
    also ich will erstmal nur eine led zum blinken bringen.

    also, so sieht meion code aus:

    Code:
    #include <util/delay.h> 
    #include <avr/io.h>  
    #define F_CPU 1000000
    
    int main(void)
    
    {
    DDRB = 2;
    while(1) 
    {
     PORTB = 0b00000010;
     _delay_ms(60);
     PORTB = 0b00000000;
    
    
    }; 
    }
    Und es kommen diese warnungen:
    c:/winavr-20100110/lib/gcc/../../avr/include/util/delay.h:85:3: warning: #warning "F_CPU not defined for <util/delay.h>"
    ../lauflicht.c:3:1: warning: "F_CPU" redefined
    c:/winavr-20100110/lib/gcc/../../avr/include/util/delay.h:86:1: warning: this is the location of the previous definition

  2. #2
    Erfahrener Benutzer Roboter Experte Avatar von sternst
    Registriert seit
    07.07.2008
    Beiträge
    672

    Re: Anfängerproblem mit Lauflicht.

    Zitat Zitat von crabtack
    die led leuchtet die ganze zei.
    Nein, du siehst das Blinken nur nicht, weil die Ein-Zeit 20000 (zwanzigtausend) mal länger ist, als die Aus-Zeit.

    Zitat Zitat von crabtack
    Und es kommen diese warnungen:.
    F_CPU wird in delay.h benötigt, also muss das "#define F_CPU" vor das "#include <util/delay.h>".
    MfG
    Stefan

  3. #3
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    7.551

    Re: Anfängerproblem mit Lauflicht.

    [quote="sternst"]
    Zitat Zitat von crabtack
    ... also muss das "#define F_CPU" vor das "#include <util/delay.h>" ...
    Hmmmm, wieder was gelernt. Ich hatte den Fehler nie (hab meine eigene "wait_ms"). ABER ich hätte das auch so gemacht, weil ich dachte, dass der Preprozessor das schon "richtet". Wieder was gelernt !

    Frage: seit einigen Monaten habe ich den Prozessortakt im AVRStudio in die "Current Configuration Options" geschrieben - auf Rat aus dem Forum hin. Wann werden denn die abgefragt? Das wäre dann doch sicher auch hier eine richtige Möglichkeit?
    Ciao sagt der JoeamBerg

  4. #4
    Erfahrener Benutzer Roboter Genie Avatar von Rabenauge
    Registriert seit
    13.10.2007
    Ort
    Osterzgebirge
    Alter
    49
    Beiträge
    1.241
    Der Präprozessor richtet sowas meistens auch: man _kann_ viele Warnungen durchaus ignorieren, aber eben nicht alle. Und ehe du dann ewig suchst...ich hab mir inzwischen angewöhnt, _jede_ Warnung erst zu beheben, ehe ich was flashe.
    Im allgemeinen ergibt es dann nur "unlogisches" Programmverhalten. Dann finde mal das Problem.

  5. #5
    Erfahrener Benutzer Roboter Experte Avatar von sternst
    Registriert seit
    07.07.2008
    Beiträge
    672

    Re: Anfängerproblem mit Lauflicht.

    Zitat Zitat von oberallgeier
    Frage: seit einigen Monaten habe ich den Prozessortakt im AVRStudio in die "Current Configuration Options" geschrieben - auf Rat aus dem Forum hin. Wann werden denn die abgefragt? Das wäre dann doch sicher auch hier eine richtige Möglichkeit?
    Ja. F_CPU im Makefile zu definieren (und das ist letztlich das, was passiert, wenn du es in den "Configuration Options" einstellst), ist sogar der beste Weg. Aber der OP hat ja nicht gesagt, was er benutzt und wie er compiliert.

    [oberlehrer]
    Jedes mal, wenn ich "Preprozessor" sehe, bekomme ich die Krätze. Ich habe ganz und gar nichts gegen Anglizismen, aber Englisch-Deutsch-Kombinationen innerhalb eines Wortes müssen es ja nun wirklich nicht unbedingt sein.
    Es heißt entweder "Präprozessor" (deutsch) oder "Preprocessor" (englisch).
    [/oberlehrer]
    MfG
    Stefan

  6. #6
    Erfahrener Benutzer Robotik Visionär Avatar von oberallgeier
    Registriert seit
    01.09.2007
    Ort
    Oberallgäu
    Beiträge
    7.551

    Re: Anfängerproblem mit Lauflicht.

    Erstmal danke Stefan, und dann
    Zitat Zitat von sternst
    ... Jedes mal, wenn ich "Preprozessor" sehe ...
    Au Sch...e - genau das wollte ich nicht schreiben. Freud´sches Fehlverhalten - oder Altersdebilität. Egal - jedenfalls isses dämlich. Tut mir wirklich leid.

    Wobei manche Denglish-Konstrukte so daneben sind, dass sie schon fast ihren Charme haben: Backshop zum Beispiel oder so *ggg*.
    Ciao sagt der JoeamBerg

  7. #7
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    22.09.2009
    Ort
    Geilenkirchen
    Beiträge
    419
    Danke, ich habe es geschafft die led zum leuchrten zu brigen.
    Und auch ein lauflicht aufgebaut.
    http://www.sendspace.com/file/5jjn3m
    (Ich habe leider keinen youtube account)
    Jetzt werde ich dem lauflicht noch ein paar extras geben wioe einen schalter und einen trimmer mit dem man die abstäde zwichen dem blinken einstellen kann.
    Dannn kommt eine großbestellung bei pollin und ich bau endlich einen malrobo.^^

    Wie kann man eigentlich amn einem pin erkennen, wieviel spannung da ist und das atmega die zahl als variable speichern lassen?

  8. #8
    Erfahrener Benutzer Roboter Experte Avatar von BurningWave
    Registriert seit
    22.12.2007
    Ort
    nahe Stuttgart
    Alter
    23
    Beiträge
    656
    #include <util/delay.h>
    #include <avr/io.h>
    #define F_CPU 1000000

    int main(void)

    {
    DDRB = 2;
    while(1)
    {
    PORTB = 0b00000010;
    _delay_ms(60);
    PORTB = 0b00000000;


    };
    }

    Ist dieses Semikolon überhaupt erlaubt? Und muss es nicht #define F_CPU 1000000ul heißen?
    meine Homepage: http://www.jbtechnologies.de
    Hauptprojekte: Breakanoid 2 - Sound Maker

  9. #9
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    22.09.2009
    Ort
    Geilenkirchen
    Beiträge
    419
    Erlaubt ist das semikiolon aber nicht notwendig.
    ka, wieso ich es hingemacht habe.

    Ich gkaube, dass mit dem ukl war nur früher so.

    Habe jetzt auch ein video auf youtube

    http://www.youtube.com/watch?v=XTE_r4x7YcY

Berechtigungen

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