- Labornetzteil AliExpress         
Ergebnis 1 bis 3 von 3

Thema: Kann mir bitte jemand den Umgang mit _delay_ms() erklären ?

  1. #1
    Benutzer Stammmitglied
    Registriert seit
    18.08.2005
    Beiträge
    86

    Kann mir bitte jemand den Umgang mit _delay_ms() erklären ?

    Anzeige

    Powerstation Test
    ... ich raff diese Doku nicht!

    Hallo zusammen,

    ich sehe in der Doku nur Sonderzeichen ;o)

    Zumindenst werde ich nicht wirklich schlau, wie man das nun einsetzt.

    Ich würde gerne einfach einen Port einschalten und dann kurze Zeit später einen anderen.

    PORTB1 = 1;
    _delay_ms(??);
    PORTB2 = 1;

    Kann mir bitte jemand helfen, wie das geht ???

    Versuche schon seit über eine Stunde Hilfe zu bekommen, aber ausser dummen Sprüchen kommt leider nix.

    Danke und Grüße

    popi

  2. #2
    Erfahrener Benutzer Robotik Einstein
    Registriert seit
    06.02.2005
    Ort
    Hamburg
    Alter
    38
    Beiträge
    4.255
    eigentlich ist da nichts mystisches dran..
    Mit
    #include <avr/delay.h>
    die delay-Funktion einbinden, und dann halt zb mit
    _delay_ms(1);
    für ein Milisekunde Wartezeit aufrufen...

    Zu beachten: die Funktion ist nur für kurze Zeiten (irgendwas bei 65 Milisekunden oder so, schau in der Hilfe nach!) ausgelegt. Ich hab mir daher einfach ne kleine Funktion geschrieben, die delay_ms einige Male aufruft:
    Code:
    void warte(int loop)  //loop: wartezeit in ms 
    {
    	int i;
    	for(i=0;i<loop;i++) _delay_ms(1);
    }
    Nur deine Port-Befehle gehen so nicht... (oder hast du kein AVR-GCC???)

  3. #3
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    30.10.2005
    Ort
    Mönchengladbach
    Alter
    54
    Beiträge
    114
    Vorausgesetzt es ist doch AVR-GCC: vor dem #include muss noch die Taktfrequenz gesetzt werden:

    #define F_CPU 1000000UL // 1 MHz
    #include <avr/delay.h>

    Im Installationsverzeichnis vom AVR-GCC liegt eine PDF Datei "avr-libc-user-manual". Darin ist das erklärt.

Berechtigungen

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

12V Akku bauen