mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Wait funktion


Autor: DUDE (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo

Ich suche ein WAIT() Funktion unter GCC. Gibt es was vertiges oder
muss ich mir selbst was programmieren. In CodeVision gabs
wait_a_second(time);
Zuerst hab ich versucht mit dem TIMER0 das Problem zu lösen. Ich hab 
einfach jedes mal wenn der TIMER in Overflow war etwas aktiviert. Leider 
ist der TIMER zu schnell
Gibt es irgendwo ein source Beispiel für eine UHR per AVR

Autor: Andreas Schwarz (andreas) (Admin) Benutzerseite Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

wenn du den Timer-Prescaler z.B. auf 1024 einstellst und einen passenden 
Quarz verwendest, dann kannst du mit dem richtigen Wert im 
Compare-Register sicher eine für ne Uhr geeignete Frequenz bekommen. Die 
genauen Werte musst du dir halt ausrechnen.

MfG
Andreas

Autor: Andreas Schwarz (andreas) (Admin) Benutzerseite Flattr this
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Eine Wait-Funktion gibt es im GCC leider nicht. Wenn du dir selber eine 
schreibst, musst du darauf achten, dass in der Schleife irgend ein 
Befehl steht (z.B. i++;), sonst wird die Schleife vom Compiler 
wegoptimiert.

Autor: Lars (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe mir dazu eine Kombination aus Hard/Software-Timer gebastelt. So 
wird es auch in einigen der im Web zu findenen Beispiele gemacht:
du nimmst einen der Timer und waehlst einen guenstigen Prescale-Faktor, 
so dass wenn du per software die von diesem Timer erzeugten "Impulse" 
(bzw. Overflows) zaehlst, du bei einem bestimmten Wert moeglichst genau 
den von dir gewuenschten Zeitintervall erreichst.

Ich habe das ganze in ASM realisiert, deshalb wird dir denke ich der 
Beispielcode nicht viel helfen. Ansonsten einfach Bescheid sagen.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.