Delay functin

Gast #181964
Hi

ich arbeite zur Zeit mit dem STK500 einem ATMEGA32 und Programmers
Notepad mit GNU GCC. Meine Frage ist nun, gibt es eine vernünftige
Delay function für AVR GCC ?
ich habe in der avr libc keine Delay function gefunden.

schon mal im Vorraus danke für euere Hilfe
Gast #181966
die Delay.h ist nicht in meinem header file ordner
kann man die einzelnen header dateien der libc auch irgendwo getrennt
voneinander herunter laden ?
Gast #181967
Wenn Du ein aktuelles WinAVR bzw eine aktuelle avr-libc verwendest, dann
ist die delay.h ganz sicher im Includepath!

Einfach irgendwelche Header runterladen und nutzen dürfte, ohne die
passende Library dazu, in den meisten Fällen in die Hose gehen. Bei der
delay.h könnte es so grade noch klappen, ist aber nicht ratsam!
Gast #181968
irgendwie hab ich so meine Probleme mit der _delay_ms function aus der
delay.h hier mein code:

#include <avr/io.h>
#include <avr/delay.h>

int main(void)
{
  unsigned char i;
  int j;
  int count;
  double wait;


void _delay_ms(double __ms);

  DDRC=0xff;
  PORTC=0xff;
  count=0;     //count mit 0 initialisieren
  wait=60000;

  for(j=0; j<=7; j++)
  {

    cbi(PORTC,count); //LED aktivieren
    count++; // LED Nummer inkrementieren

    _delay_ms(250);

  }




  /* Endlosschleife */
  for (;;);

  return 0;
}

der compiler meint undefined reference to _delay_ms ich habe die
delay.h eingebunden wo liegt der Fehler ?
Gast #181969
Warum hast Du die folgende Zeile innerhalb von main?

   void _delay_ms(double __ms);

Die Funktion wird doch im Header-File deklariert, dann brauchst/darfst
Du es nicht noch mal  (und dazu unvollständig) tun.

Volkmar
Gast #181971
muss man im Makefile angeben welche header man benutzen möchte ?
ich dachte immer es reicht wenn man die headerfiles über include im
quellcode einbindet.
Gast #181972
"wenn ich die besagte Zeile auskommentiere kommt die Fehlermeldung
immer
noch."

Die Fehlermeldung. Aha. Welche?

Du musst im Makefile nur angeben, welche Sourcefiles (*.c/*.cpp)
verwendet werden - und gegebenenfalls, welche Libraries zusätzlich zu
den Standardlibraries zu linken sind.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 21 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.