- Labornetzteil AliExpress         
Seite 2 von 3 ErsteErste 123 LetzteLetzte
Ergebnis 11 bis 20 von 27

Thema: Kapiere _delay nicht

  1. #11
    Benutzer Stammmitglied
    Registriert seit
    05.03.2007
    Beiträge
    43
    Anzeige

    Praxistest und DIY Projekte
    Warum hängt der sich in der schleife auf. Ist ein Beispiel von https://www.roboternetz.de/wissen/in.../Warteschleife

  2. #12
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    08.07.2006
    Ort
    Karlsruhe/München
    Alter
    34
    Beiträge
    587
    Du hast recht, die hängt sich nicht auf.

    Aber nur ein paar Tipps für die Proggerzukunft mit avr-gcc.

    Das main-proggi sollte immer in einer endlosschleife sein.
    while(1)...

    Code:
    int main()
    {
    
    while(1){
    int i;
       
    for (i=0; i<50; i++)
    {
          (void) (int * volatile) &i;
    }
    
    DDRB=0x01;
    PORTB=0x01;
    }
    return 0;
    }
    Zudem musst du die Pullups(==>PortC) setzen, damit der Ausgang high wird.

    Grüße

  3. #13
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    22.02.2005
    Beiträge
    385
    ja, du wartest in der Schleife und tust garnix. erst wenn die schleife zuende ist wird dein port gesetzt.

    du brauchst eher sowas
    Code:
    while(1) {
         if(LED an) {
             machs aus
         } else {
             machs an
         }
         delay
    }

  4. #14
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    08.07.2006
    Ort
    Karlsruhe/München
    Alter
    34
    Beiträge
    587
    Lieber jagdfalke,

    ich denke er will erstmal das die Geschichte nur leuchtet^^

    Prinzipell, wenn es blinken soll dann einfach so wie es mein "Vorfalke" gesagt hat...

    Grüße

  5. #15
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    22.02.2005
    Beiträge
    385
    jaja auch logik will gelernt sein ich ich muss grad was sagen mit meinen blöden make files

  6. #16
    Benutzer Stammmitglied
    Registriert seit
    05.03.2007
    Beiträge
    43
    Genau, dann müsste der doch zuerst in der schleife warten und dann verspätet die LEDs anmachen. Tut er aber nicht.
    Warum muss ich PORTC auf High setzen, der hat doch damit nichts zu tun.

  7. #17
    Benutzer Stammmitglied
    Registriert seit
    05.03.2007
    Beiträge
    43
    Nach ein bischen rumprobieren hab ich nun gemerkt das die for-schleife nur einmal durchläuft und nicht beendet wird. Wie kann das sein?

  8. #18
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    22.02.2005
    Beiträge
    385
    das widerspricht sich doch oder? 1-Mal durchlaufen und nicht beendet werden? Geht nicht, außer so:
    Code:
    for(int i=0; i<10; i++) {
        //CODE IN DER FOR-SCHLEIFE
        while(1) {
        
        }
    }

  9. #19
    Benutzer Stammmitglied
    Registriert seit
    05.03.2007
    Beiträge
    43
    Weiß ich auch nicht. Zumindest führt er die Anweisungen nach der Schleife nicht aus.
    Muss ich beim hochladen irgendetwas beachten. Hab mir nämlich das Blinkbeispiel von https://www.roboternetz.de/wissen/in...ateien_für_AVR geholt. Und da leuchtet nur eine Lampe und es müsste eigentlich blinken.
    Hab ein STK500 mit einem Atmega8515. Kann man da was rumschalten?

  10. #20
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    22.02.2005
    Beiträge
    385
    poste mal deinen code, bin zwar auch kein C-Spezialist hab aber durch Java gelernt, dass es meist nur an Kleinigkeiten hängt. Also her mit dem Code.

Seite 2 von 3 ErsteErste 123 LetzteLetzte

Berechtigungen

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

Labornetzteil AliExpress