Hallo guten, ich finde keine Datenblätter zu Arduinos wo drinne steht ob eine RTC vorhanden ist oder nicht. Natürlich kann man einen externen RTC dazukaufen. Sollten die ATmegas im Arduino (oder ARMs) RTCs beinhalten, könnte man sie mit einer externen Batterie immer am laufen halten? Vielen Danke, schönen Tag noch: Günther Kuckmal
Datenblätter... Kann man machen, wenn man viel zeit tot zu schlagen hat... Oder man fragt halt jemanden... ;) Die teensy 3.2 mit den cortex M4 chips haben zB rtc
Günther Kuckmal schrieb: > Arduinos Die Arduinos haben keine RTC. Man kann an den ATmega aber irgendwo einen Uhrenquarz dran hängen und diesen als RTC verwenden. Ein externes modul ist der Weg des geringsten widerstands. Ich würde aber vom DS1307 abraten.
Oder eventuell auf ein DCF77-Modul umsteigen. https://de.wikipedia.org/wiki/DCF77 http://www.ebay.de/itm/DCF-77-MODUL-EMPFANGSMODUL-FUNKUHR-EMPFANGER-FUNKEMPFANGER-ANTENNE-/161873945980?hash=item25b070657c:g:41YAAOSwo6lWM03i
rxlo schrieb: > http://www.ebay.de/itm/DCF-77-MODUL-EMPFANGSMODUL-FUNKUHR-EMPFANGER-FUNKEMPFANGER-ANTENNE-/161873945980?hash=item25b070657c:g:41YAAOSwo6lWM03i Klasse! Einfach das Bild von der Pollin-Seite klauen, das Ding bei Pollin für 5,45 EUR kaufen und dann bei eBay mit dem spiegelverkehrten Pollin-Bild für 10,89 EUR wieder verkaufen! Das nenne ich mal Abzocke! Hier der Link auf das Pollin-Teil: http://www.pollin.de/shop/dt/NTQ5OTgxOTk-/Bausaetze_Module/Module/DCF_Empfangsmodul_DCF1.html Kostet die Hälfte und ist identisch.
:
Bearbeitet durch Moderator
Frank M. schrieb: > rxlo schrieb: > >> > http://www.ebay.de/itm/DCF-77-MODUL-EMPFANGSMODUL-FUNKUHR-EMPFANGER-FUNKEMPFANGER-ANTENNE-/161873945980?hash=item25b070657c:g:41YAAOSwo6lWM03i > > Klasse! Einfach das Bild von der Pollin-Seite klauen, das Ding bei > Pollin für 5,45 EUR kaufen und dann bei eBay mit dem spiegelverkehrten > Pollin-Bild für 10,89 EUR wieder verkaufen! > > Das nenne ich mal Abzocke! Ich nenne das Geschäftstüchtig. Pollin kennt nicht jeder, eBay schon. Und im Vertrauen: Jeder Händler kauft billiger ein, als er verkauft ;-)
Ok danke ! Ja dann wahrscheinlich den leichten weg gehen und extern (nicht DS1307 ). Jetzt trotzdem nochmal die Frage: Die ATmegas zb 328p haben doch internen "RTC" wenn man da eine Batterie dran macht , würde das irgendwie auch funktionieren , oder ist das nicht sinnvoll? DCF77 -- Ist ganz ok aber die Uhrzeit muss ja immer abgefragt werden und wenn der AVR mal aus ist , dann können die Signal nicht mehr interpretiert werden und somit hat man auch bei Einschalten des AVRs keine Korrekte Zeit, sondern muss erst etwas warten -- Denke ich.. Vielen Dank, schönen Tag noch.
Harald Blech schrieb: > Jetzt trotzdem nochmal die Frage: > Die ATmegas zb 328p haben doch internen "RTC" wenn man da eine Batterie > dran macht , würde das irgendwie auch funktionieren , oder ist das nicht > sinnvoll? Nein, die ATmegas haben keinen internen RTC. Die haben einen internen Oszillator, der so ungenau ist, dass Deine Uhr schon nach einem Tag um mehr als eine Minute falschläuft. > DCF77 Zu viel Aufwand. Such bei eBay nach "DS3231" und schnapp Dir das Modul für 4 EUR. Damit musst Du nur 2x im Jahr die Uhrzeit stellen - nämlich zur Umstellung auf Sommer- und Winterzeit. Oder Du korrigierst auch das in Software.
:
Bearbeitet durch Moderator
Frank M. schrieb: > Nein, die ATmegas haben keinen internen RTC. Die haben einen internen > Oszillator, der so ungenau ist, dass Deine Uhr schon nach einem Tag um > mehr als eine Minute falschläuft. Natürlich haben sie eine RTC. Man braucht nur einen Uhrenquarz. Und das braucht man bei den meisten externen RTCs auch. Wofür also 4€ ausgeben, wenn es ein paar cent für den Quarz schon tun?
avr schrieb: > Natürlich haben sie eine RTC. Naja, unter RTC verstehe ich was anderes. Die AVRs haben nur einen Zähler, den Du durch einen Uhrenquartz laufen lassen kannst. Aber "richtige" RTCs haben mehr als einen Zähler, nämlich einen vollständigen Kalender. Das Modul, was ich empfohlen habe, hat auch noch direkt eine Batterie drauf, die bis zu 10 Jahre hält. Da kannst Du Deinen Atmega ruhig vom Strom ziehen, die RTC läuft weiter.
:
Bearbeitet durch Moderator
Es gibt RTC mit und ohne Kalender. Der definiert aber nicht ob es sich um eine RTC handelt oder nicht.
Frank M. schrieb: > Naja, unter RTC verstehe ich was anderes. Die AVRs haben nur einen > Zähler, den Du durch einen Uhrenquartz laufen lassen kannst. Aber > "richtige" RTCs haben mehr als einen Zähler, nämlich einen vollständigen > Kalender. Der Kalender hat mich zumindest schon immer gestört. Wenn ich eine Unixzeit haben möchte muss ich die ganzen BCD-kodierten Zahlen erst wieder zusammenpfriemeln. Die Formatierung braucht man nur bei lesbaren Ausgaben und dafür ist immer genug Rechenzeit vorhanden. Der einzige Vorteil ist, dass man sich nicht um Wochentage oder so kümmern muss. Aber die Algorithmen dafür sind weder lang noch schwer. Und RTC heißt Real Time Clock, also Echtzeituhr. Das sagt erstmal nichts über das Format aus. > Das Modul, was ich empfohlen habe, hat auch noch direkt eine > Batterie drauf, die bis zu 10 Jahre hält. Da kannst Du Deinen Atmega > ruhig vom Strom ziehen, die RTC läuft weiter. Du kannst den Atmega auch zusätzlich mit einer Batterie versorgen, welche die Stromversorgung übernehmen kann. Der Stromverbrauch im Sleep ist bei den neueren < 1µA.
Cyblord -. schrieb: > Es gibt RTC mit und ohne Kalender. Der definiert aber nicht ob es sich > um eine RTC handelt oder nicht. Atmel nennt seinen RTC "Real Time Counter", siehe beliebiges Atmel-Datenblatt. Die zutreffendere Bedeutung der Abkürzung RTC ist jedoch "Real Time Clock" - auf deutsch "Echtzeituhr". Und darunter versteht jeder Depp mehr als einen Zähler.
:
Bearbeitet durch Moderator
Frank M. schrieb: > Cyblord -. schrieb: >> Es gibt RTC mit und ohne Kalender. Der definiert aber nicht ob es sich >> um eine RTC handelt oder nicht. > > Atmel nennt seinen RTC "Real Time Counter", siehe beliebiges > Atmel-Datenblatt. Die zutreffendere Bedeutung der Abkürzung RTC ist > jedoch "Real Time Clock" - auf deutsch "Echtzeituhr". Und darunter > versteht jeder Depp mehr als einen Zähler. Nein ich denke da bist du der einzige Depp der das so sieht. Es soll sogar (Echtzeit-)Uhren geben, die hängen sich die Leute an Wände und können nur bis 43200 Zählen und fangen dann wieder bei 0 an.
:
Bearbeitet durch User
avr schrieb: > Du kannst den Atmega auch zusätzlich mit einer Batterie versorgen, > welche die Stromversorgung übernehmen kann. Der Stromverbrauch im Sleep > ist bei den neueren < 1µA. Ich weiß das, Du weißt das. Und jetzt erklär das dem TO, wie's geht. Der hat nämlich keine Ahnung. Ausserdem kommt die Uhrenquarz-Methode am Atmega lange nicht mit der temperaturkompensierten Genauigkeit einer DS3132 mit.
:
Bearbeitet durch Moderator
Frank M. schrieb: > Und darunter > versteht jeder Depp mehr als einen Zähler. Schön, dann bin ich wohl der Depp, der lieber 64bit RTCs hätte. Warum muss man denn für unser bescheuertes Zeitformat Silizium verschwenden? Ein Depp ist eher der, der sich die Grenzen 24:60:60 ausgedacht hat. Nochmal drei Gründe für dich: - Eine Uhr sagt nichts über das Format aus. - Wenn man Zeiten in µCs häufiger braucht, dann braucht man sie als 32-/64-Bit Variablen. - Atmel nennt I²C auch TWI. Abweichung von normalen Namen, sind ihnen wohl egal (bei I²C waren es auch noch Lizenzkosten). Aber wenn man einmal abweicht...
avr schrieb: > Warum muss man denn für unser bescheuertes Zeitformat Silizium > verschwenden? Weil Du Deinen ATmega mit Uhrenquarz viel öfter nachstellen musst als eine temperaturkompensierende hochpräzise RTC wie die DS3231? > - Wenn man Zeiten in µCs häufiger braucht, dann braucht man sie als > 32-/64-Bit Variablen. Wo ist das Problem? Beim Einschalten des ATmegas die Uhrzeit von der RTC holen, in Sekunden seit 1.1.1970 (oder was weiss ich) umrechnen und anschließend den Sekundentakt am Ausgang der RTC über einen PCINT mitzählen. Beim Ausschalten des ATmegas ist NICHTS zu beachten. So einfach ist das.
Frank M. schrieb: > Weil Du Deinen ATmega mit Uhrenquarz viel öfter nachstellen musst als > eine temperaturkompensierende hochpräzise RTC wie die DS3231? Für welches Gerät braucht man so eine Genauigkeit? Solange das keine Armbanduhr ist, reicht die interne RTC bei weitem aus. Und selbst ohne Temperatur Frank M. schrieb: > Wo ist das Problem? Ganz einfach: Deine komische RTC: > Beim Einschalten des ATmegas die Uhrzeit von der RTC holen, in Sekunden > seit 1.1.1970 (oder was weiss ich) umrechnen und anschließend den > Sekundentakt am Ausgang der RTC über einen PCINT mitzählen. Beim > Ausschalten des ATmegas ist NICHTS zu beachten. Interne RTC: Beim Einschalten nichts machen, beim auschalten nichts machen. Wenn das Programm nichts zu tun hat in den Sleep gehen. Ich hab noch keine externe RTC gebraucht. Viele Mikrocontroller bieten eine RTC. Und wenn dir das nicht reicht, kannst du auch jede Minute mit dem Mikrocontroller die Temperatur messen und die RTC entsprechend kalibrieren (Damit sind sehr einfach +-10ppm machbar, eher weniger). Im Normalfall braucht man solche RTCs einfach nicht.
Frank M. schrieb: > Such bei eBay nach "DS3231" und schnapp Dir das Modul für 4 EUR. Eh, du meinst wohl eher 1€ bei ebay, auf Ali wird es wohl noch billiger sein. Bei dem Anbieter war auch die Batterie dabei, zu mindestens bei mir. http://www.ebay.de/itm/DS3231-AT24C32-High-Precision-Clock-Module-IIC-Module-Memory-Module-/171280297414?hash=item27e119edc6:g:TGYAAOxyaTxTV8t~
avr schrieb: > Wenn man Zeiten in µCs häufiger braucht, dann braucht man sie als > 32-/64-Bit Variablen. Das ist nicht bei jedem so. Ich könnte mir vorstellen, dass nicht jeder auf einem 8-bitter das ganze in einer 64-bit Unixzeit umrechnet (32-bit ist ja nicht besonders zukunftssicher).
avr schrieb: > Für welches Gerät braucht man so eine Genauigkeit? Solange das keine > Armbanduhr ist, reicht die interne RTC bei weitem aus. Wenn Du jetzt schon so weit bist: warum nimmst Du dann nicht einfach den Takt am µC selbst? Siehe: AVR - Die genaue Sekunde / RTC Das reicht für Deine Anwendung vollkommen. Aber glaubst Du, dass der Zähler dem TO reicht, wenn er nach einer RTC fragt? Kannst Du Gedanken lesen, was der TO mit der RTC vorhat? Vielleicht reicht dem TO tatsächlich ein Zähler. In diesem Fall hast Du die hellseherische Fähigkeit, dass Deine Meinung über Uhrenformate auch die Meinung des TOs ist. Wenn dem so ist, erkläre dem TO den Sleep-Mode und was dafür alles zu beachten ist. Zum Beispiel, dass die AVRs im Sleep Mode den Uhrenquarz am Timer 2 betreiben, welcher nur ein 8 Bit Timer ist und dementsprechend ungenau geht. Oder dass bei Abziehen der Stromversorgung der Zähler trotz Sleep-Mode stehenbleibt. Upps. Ist der Zähler dem TO zuwenig, dann kann man ihn einfach auf fertige DS3231-Libs hinweisen und er kann was lernen, wenn er das will. Aber bis dahin wirds noch ein steiniger Weg, denn ich vermute, dass beim TO das Basiswissen noch viel zu gering ist, um das eine oder das andere umzusetzen.
:
Bearbeitet durch Moderator
Frank M. schrieb: > Das reicht für Deine Anwendung vollkommen. Wer sagt das? > Aber glaubst Du, dass der Zähler dem TO reicht, wenn er nach einer RTC > fragt? Kannst Du Gedanken lesen, was der TO mit der RTC vorhat? Wenn man eine RTC braucht, dann geht es in 99% der Fälle um Batteriebetriebene Projekte. Der µC-Takt braucht idR einfach zu viel Strom. > Vielleicht reicht dem TO tatsächlich ein Zähler. In diesem Fall hast Du > die hellseherische Fähigkeit, dass Deine Meinung über Uhrenformate > auch die Meinung des TOs ist. Darum geht es nicht. Es ging darum dass DU behauptest hast, das die Atmegas keine RTC haben. Und das ist Käse. > Wenn dem so ist, erkläre dem TO den Sleep-Mode und was dafür alles zu > beachten ist. Das steht im Datenblatt. > Zum Beispiel, dass die AVRs im Sleep Mode den Uhrenquarz > am Timer 2 betreiben, welcher nur ein 8 Bit Timer ist Das steht auch im Datenblatt. > und > dementsprechend ungenau geht. Und das ist der nächste Käse, der von dir kommt. Der Timer geht nicht ungenau. Und die Bits von einem Timer haben absolut nichts mit Genauigkeit zu tun. Das hängt alles von der Software ab. > Oder dass bei Abziehen der Stromversorgung > der Zähler trotz Sleep-Mode stehenbleibt. Upps. Sehr komisch. Wenn man erwartet, dass der Timer ohne Stromversorgung weiterläuft, dann hat man vielleicht das falsche Hobby gewählt. Seltsamerweise steht das auch im Datenblatt. Kann sein, dass es für den Baustein von dir fertige Bibliotheken gibt. Da kenne ich mich nicht aus und habe es auch nicht vor. Ich suche ICs auch nicht nach Bibliotheken aus. Ich glaube auch nicht, dass Arduino Zeitersparnisse bringt, da a) die meisten Bibliotheken sowieso nicht ausreichen und durch eigene ersetzt werden müssen. b) die Zeit für die Abstraktionsschicht nur ein Bruchteil der gesamten Softwareentwicklung ausmacht. Aber das ist ein anderes Thema. Man kann eine externe RTC nutzen oder die interne. Softwareseitig macht das kaum einen Unterschied. Und dafür, dass die RTC aus China auch wirklich unter +-4ppm bleibt, würde ich nicht meine Hand ins Feuer legen. Frank M. schrieb: > Aber bis dahin wirds noch ein steiniger Weg, denn ich vermute, dass beim > TO das Basiswissen noch viel zu gering ist, um das eine oder das andere > umzusetzen. Dafür ist der Timer doch ideal. Man muss ja nicht gleich alles umsetzen. Im Gegensatz zu der fertigen RTC, kann man sich da Schritt für Schritt herantasten: - Timer initialisiern mit Interrupt - auf Asynchron umstellen - Sleep implementieren - Überlauf im Interrupt behandeln Wenn bei der I²C-Kommunikation dagegen etwas nicht funktioniert, steht man mit der Bibliothek erst mal im Regen.
Günther Kuckmal schrieb: > Hallo guten, > ich finde keine Datenblätter zu Arduinos wo drinne steht ob eine RTC > vorhanden ist oder nicht. Natürlich kann man einen externen RTC > dazukaufen. > Sollten die ATmegas im Arduino (oder ARMs) RTCs beinhalten, könnte man > sie mit einer externen Batterie immer am laufen halten? Alle Arduino-Boards mit AVR Atmega-Controllern haben KEINE eingebaute RTC. Die in den "Arduino DUE" und "Arduino ZERO" und "Arduino MKR1000" verbauten Controller haben eine eingebaute RTC, die Du nutzen kannst. Allerdings hat keines der Boards eine Backup-Batteriepufferung für diese RTC on-board, so dass Du die Backup-Batteriepuffereung selbst an das Board dranlöten müßtest, und damit ergibt sich gegenüber dem Anschluß eines externen RTC-Moduls eigentlich dann auch kein Vorteil mehr.
Jürgen S. schrieb: > Alle Arduino-Boards mit AVR Atmega-Controllern haben KEINE eingebaute > RTC. Der nächste der keine Datenblätter lesen kann. Der Atmega168 hat natürlich eine RTC, wie auch der Atmega2560. Wie wärs einfach mal mit Nachlesen, bevor hier wieder mal Unwahrheiten verbreitet werden? Es gibt Meinungen, über die kann man sich streiten. Aber nicht über die Tatsache, dass viele Atmegas eine RTC haben. Und nur weil man etwas in GROßBUCHSTABEN schreibt wird es nicht wahrer.
Günther Kuckmal schrieb: > Sollten die ATmegas im Arduino (oder ARMs) RTCs beinhalten, könnte man > sie mit einer externen Batterie immer am laufen halten? Klar. Hier ein Beispiel: http://www.leonardomiliani.com/en/2012/micrologio-un-micro-orologio-con-un-atmega328p/
avr schrieb: > Der nächste der keine Datenblätter lesen kann. Der Atmega168 hat > natürlich eine RTC, wie auch der Atmega2560. Ja, Schlauberger. Beim 328er ist an den Anschlüssen der 16MHz-Quarz angeschlossen. Beim 2560 wäre ein Uhrenquarz zwar möglich, ist aber nicht bestückt.
avr schrieb: > Der Atmega168 hat natürlich eine RTC, Ja, er hat einen Real Time Counter, aber keine Real Time Clock. Der TO alias Günther Kuckmal alias Harald Blech will aber eine Real Time Clock: Beitrag "Re: welcher banana PI hat einen RTC" Damit ist Deine ganze Argumentation hinfällig und für mich hier EOD.
Frank M. schrieb: > avr schrieb: >> Der Atmega168 hat natürlich eine RTC, > > Ja, er hat einen Real Time Counter, aber keine Real Time Clock. Der TO > alias Günther Kuckmal alias Harald Blech will aber eine Real Time Clock: Wir sehen also, nur weil jemand bunte Uhren bastlen kann, heißt das noch nicht dass er Ahnung von RTCs hat. Ob nun ein flacher Counter oder einzelne Register für Stunden, Minute, Sekunde, Tag usw. ist mathematisch praktisch kein Unterschied. Außerdem ist die Umrechnung Counter -> Uhrzeit/Datum immer einfacher als die Rückrechnung. Und Zeit/Datumsdifferenzen lassen sich so auch viel einfacher rechnen. Dass eine Uhr keinen Kalender braucht, um sich Uhr nennen zu dürfen, hat inzwischen ja wohl sogar der Frank eingesehen. Immerhin. Richtig wäre deine Aussage, wenn der TE explizit einen Kalender fordern würde (was er implizit wahrscheinlich tut). Wenn man das nicht in SW machen will, dann muss man zu einer externen RTC mit Kalenderfunktion greifen. Ist doch nicht so schwer. Dazu muss man nicht allen anderen Bausteinen ihre RTC in Abrede stellen.
:
Bearbeitet durch User
Cyblord -. schrieb: > Ob nun ein flacher Counter oder einzelne Register für Stunden, Minute, > Sekunde, Tag usw. ist mathematisch praktisch kein Unterschied. Es kommt immer auf die Anwendung an. Will ich eine Stopuhr, nehme ich einen Real Time Counter. Will ich mir eine Uhr an die Wand hängen, nehme ich eine Real Time Clock. > Außerdem > ist die Umrechnung Counter -> Uhrzeit/Datum immer einfacher als die > Rückrechnung. Wenn ich mir eine Uhr an die Wand hänge und eine Real Time Clock verwende, brauche ich weder die Umrechnung Counter -> Uhrzeit/Datum noch die Rückrechnung - einfach weil ich überhaupt keinen Counter brauche. Ich hab doch eine Clock :-) Daher nochmal: Es kommt auf die Anwendung an, siehe oben. > Dass eine Uhr keinen Kalender braucht, um sich Uhr nennen zu dürfen, hat > inzwischen ja wohl sogar der Frank eingesehen. Naja, wenn Du Sommer-/Winterzeit-Umrechnung machen willst, ist ein Kalender schon ganz praktisch. Die neue WordClock zeigt das Datum mittlerweile auch in Laufschrift auf dem Display an :-) P.S. Mit welchem Namen darf ich Dich denn ansprechen?
Frank M. schrieb: > Naja, wenn Du Sommer-/Winterzeit-Umrechnung machen willst, ist ein > Kalender schon ganz praktisch. Richtig. Aber auch Uhren ohne Zeit Umstellung bleiben Uhren. Es geht doch nur darum dass du pauschal behauptet hast, Bausteine mit reinem RT-COUNTER sind keine RT-CLOCKS. Und das stimmt eben nicht. > P.S. > Mit welchem Namen darf ich Dich denn ansprechen? Steht doch oben, cyblord, kannst du nicht lesen?
:
Bearbeitet durch User
Frank M. schrieb: > Naja, wenn Du Sommer-/Winterzeit-Umrechnung machen willst, ist ein > Kalender schon ganz praktisch. Der Counter tut's dann aber genauso, denn bei dem ist die Zeit wenigstens eindeutig. Die Kalenderdarstellung 30. Oktober 2016, 02:35:10 ist dagegen nicht eindeutig, die passt auf zwei Zeitpunkte. (Erst durch zusätzliche Angabe, ob die Zeit in MEZ oder MESZ ist, wäre sie wieder eindeutig.)
Jörg W. schrieb: > Der Counter tut's dann aber genauso, denn bei dem ist die Zeit > wenigstens eindeutig. Stimmt. Deshalb laufen RTCs in Unix-/Linux-Büchsen auch meist in UTC. Wobei ich hier "Real Time Clocks" meine ;-)
:
Bearbeitet durch Moderator
Cyblord -. schrieb: > Es geht doch nur darum dass du pauschal behauptet hast, Bausteine mit > reinem RT-COUNTER sind keine RT-CLOCKS. Und das stimmt eben nicht. Und daran geilst Du Dich jetzt auf? Ich glaube, wir wissen beide, was wir meinen. Ich habe nur auf den allgemeinen Sprachgebrauch hingewiesen. Wenn Du nach "RTC" googlest, bekommst Du Links auf Uhrenbausteine, nicht auf Zähler. Aber ist doch egal. Ja, Du hast recht. Zufrieden?
junx ihr seid sooooo weit vom thema weg, dass ein MODERATOR bei sowas eigentlich zur ordnung rufen müsste... but that's none of my business...
:
Bearbeitet durch User
Frank M. schrieb: > Cyblord -. schrieb: >> Es geht doch nur darum dass du pauschal behauptet hast, Bausteine mit >> reinem RT-COUNTER sind keine RT-CLOCKS. Und das stimmt eben nicht. > > Und daran geilst Du Dich jetzt auf? Nein ich korrigiere dich, weil du falsche Dinge behauptest. > Ich glaube, wir wissen beide, was > wir meinen. Nein. Eine korrekte Terminologie ist wichtig. Und einem Anfänger zu sagen, sein Controller hätte keine RTC obwohl er doch eine hat, ist einfach das komplette Gegenteil der Realität. > Aber ist doch egal. Ja, Du hast recht. Zufrieden? Typischer Loser-Abgang wenn man sachlich verloren hat. Ich war schon vorher sehr zufrieden, ist lasse nur deine falschen Behauptungen nicht einfach unwidersprochen stehen. Wenn DU damit zufrieden gewesen wärst, dann wäre die Diskussion schon lange vorbei aber beharrst auf deiner falschen Terminologie wie ein bockiges Kleinkind.
:
Bearbeitet durch User
Ich habe mich erst mit dem Thema befasst und eine Testplatine gebaut die einen Atmega328p im Ascnchronen Timer2 und eine ds3231 mitloggt. Für den Arduino Stil ist die intern in Software umgesetzte RTC über ein Uhrenquarz schon ein wenig Tricky.. so 1 Sekunde je nach Temperatur(ohne Kompensation) kann das schon mal in einigen stunden abweichen während die ds3231 mit Knopfzelle schön abgekoppelt ist, nur bei Bedarf synchronisiert wird und schonmal auf einige Wochen Sekundengenau geht.. auf einige Monate Minutengenau. Jetzt werden wieder welche Ihren Grips beisteuern wollen was alles geht und wie genau das gehen kann, aber ich glaube 3/4 weiß das und die anderen interessierts nicht. Wenn jemand Code zur Verfügung stellt das bewiesen werden kann das der Atmega als RTC mit nem HAuptprogramm drauf Wochenlang Sekundengenau läuft immer her damit!
Philipp K. schrieb: > so 1 Sekunde je nach Temperatur(ohne Kompensation) kann das schon mal in > einigen stunden abweichen Das ist ein schlechter Wert. Selbst die billigsten 32-kHz-Quarze sind mit ±20 ppm spezifiziert, das wäre eine Sekunde auf knapp 14 Stunden – aber das sollte nicht die Norm, sondern der Grenzfall sein. Die meisten sind besser. Ich habe eine Uhr mit freilaufendem Quarz an einem ATmega88P, die wird nur bei der Winterzeitumstellung zweimal im Jahr gestellt. Bis dahin akkumuliert sie vielleicht so zwei Minuten an Fehler, das wären etwa 8 ppm. Das ist ohne weitere Korrekturmaßnahmen (wie unten), nur der Lastkondensator so einigermaßen passend ausgesucht. Die Uhr wird normalerweise vom Netz betrieben, weil die LEDs viel Strom brauchen, aber es gibt eine Pufferbatterie (CR2032), die den Timer bei Stromausfall weiterticken lässt, sodass sie die Uhrzeit hält. Genügt das nun schon für den Begriff „RTC“ oder nicht? ;-) > Wenn jemand Code zur Verfügung stellt das bewiesen werden kann das der > Atmega als RTC mit nem HAuptprogramm drauf Wochenlang Sekundengenau > läuft immer her damit! Der Klassiker: AVR - Die genaue Sekunde / RTC p.s.: Dass die fertigen RTC-ICs ihren Sinn und Nutzen haben, soll natürlich damit keinesfalls in Abrede gestellt werden.
:
Bearbeitet durch Moderator
Ich habe sogar Teile aus dem Beispiel für die genaue Sekunde übernommen und einen Quarz aus dem Atmel App Note verbaut. Was ich noch auf dem Zettel habe ist die Grundabweichung gegen ein 16MHz Quarz zu messen um die schonmal zu korrigieren.. Wobei mein Test auf einen Aussentemperaturbereich ausgeweitet ist.
Philipp K. schrieb: > Was ich noch auf dem Zettel habe ist die Grundabweichung gegen ein 16MHz > Quarz zu messen um die schonmal zu korrigieren. Die sind meist schlechter spezifiziert. > Wobei mein Test auf > einen Aussentemperaturbereich ausgeweitet ist. Gut, Temperaturgang habe ich mir jetzt nicht angeguckt. In der Armbanduhr haben die 32er ja ihren körpereigenen Thermostaten. ;-) Die genannte LED-Uhr steht auch im Zimmer. Sind die externen RTCs eigentlich temperaturkompensiert?
Jörg W. schrieb: > Sind die externen RTCs eigentlich temperaturkompensiert? Bei Dallas gibts zum Beispiel den ds1307 mit externem Quarz und den DS3231 mit internem und Temperatur Kompensation.. Den Ds1307 muss man schon öfter nachstellen.. Der DS3231 ist schon länger genau.
Cyblord -. schrieb: > Nein. Eine korrekte Terminologie ist wichtig. Wenn Dir die Terminologie wichtig ist, dann schreibe auch eine*n* RTC, weil es der Real Time Counter ist. Du schreibst aber eine RTC, was den Eindruck erweckt, Du meintest eine Real Time Clock. > Und einem Anfänger zu sagen, sein Controller hätte keine RTC obwohl er > doch eine hat, ist einfach das komplette Gegenteil der Realität. Atmel schreibt selbst Real Time Counter und nicht Real Time Clock, schau in ein beliebiges ATmega Datenblatt. Denn wie ich schon sagte: Im allgmeinen steht RTC für einen Uhrenbaustein. Leider hast Du das Argument komplett ignoriert. >> Aber ist doch egal. Ja, Du hast recht. Zufrieden? > Typischer Loser-Abgang wenn man sachlich verloren hat. Typische Loser-Antwort eines zozial inkompetenten Menschen, der ausschließlich nur beleidigen kann: Cyblord -. schrieb: > Nein ich denke da bist du der einzige Depp der das so sieht. Cyblord -. schrieb: > Steht doch oben, cyblord, kannst du nicht lesen? Cyblord -. schrieb: > Wir sehen also, nur weil jemand bunte Uhren bastlen kann, heißt das noch > nicht dass er Ahnung von RTCs hat. Du hast damit verloren, nämlich meinen Respekt vor Dir. Ich weiß, das geht Dir am Allerwertesten vorbei. Macht nix, passt zu Dir.
Frank M. schrieb: > Atmel schreibt selbst Real Time Counter und nicht Real Time Clock, schau > in ein beliebiges ATmega Datenblatt. Sie nennen es aber durchweg RTC, auch in diesen Datenblättern. Damit ist die Abkürzung schlicht nicht eindeutig. Um die Konfusion dann noch zu vergrößern, in den neueren ARMs (SAMD und Konsorten) heißt das Teil auch RTC, übersetzt als Real Time Counter, kann aber optional auch im Kalendermodus konfiguriert werden … Über die deutschen Artikel englischer Begriffe kann man sich vortrefflich streiten. “ship” ist übrigens im Englischen weiblich. :)
Jörg W. schrieb: > Sie nennen es aber durchweg RTC, auch in diesen Datenblättern. > > Damit ist die Abkürzung schlicht nicht eindeutig. Genau darauf wollte ich hinweisen. RTC hat zwei Bedeutungen, trotzdem überwiegt die Bedeutung für den Uhrenbaustein. > Um die Konfusion > dann noch zu vergrößern, in den neueren ARMs (SAMD und Konsorten) > heißt das Teil auch RTC, übersetzt als Real Time Counter, kann aber > optional auch im Kalendermodus konfiguriert werden … :-) > Über die deutschen Artikel englischer Begriffe kann man sich > vortrefflich streiten. “ship” ist übrigens im Englischen weiblich. :) Ja, natürlich kann man streiten. Aber nicht, indem man tagtäglich hier im Forum Gift und Galle verspritzt. So ein Verhalten ist meines Erachtens wenig zielführend. Für mich ist hier deshalb auch endgültig EOD. Ich habe es nicht nötig, mich von einem Typen, der sich "cyblord" nennt, so anfeinden zu lassen - egal wer in der Sache selbst recht hat. Man kann auch zivilisiert miteinander umgehen.
:
Bearbeitet durch Moderator
Danke für die Infos, auch für den Link "AVR - Die genaue Sekunde / RTC" Also eine externe Real Time Clock könnte genauer sein aber evtl mehr Strom benötigen. Noch eine Frage habe ich: Angenommen mein ATmega läuft über eine Spannungsversorgung mit 5V, kann ich dem Real Time Counter im ATmega ,durch Anbringen einer extra Spannungsversorgung konstant weiterlaufen lassen? Bringt das was ? Vielen Dank!
Günther Kuckma schrieb: > Angenommen mein ATmega läuft über eine Spannungsversorgung mit 5V, kann > ich dem Real Time Counter im ATmega ,durch Anbringen einer extra > Spannungsversorgung konstant weiterlaufen lassen? Bringt das was ? Schrieb ich ja weiter oben, dass ich das mit meiner LED-Uhr so mache: bei Stromausfall wird sie aus einer CR2032 weiterbetrieben. Sowas braucht aber ein Konzept, sowohl in der Hard- als auch in der Software. Wenn es nicht schon auf dem Board vorgesehen ist, habe ich meine Zweifel, ob man bspw. einen Arduino einfach damit nachrüsten könnte. Für den wäre wohl ein externer, autarker (mit eigener Li-Zelle versehen) RTC-Baustein dann die deutlich einfachere Wahl.
Jörg W. schrieb: > einen Arduino einfach damit nachrüsten könnte. Dank FTDI oder gar CH340G bei den Klonen ist da schnell aus mit Knopfzelle.
Jan H. schrieb: > Dank FTDI oder gar CH340G bei den Klonen ist da schnell aus mit > Knopfzelle. Deshalb schrieb ich ja: braucht ein Konzept. Man will natürlich von der standby power nicht alles versorgen müssen. Ich betreib' die LEDs der LED-Uhr ja auch nicht aus der Knopfzelle. ;-)
Günther Kuckma schrieb: > Also eine externe Real Time Clock könnte genauer sein aber evtl mehr > Strom benötigen. Mehr Strom ist hier Relativ.. die Ds3231 versprechen eine Stabile Ruhezeit aus der Knopfzelle von mehreren Jahren. DS3231 Battery Timekeeping 3,3V 0,84-3uA Aus "Die genaue Sekunde": Der Strombedarf eines externen RTC ist in der Regel etwas niedriger als die RTC Funktion eines Prozessors. #Bei den neueren Atmegas sind die allerdings fast gleichwertig. Hier muss man drauf achten das man ein DS3231 Modul nimmt das ohne Klimmbimm ist.. kost unter 2€. bei den meisten Modulen sind noch Leds oder andere Bauteile wie Level Shifter mit drauf. http://www.ebay.de/itm/291694675800 Das mit dem FTDI stimmt auch.. Jede LED auf dem Board verbraucht unmengen mehr wie eine RTC. Beim DS3231 besteht noch der Vorteil von zwei Alarmen.. bedeutet man kann den Alarm setzen, den Atmega mit dem Alarm aus dem tiefsten Sparmodus holen, sachen erledigen Alarm neusetzen und wieder schlafen legen.
:
Bearbeitet durch User
Philipp K. schrieb: > die Ds3231 versprechen eine Stabile > Ruhezeit aus der Knopfzelle von mehreren Jahren So viel stabiler ist er gar nicht. Wenn man kaum Temperaturschwankungen hat, oder selbst eine Temperaturkompensation mit dem Kontroller macht ist der IC o, ist der IC im schlechtesten Fall Faktor 3 besser. Und wenn man einen Controller mit besserem internen Temperatursensor hat (der von den Avrs ist relativ mies), dann geht der Faktor schon auf 2 runter. Philipp K. schrieb: > #Bei den neueren Atmegas sind die allerdings fast gleichwertig. Das scheint mir auch ein wenig überholt. Inzwichen gibt es RTCs, die mit Strömen im zweistelligen Nanoamperebereich begnügen.
Philipp K. schrieb: > Das mit dem FTDI stimmt auch.. Jede LED auf dem Board verbraucht > unmengen mehr wie eine RTC. Beim DS3231 besteht noch der Vorteil von > zwei Alarmen.. bedeutet man kann den Alarm setzen, den Atmega mit dem > Alarm aus dem tiefsten Sparmodus holen, sachen erledigen Alarm neusetzen > und wieder schlafen legen. Naja, woher bekommt der Atmega dann den Strom? In dem Fall kann man auch wieder die interne RTC nutzen. Alarme hast du beim Atmega über den Timer auch.
avr schrieb: > Naja, woher bekommt der Atmega dann den Strom? In dem Fall kann man auch > wieder die interne RTC nutzen. Alarme hast du beim Atmega über den Timer > auch. Ja nee ist klar, gibts bei Dir heute Sülze?
Philipp K. schrieb: > Ja nee ist klar, gibts bei Dir heute Sülze? Lesen und verstehen sind zwei Dinge, die man vielleicht machen sollte bevor man schreibt (gibts aber besonders bei Arduino öfters). Du hast folgendes vorgeschlagen: Philipp K. schrieb: > man kann den Alarm setzen, den Atmega mit dem > Alarm aus dem tiefsten Sparmodus holen, sachen erledigen Alarm neusetzen > und wieder schlafen legen. Das heißt du hast: - einen Atmega mit Stromversorgung, der häufig im Sleep ist - Peripherie um den Atmega, die kaum Strom verbraucht (Sonst würde ersteres keinen Sinn ergeben) Und genau in diesem Fall kann man die RTC eins zu eins gegen einen deutlich günstigeren Uhrenquarz tauschen. Und hat keine Nachteile, bis auf wenige ppm mehr bei der Frequenztoleranz.
Ich unterscheide halt nur in optimalen, einfachen und ausreichenden Lösungen. Da der Threadbetreff "Arduino" beinhaltet habe ich es einfach, schnell und unkompliziert gehalten, wobei "ausreichend" vom TO noch nicht defineirt wurde. Ich weiß das auch alles, ob das hier dem TO weiterhilft ist eine andere Frage. Wie es aussieht hat er ein Arduino Board und benötigt eine RTC, vielleicht sucht er nach einer "Library" die eine RTC aktiviert. Ob er nun ein Quarz ranhängt (Was ich sogar selbst im moment mache) oder eine vollwertige RTC benutzt muss er selbst entscheiden. Du antwortest einfach in die falsche Richtung.. wenn der TO Hilfe benötigt wie er eine AVR-RTC bastelt wird er das Fragen und die meisten Deiner Festellungen wurden schon vorher geschrieben bzw waren eigentlich klar. EDIT: Ich würde sogar sagen mit der Arduino IDE + einem echten Arduinoboard ist strom sparen und RTC ohne es umzulöten bzw komplett Hard/Software umzustricken sehr schwierig umzusetzen.. ein Leonardo Board mit dem atmega32U4 hat keinen RealTimeCounter.
:
Bearbeitet durch User
Philipp K. schrieb: > Du antwortest einfach in die falsche Richtung Würde ich nicht sagen. Der Betreff lautet "Besitz der Arduino einen RTC". Ich habe mich erst eingeklinkt, nachdem Frank behauptet hat, dass Atmegas keine RTC hätten. Einfacher ist die externe RTC schon möglicherweise. Aber auch nur, weil es anscheinend dafür schon fertige Arduino-Libraries gibt und die Arduino-Boards einach nicht fürs Stromsparen geeignet sind. Mit der richtigen Library ist das Abfragen der Zeit von einem NTP-Server auch deutlich einfacher als überhaupt einen Timer aufzusetzen. Die Komplexität dahinter ist aber eine ganz andere.
Philipp K. schrieb: > Da der Threadbetreff "Arduino" beinhaltet Der TE hatte angefangen, diese Frage für x-beliebige Plattformen zu streuen: Arduino, Banana Pi, wer weiß, wonach er als nächstes gefragt hätte (bei der zweiten habe ich ihn etwas ausgebremst). Nein, der hat keinen Arduino (und ist auch nicht auf die Plattform festgenagelt). Vermutlich wäre es sehr viel einfacher, er würde uns stattdessen sagen, was er überhaupt erreichen will. Dann könnte man ihm viel zielgerichteter Tipps geben.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.