Hallo! Ich möchte eine Digital Uhr bauen mit DCF77 Empfang, Wecker, Timer etc. Zusätzlich soll die Innen/Außentemperatur, Luftdruck, Luftfechtigkeit gemessen werden, eine kleine Wetterstation eben. Die Messungen der Außensensoren sollen dann über Funk zur Basisstaion übertragen werden. Für das Außenboard wird auch ein Controller nötig sein. Die Aufgabe schein ja nicht so schwierig, Analoge oder Digitale Sensor-Werte einlesen, in ein Telegramm Packen und über ein Funkmodul wegsenden. Möchte nicht unnötig einen zb. 40Pin Controller verweden. Also welchen AVR-Controller soll ich verweden? ATmega8 oder den ATmega168? Ich habe mit 8051ern angefangen, und zwangsweise auch verwenden müßen, davon hab ich genug. Habe vor auch die AVRs auch weiter für andere Sachen zu verweden, also ich möchte mich daher nicht an einen Typ gewöhnen der dann für andere Sachen weniger geeignet ist. Hoffe ihr könnt mir da helfen....
Christine R. wrote: > Ich habe mit 8051ern angefangen, und zwangsweise auch verwenden müßen, > davon hab ich genug. ..ein Leidensgenosse ;-) > Also welchen AVR-Controller soll ich verweden? ATmega8 oder den > ATmega168? Wenn, würde ich eher den ATmega88 als den ATmege8 nehmen. Sind eh fast pinkompatibel (beim 88 kann man XTAL1 und XTAL2 als Port nehmen wenn nicht gebraucht). Vom ATmega88 zum ATmega168 wirst Du kaum nen Unterschied merken (werden auch im gleichen Datenblatt behandelt), 168 hat eben ein bissl mehr Speicher. Mit avr-gcc wirst keinen Unterschied merken, und mit Assembler muss man eben beachten, dass der Flash grösser als 8k ist, und daher zB rjmp/rcall nicht immer gehen (sind auf 8k begrenzt). Hab momentan nen recht komplexes Uhr-Projekt und da wird der ATmega8 schon was eng, weil man teilweise noch Funktionen zum logging reinbaut, um sich zB Signale per serieller Kommunikation aufm PC anzuschauen.
Werd dann wohl einen ATmega88 oder ATmega168 nehmen. Ist die doppelte Flashgröße der einzige unterschied zwischen beiden. Ich habe vor ein DCF77 Modul zu verwenden doch wenn kein Empfang da ist soll die Uhr mit einem Taktgeber halbwegs genau weiterlaufen. Habe früher mal eine Uhr mit einem Oszillator programmiert (auf einem C167 mit externem Quarz). Doch trotz Quarz ging die Uhr dann Pro Tag ca 4-6s falsch. Hab versucht dies durch ändern der Timer-Reloads zu kompensieren doch es wollte nicht so recht. Von Maxim gibts ja so einen Komopensierten Oszillator, der mit 32768kHz läuft, doch ich brauch für andere Sachen eine höhere Taktfrequenz. Hat jemand Vorschläge?
Hallo, 4-6s wäre ka ok. Einen der Kondensatoren durch einen Trimmer 10/40pF ersetzen und in mühsamer Kleinarbeit azf Sollfrequenz abgleichen. Damit sollten bei üblichen Quarzen und üblicher Raumtemperatur weniger als 1s/Tag machbar sein. Ansonsten muß DCF77 eben wenigstens 1-2 mal am Tag korrigieren können. Mir fällt im Moment keine Langzeitanwendung ein, wo es wirklich auf die Sekunde genau sein müßte. Gruß aus Berlin Michael
Hi Der ATMega88/168 kann nur einen Quarzoszillator bedienen. Mit einem 32kHz Quarz läuft er sehr langsam. Mit einem 4.096MHz Quarz und einem 16Bit-Timer lässt sich ein relativ genauer Sekundentakt erzeugen. MfG Spess
Christine R. wrote: > Werd dann wohl einen ATmega88 oder ATmega168 nehmen. Ist die doppelte > Flashgröße der einzige unterschied zwischen beiden. Nein, sie unterscheiden sich in der Device Signature und je nach Revision in den Errata. Da die Wahl bereits auf einen ATmega*8 gefallen ist, lohnt sich ein Blick ins Datenblatt, wird früher oder später eh anstehen. > Ich habe vor ein DCF77 Modul zu verwenden doch wenn kein Empfang da ist > soll die Uhr mit einem Taktgeber halbwegs genau weiterlaufen. Habe > früher mal eine Uhr mit einem Oszillator programmiert (auf einem C167 > mit externem Quarz). Doch trotz Quarz ging die Uhr dann Pro Tag ca 4-6s > falsch. Das ist innerhalb der Quarztoleranz, evtl bist Du mit einem temperaturkompensierten Quarzsozillator besser bedient als mit einem Quarz; ob das Geld und der Stromverbrauch lohnen ist Geschmackssache -- zumal die Uhr am DCF hängt. Daher würde ich eher mal recherchieren, wie man das Optimum aus dem DCF-Signal bekommt und Störungen vermeidet. Beitrag "DCF Auswerte Konzept" Beitrag "Störanfälliger DCF-Empfang" http://de.wikipedia.org/wiki/Quarzoszillator Als Taktquelle gehen dann -- MHz-Quarz -- Quarzoszillator -- interner RC-Oszillator und Röhrchen (32768 Hz) Röhrchen haben teilweise bessere Toleranzen wegen anderer Resonanz -- Uhr wird asynchron über Timer2 und extern zugeführtes Signal (zB 1Hz, 100Hz getaktet) -- nicht schlecht ist auch das 50Hz Netz. Die Genauigkeit pro Tag ist nicht so berauschend, kann dann man einige Sekunden falsch gehen die Uhr, aber die Zeit wird irgendwann wieder aufgeholt, es sind also keine Fehler die sich aufsummieren.
Den Timer extern takten, daran hab ich nicht gedacht. Was spricht dagegen einen Timer mit diesem tempkompensierten 32768Hz oszillator von maxim (DS32KHZ) zu takten?
Dieser DS32Khz ist nicht leicht zu bekommen, wie ich mal erfahren habe. Bin jetzt ziemlich unschlüssig. Hätte gerne eine genau Uhr die auch ohne DFC77 auskommen könnte, ist dann ein besseres Gefühl...
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.