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
ja hab das mal ein wenig angeschaut. doch mein technisches englisch ist ziemlich beschränkt und daher verstehe ich es noch nicht so richtig..=)
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?
Ja. Ohne Datenblatt lesen laeuft wenig. Gibt's nicht was anderes, das auch lustig ist ? Einen Rosengarten ?
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.
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
@ Peter Dannegger Wird das so gemacht? Meine seh den sinn nicht wirklich...
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
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
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.
Nochmal Danke für die Antworten und Informationen. Habe es jetzt auch verstanden, ist eigentlich gar nicht so schwierig!=D Gruss Carlo
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.