Uhr programmieren AT90S8535

Gast #349245
Lesenswert?
• ▲
▼
hi

wie programmier ich am einfachsten eine uhr? hab gedacht mit 3
Variablen (sek min std) und pro sekunde die sek eins hochzählen bei
mehr als 59 dann eben min um eins erhöhen usw.

nur wie bekomm ich einen 1sekunden takt? hab gedacht mit nem quarz so
um ca. 1khz den am interuppt eingang anlegen dann ne zählervariable und
wenn die bei 1000 ist sek um eins erhöhen.

was meint ihr bessere ideen oder ist die idee schon gut?

mfg

Christian
Gast #349249
Lesenswert?
• ▲
▼
hi

mir reicht es auf 10 minuten /jahr genau locker.

DCF77 ist denk ich mal zu kompliziert.

@akw

meinst du ohne extra quarz einfach mit nem timer und das klappt und
wird rel. genau? wie genau wird es denn in etwa?

mfg

chrisi01
Gast #349251
Lesenswert?
• ▲
▼
hi

aber dann muss ich ja jede flanke zählen bis 4 millionen und bei nen
8mhz controller ist die halbe leistung des controller schon
"verbraten" oder gibts da nen schaltungstechnischen trick?

ich mein der controller muss ja bei jeden 2 takt dann in die
interuptfunktion

reichen würde die genauigkeit LOCKER

mfg

Christian
Gast #349252
Lesenswert?
• ▲
▼
Warum Flanken zählen? Du hast deinen Controller mit 4 Mhz. Dann hast du
nen Timer der hochzählt. Der Quarz kommt nicht an nen Interupt. Du hast
ja beim Timer nem Prescaler, dein 16 Bit Timer geht nur bis zu ner
gewissen Zahl und dann stellst du den Timer per Preset schon so hoch,
dass es bis zum Overflow genau ne Sekunde dauert und zählst dann hoch.

Hoffe das war verständlich ^^

gruß
Gast #349253
Lesenswert?
• ▲
▼
Hier noch was von mir:

On Timer1 Sekunde_plus
Config Timer1 = Timer, Prescale = 64
Enable Timer1
Enable Interrupts
Timer1 = 49910

Zuerst Prescaler auf 64 heißt bei nem Takt von 1 Mhz 1562,5.
Dann stellt man den Timer auf 49910 ein, dann dauerts bis zum Overflow
ungefähr ne Sekunde.

Hoffe du weißt was ich mein!

gruß
Gast #349254
Lesenswert?
• ▲
▼
hi

ich denke das wärs wenn ich schonmal mit timer gearbeitet hätte ;)

ich hab mitlerweile so ziemlich alles verwendet aber timer hatten wir
noch nicht in der schule...

vllt. kannst du es nochmal für dummis erklären die zwar von uC Ahnung
haben aber och nie mit timer gearbeitet haben :)

notfalls wart ich noch 2 Wochen und dann werd ich das schon noch
erfahren in der Schule :)

mfg

Christian

Antwort schreiben

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.

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.