woher weiß ein mikrocontroller,wie lang eine sekunde ist?

7 Antworten

Die meisten Mikrocontroller lassen sich wahlweise mit einem internen RC-Oszillator (ungenau, aber eben schon integriert, man muss kein zweites Bauteil kaufen und in die Schaltung löten) oder mit einem externen Quarz(-oszillator) betreiben (viel genauer)

Für Uhren ist der interne Oszillator auf jeden Fall unbrauchbar. Wenn der Mikrocontroller irgendwie über ein definiertes Protokoll mit der Außenwelt kommunizieren soll (z.B. RS232) ebenfalls, da die Timings stimmen müssen, damit die Übertragung klappt.

der steckdosen strom hat zb 60 schwingungen pro sec die uhr zählt diese schwingungen. dein gerät hat sicher einen andere frequenz als der strom. aber das gerät zählt wann genug schwingungen durch sind. und entscheidet dann das die sekunde forbei ist



CraftingMan  22.01.2017, 15:24

Ein Arduino wird nicht an Wechselspannung betrieben. Es werden aber durchaus Schwingungen gezählt, allerdings von einem integrierten oder externen Oszillator.

0

Nein, er weiss es eigentlich nicht. Eine synchrone CPU hat einen Arbeitstakt wie auf einer Galeere. Man lässt einen Zähler durchlaufen und nach dem x Durchläufen der Schleife Mal Taktzeit hat man die Zeit.

Das kann eine Sekunde sein oder ein anderer Wert. Es gibt noch andere Möglichkeiten, aber das ist eine der einfachsten.

da wird ein Zähler drin sein der die Takte zählt,
ähnlich wie bei x86 oder x64 Prozessoren der Time Stamp Counter

jeder microprozessor arbeitet mit einem bestimmten Takt (Frequenz), und wenn das dem Controller bekannt ist, ist es quasi nur eine mathematische formel, die er benutz um z.B eine Sekunde zu berechnen.