www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik 8 bit Timer mit intrene Takt


Autor: sofi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,
ich benutze den µc ATtiny45(intrene Takt 8 MZ).
ich wollte eine Interrupt auslösen nach 10 ms.
ich habe den Prescaler ausgewählt, die umrechnung gemacht....
aber soll ich was extra einsetzen um die interene Takt zu benutzen,
oder ist ähnlich wie extren.

Danke.

Autor: Sebastian Heyn (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
woher der takt kommt ist egal, der timer wird glaube ich immer von der
aktiven taktquelle angesteuert.

Autor: Sebastian Heyn (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hast du das fusebit "DIVIDE CLOCK BY 8" gelöscht? sonst hast du nur
alle 80ms einen interrupt.
Hast du interrupts global enables und den timer gestartet?

Autor: sofi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ok, aber was soll ich machen um die interne takt zu aktivieren

Autor: sofi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ja den  Interrupts global enable und auch timer schon gemacht.
aber den fusbit habe ich ihm nicht gelöscht, wie mache ich das, und
kannst mir erklären warum?

Danke

Autor: Ronny (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Schau dir mal im Datenblatt das Kapitel 6 an ("System Clock and Clock
Options"),da steht genu drin,wie sich die Sache mit dem Takt
verhält.Bei Auslieferung des Tiny sollte auf jedenfall der interne Takt
aktiv sein (damit man den uC auch ohne Taktquelle programmieren kann).

Der Timer kann dann entweder vom aktiven Systemtakt den du für alles
verwendest (z.B 8MHz) betrieben werden oder von einem externen Takt den
du an T0 legst betrieben werden.Beim internen kannst du auch noch
zusätzlich einen Prescaler vorschalten.Auch dazu steht wieder jede
Menge im Datenblatt.

Sehr praktisch,das Atmel zu jedem AVR genau ein passendes Datenblatt
rausgibt,bei anderen (komplexeren) Controllern gibt´s oft nur ein über
viele PDFs verteiltes allgemeines Datenblatt wo man noch suchen
muss,was grad zum aktuell vorhandenen Derivat passt ;)

Autor: Sebastian Heyn (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
welche programmiersprache?

Autor: sofi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Danke euch.
ich programmiere mit C

Autor: Ronny (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bevor du an den Fuses rumstellst,lies dir lieber 3x das Datenblatt
vorher durch.Im Zweifelsfall lässt du erstmal alles so wie´s ist und
misst mal nach wie gross die Zeit zwischen den Interrupts ist und
veränderst dann deinen Prescaler entsprechend.

Die Fuses sind am Anfang ´ne beliebte Fehlerquelle....

Autor: Hannes Lux (hannes)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Den Clock-Prescaler kann man auch aus dem AVR-Programm heraus
einstellen, was eine (für den Unwissenden gefährliche)
Fusebit-Manipulation nicht erforderlich macht.

Schau dir im Datenblatt das Register für den Clock-Prescaler an, da
steht bei der Beschreibung der Bits auch dabei, wie man vorzugehen hat.
In Assembler ist das kein Problem, und wenn man mit C wirklich umgehen
kann (ich kann es nicht), sollte das auch kein Problem sein, das
erforderliche Timing beim Verstellen des Vorteilers einzuhalten.

Aber wie schon mehrfach erwähnt, ohne Datenblatt lesen (und verstehen)
wird das nix...

...

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.