mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik nochmal 'ne Frage zum Timer


Autor: Andreas (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!

Auch wenn ich mir jetzt wahrscheinlich wieder anhören darf, ich würde
Antworten nicht lesen etc....

Also, zum Verständnis nochmal mein Problem:
ATtiny26, AD-Wandler wandelt eine Spannung zwischen 0-5V, der
entsprechende Wert wird dann in das Vergleichsregister OCR1A des Timers
1 geschrieben.
Dieser Timer zählt dann hoch bis zur Wertegleichheit, dann startet mein
Hauptprogramm.
ist die Spannung 0V habe ich keine Verzögerung, ist sie 5V habe ich
maximale Verzögerung erreicht.
Zeitlich sollen 5V 30 Sekunden bilden.
Der ATtiny26 wird mit 4MHz getaktet.
Der maximale Teiler des Timer beträgt 16384.
Macht: 244,141 Hz.
Pro Zählschritt also: 4,1ms.
Da der AD-Wandler nur ein 8bit Wandler ist, habe ich als maximale Zahl
0xFF bzw. 255 für 5V.
Der Timer braucht bei 244,141Hz genau 1,044 s um Gleichheit zu
erreichen.
Er sollte aber rund 30 Sekunden brauchen.

Bevor es jetzt wieder heißt: Haben doch schon geantwortet...
...ich bin aber trotzdem nicht schlauer, weil µC für mich Neuland
sind!
Soll ich jetzt den Timer in einer Schleife 30mal zählen lassen, oder
kann man den Timer separat takten mit einer anderen Frequenz oder kann
man den Teiler zusätzlich ändern oder...
Das Datenblatt gibt just in diesem Punkt nicht viel her!
Sonst würde ich auch nicht hier posten, um von Euch  "beraten" zu
werden.

Gruß,
Andreas

Autor: Alisa 1387 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wie, er sollte 30 Sekunden brauchen?

Kannst Du ihn nicht einfach per Timer-Interrupt alle 30 Sekunden ne
Single-Conversation triggern?

Autor: dave (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
1. warum nen neuer Thread
2. versuch es zu verstehen. Wenn irgendwas nicht klar ist, dann frag
das, aber nicht "ich habs nicht verstanden"..
3. Manche Timer (Asynchron), meist Timer2 können durch nen externen
Quarz getaktet werden (32KHz optimiert), aber das bringt dich nicht
weiter.

Denk einfach logisch.

Du hast ne Uhr, die tickt in 30sek 256 mal. Wie würdeste da dann den
Wert, den du auf nem Zettel stehen hast (sagen wir 123) abmessen?

dave

(Schade, unser Pferdchen wurde gelöscht ;))
gleiche Meinung
Duck und weg G

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.