Hallo zusammen, hat jemand ein beispiel für DS1307 unx xmega128a1?? ich würde mich echt freuen. Gruss Milan
forumsuche hilft dir ... bzw. google... da findet man ein stromflotutorial für i2c und hier im forum findest du eine ds1307 lib für avr... also gogo
Hallo, stromflo ist offline! ich habe im google gesucht und nichts schlaues für xmega gefunden! Bitte um hilfe! Gruss Milan
Für I²C beim Xmega würde ich einfach das aus AVR1308 nehmen (kann man quasi 1:1 kopieren). Dann liest du einfach die 8Bytes (also Uhrzeit-Dateum etc) in den Buffer:
1 | TWI_MasterRead(&twiMaster,0xD0,8); |
Und dann steht der ganze Kram in twiMaster.readData[0:7] Und wenn du was reinschreiben willst, einfach die Adresse und Wert in den SendBuffer
1 | SendBuffer[0] = 0x02; //Hours Register; |
2 | SendBuffer[1] = 3; |
3 | TWI_MasterWrite(&twiMaster, 0xD0, SendBuffer, 2); |
Hallo, Milan schrieb: > beispiel für DS1307 unx xmega128a1 Schau dir mal das da an: http://www.basteln-mit-avr.de/atxmega32a4.html#RTC1337_RTC1307 tools.h anschauen! DS1307 ist für 5 Volt ausgelegt. Besser: DS1338-3/DS1337 Gruß G.G.
Hallo ich habe mir den DS1337 besorgt. Leider finde ich keine daten für wiederstände und den CRYSTAL??? Betriebsspannung 3.3V XMEGA 32MHz takt Bitte um hilfe.
Pull-Widerstände sind bei I2C eigentlich mit 4,7k immer die richtige Wahl (außer du willst sehr hohe Datenraten oder hast sehr lange Leitungen). 10k geht bei kurzen leitungen und langsamen Datenraten auch noch. Und der Quarz... überleg doch mal. Das ist eine Echtzeituhr. Also braucht das Ding einen Uhrenquarz mit 32,768 kHz. Steht auch auch Seite 5, bei Pin 1 & 2:
1 | Connections for a Standard 32.768kHz Quartz Crystal. The internal |
2 | oscillator circuitry is designed for operation with a crystal having a specified |
3 | load capacitance (CL) of 6pF. For more information about crystal selection |
4 | and crystal layout considerations, refer to Application Note 58: Crystal |
5 | Considerations with Dallas Real-Time Clocks. An external 32.768kHz |
6 | oscillator can also drive the DS1337. In this configuration, the X1 pin is |
7 | connected to the external oscillator signal and the X2 pin is floated. |
Der DS1337 C hat übrigens auch einen internen Quarz, der ist natürlich nicht ganz so genau (sie Seite 7. + Application Note 58).
Hallo, Nachtrag: > Besser: DS1338-3/DS1337 sehr genau: RTC - DS3234 Habe zur Zeit diesen RTC-Baustein als Referenz-Quelle in meiner Schaltung. PLus 2 Sekunden in 4 Monaten- das ist für Bastler TOP! RTC - DS3234 Breakout: http://www.watterott.com/de/DeadOn-RTC-DS3234-Breakout Gruß G.G.
Hallo zusammen, ich habe den DS1337 gekauft und nach der ober gepostetem Plan eingebaut. alle Wiederstände sind 4.7 Kohm. Wenn ich die steuerung einschalte. Macht sie einen RESET danach läuft es zwar aber nur bis uhr lesen funktion, dann hängt sie sich auf. Warum weiss ich nicht ohne die uhr war es gut. Kann mir einer einen Tipp geben. Gruss Milan
Was genau hängt sich auf? Der Controller? Dann wartet er vermutlich vergebens auf eine Rückmeldung des DS1337. Wenn die schaltung richtig ist, dann ist evtl. einfach nur die Adresse falsch (hast die um einen nach links geshiftet? Muss nämlich weil die I2C Adresse 7 Bit ist und das unterste Bit das R/W). Zeig mal code. Ich vermute er hängt hier:
1 | while (twiMaster.status != TWIM_STATUS_READY) { |
2 | /* Wait until transaction is complete. */
|
3 | }
|
Interrupts hast an ( sei() )? Hast du HI MED oder LO Interrupt für den TWI an? Hast du die auch im PMIC.CTRL aktiv?
Hallo, schau mal ob SCL und SDA vertauscht sind? Intrrupt scharf gemacht? PMIC.CTRL |= PMIC_HILVLEN_bm; PMIC.CTRL |= PMIC_MEDLVLEN_bm; PMIC.CTRL |= PMIC_LOLVLEN_bm; sei(); Zeige mal deinen Code, sonst ist da nichts zu machen! Gruß G.G.
Hallo zusammen, mein fehler!!! ich habe die funktion vergessen zu kopieren: ISR(TWIC_TWIM_vect) // TWI RTC DS1338 3,3V { TWI_MasterInterruptHandler(&twiMaster); } Ohne gets nicht. Trotzdem danke! Gruss milan
Hallo nochmahls, also schreiben und lesen geht perfekt. leider geht die uhr 5 so schnell wie sie sollte i 1 minute (normal) hat sie 5 minuten gemacht. woran kann das liegen. Gruss milan
Es könnte daran liegen, dass Du das kopierte nicht verstanden hast... P.S.: Ist es wirklich so schwer, die Shift-Taste zu benutzen?
Pete K. schrieb: > Es könnte daran liegen, dass Du das kopierte nicht verstanden hast... > > P.S.: Ist es wirklich so schwer, die Shift-Taste zu benutzen? Ja, das habe ich nicht, sonst würde ich es nicht kopieren, oder??? P.S: Fals du nicht helfen kannst, mussst du auch nichts schreiben. KLUGSCH*****!
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.