mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik RTC PCF8583 - Quarz geht nicht


Autor: Sascha Biedermann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Leute!

Und schon komme ich wieder mit dem nächsten Prob angenervt g

Ich habe gerade die Software für den I2C RTC - Chip gebastelt. Doch
irgendwie scheint die Uhr zu stehen. Hab einen 3,2768 MHz Quarz zw.
OSCI und OSCO gehängt und von OSCI nach 5V+ einen Trimm-Elko. Leider
bleiben die Register im IC immer gleich. Wenn ich eine Uhrzeit rein
schriebe, dann kann ich diese anschliesen wieder lesen.

Wenn ich OSCI u. OSCO kurz miteinander verbinde, dann zähl er ein paar
1/100 weiter. Muss ich evtl. an den Quarz noch Masse anlegen (an's
Gehäuse?) ? Kann ich  mit einem einfachen Multimeter (Strom, Spannung,
Wiederstand) bestimmen, ob der Quarz funktioniert?

...puh

Also wie immer hoffe ich, dass ihr mir helfen könnt.

MfG
Sascha

Autor: BernhardT (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Versuchs doch mal mit nem Uhrenquarz 32768 Herz (2 hoch 15) nicht 3,...
Mega Herz
Gruß Bernhard

Autor: Linebach Anton (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
haste du das startbit gesetzt ? -im controllreg. soviel ich
mich noch erinnern kann, welchen uhrenbaustein hast du ?

Autor: Sascha Biedermann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
mist... man(n) darf halt nicht mit ausgeschaltetem Hirn Teile aus dem
Katalog suchen...

3,2768MHz sind nun mal nicht 32,768kHz g

naja... hab eine alte Armbanduhr geplündert, jeztz geht's...

Danke für den Tipp!

MfG
Sascha

Autor: womisa (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Sascha,

ich bin neu in dem AVR Geschäft, kannst du mal Deinen Code oder Teile
davon posten.
Wie spricht man den PCF8583 an?
Hast Du einen Atmega mit TWI interface oder die I2C Sodtwarelösung?
Ich habe bisher weder mit I2C noch mit AVR was gemacht.

Grüße Achim

Autor: Sascha Biedermann (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Achim!

Also ich habe diese TWI-Lib (für das HW-TWI des Mega32) genommen:
http://www.mikrocontroller.net/forum/read-4-50052.html

Im Datenblatt ist eigentlich alles recht schön beschrieben. Hier meine
aktuelle Code (AVR-GCC):

unsigned char tmp,sec,std,min,t,m,w;
unsigned int j;
unsigned char str[21];
unsigned char wota[7][3] = {
"Mo","Di","Mi","Do","Fr","Sa","So" };

    // dummy-write um RAM-Addi zu setzen

    if (start_i2c(0xA0)==0) GR_ON;
    else {RT_ON; GR_OFF;}
    write_i2c(0x02);

    // zum lesen wechseln
    if (rep_start_i2c(0xA1)==0) OR_ON;
    else { RT_ON; OR_OFF;}

    // Sek. lesen, und in einen Char umwandel (High-Nibbel=10sek,
Low-Nibbel=sek)
    tmp = read_i2c_ack();
    sec = ((tmp>>4)*10) + (tmp&0x0F);

    // wie bei den sek.
    tmp = read_i2c_ack();
    min = ((tmp>>4)*10) + (tmp&0x0F);

    // siehe Datenblatt
    tmp = read_i2c_ack();
    std = ( ((tmp>>4)&0x03)*10) + (tmp&0x0F);

    // siehe Datenbaltt
    tmp = read_i2c_ack();
    j = (tmp>>6)+2004;
    t = ( ((tmp>>4)&0x03)*10) + (tmp&0x0F);

    tmp = read_i2c_nack();
    w = (tmp>>5);
    m = ( ((tmp>>4)&0x01)*10) + (tmp&0x0F);

    stop_i2c();
    delay_ms(100);

      sprintf(str, "%s, %02u.%02u.%04u",wota[w],t,m,j);
      lcd_gotoxy(0,0);
      lcd_puts(str);
      suart_puts(str);
      suart_puts_P("\r\n");

      sprintf(str, "%02u:%02u:%02u",std,min,sec);
      lcd_gotoxy(0,1);
      lcd_puts(str);
      suart_puts(str);
      suart_puts_P("\r\n");

Falls du noch Fragen hast, dann sag bescheid.

MfG
Sascha

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.