mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik lesen/schreiben von/auf Real-Time Clock


Autor: Carlo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

kann mir jemand helfen wie ich mit dem PIC16F870 Daten von der Real-Time 
Clock (DS1642 von Dallas) lesen und auch auf den RTC schreiben kann?

Gruss Carlo

Autor: 6632 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du hast das Datenblatt des DS1642 angeschaut ?

Autor: Carlo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
ja hab das mal ein wenig angeschaut. doch mein technisches englisch ist 
ziemlich beschränkt und daher verstehe ich es noch nicht so richtig..=)

Autor: Sebastian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ganz einfach, wie ein externes SRAM. Uhrzeit und Datum stehen in 
entsprechenden Speicherzellen. Natürlich ist das beim PIC mangels 
externem Daten- und Adressbus mehr Aufwand als bei einem 8051 oder 
AT90S8515. Ob wohl die Portleitungen reichen?

Autor: 6632 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja. Ohne Datenblatt lesen laeuft wenig. Gibt's nicht was anderes, das 
auch lustig ist ? Einen Rosengarten ?

Autor: Sebastian (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Eigentlich empfehlen sich für den PIC16F870 eher serielle RTCs, außer, 
man verwendet Adreßlatches o.ä., um Portleitungen zu sparen. Vom Prinzip 
her aber muß man: Die 8 Datenleitungen an einen Port führen, die Adreß- 
und Steuerleitungen (/WE,/OE) auf zwei andere verteilen. /CE kann immer 
auf Masse liegen. Die Adresse, auf die man zugreifen will (z.B. 7FA für 
die Minuten) an die Adreßleitungen A0-A10 anlegen (das wäre 11111111010, 
gezählt von A10...A0). Zum Lesen: /OE auf Low, /WE auf High, Daten von 
den Leitungen, an denen D7...D0 hängen, in ein internes Register des PIC 
kopieren. Zum Schreiben: Daten an den Port anlegen, an dem D7...D0 
hängen, /OE auf High, /WE auf Low. Nicht vergessen, die Leitungen beide 
im Ruhezustand auf High zu halten.

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja, der Chip ist wie ein SRAM, also für MCs ohne Memory-Interface 
äußerst besch-(eiden).

Mann könnte mit 2*74HC595 die Adressen und Steuersignal bereitstellen 
und mit nem 74HC299 Daten lesen und schreiben, um mit nur 4 Pins des MC 
auszukommen.

Besser aber, man nimmt nen seriellen RTC.
Z.B. der DS1904 braucht nur einen Pin.


Peter

Autor: David (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@ Peter Dannegger

Wird das so gemacht? Meine seh den sinn nicht wirklich...

Autor: 6632 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Natuerlich nicht. Es gibt Standards, wie den DS1302, DS1307, DS1337, 
usw.

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
David wrote:
> @ Peter Dannegger
>
> Wird das so gemacht?

Ja.

Wenn man Pins sparen will, nimmt man üblicher Weise Schieberegister zur 
IO-Erweiterung.

Bzw. wenn es funktionsgleiche ICs mit serieller Ansteuerung gibt, nimmt 
man natürlich gleich die.
Ich nehme z.B. ausschließlich serielle ADCs und DACs.


Peter

Autor: Carlo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
danke schon mal für die Antworten!

noch eine Frage, hat vielleicht jemand ein Schaltbild einer Schaltung 
welche auch einen RTC enthaltet?
Ich konnte bisher im Internet leider nichts finden.

Gruss und Danke

Autor: Thilo M. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das Teil ist, wie oben schon gesagt, ziemlich Pinfressend.
Allerdings ist es recht einfach zu beschreiben und auszulesen. Im 
Datenblatt steht ja genau, an welcher Adresse was von der Uhr steht, der 
Rest ist SRAM.
Und das Timing ist sauber als Grafik drin, da braucht man nicht viel 
englisch zu können ;)
Wenn du zwei 8-bit-Latches wie den 74574 benutzt, kannst du auch mit dem 
8-bit-Datenbus und zwei zusätzlichen Steuerleitungen auskommen. Das wäre 
praktisch, wenn der Datenbus sowieso existiert. Aber eben zusätzliche 
Hardware.

Ich bevorzuge die seriellen per SPI auch.

Autor: Carlo (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Nochmal Danke für die Antworten und Informationen.
Habe es jetzt auch verstanden, ist eigentlich gar nicht so schwierig!=D

Gruss Carlo

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.