Hallo,
kann mir jemand dabei behilflich sein einen DS1307 zur mitarbeit zu
bewegen? ich Habe das ding nun 2 Mal aufgebaut, den 4. Quartz
ranngepackt.
kabel ausgetauscht. isp kabel getrennt oder dranngelassen(STK500)...
alles ohne erfolg.
mein dDS1307 spielt toter chip. gibts irgendwie eine moeglichkeit
ohne oszilloskop nachzugucken was das ding tut, wenn es was tut?
Ich weiss echt nichtmehr weiter.... dieser kleine schwarze kaefer
macht mich ncoh verrueckt.
..bin kurz davor den ganzen ramsch hier in ne Tonne zu packen.
WIE DEBUGT IHR SOWAS DENN? KANN JA NICHT SEIN DAS IHR ALLE EIN
ELEKTRONIKLABOR ZUHAUSE HABT...ODER DOCH?
beinahe am ende
hansl
Leider ist meine Kristallkugel grad in Reparatur. Du musst schon etwas
mehr Info (Code, Schema) liefern für eine Fehlerdiagnose.
Ansonsten heisse Kandidaten:
- Speisung?
- Pullups am I2C
und natürlich der Klassiker:
- Software...
Gruss,
Thorsten
Hallo Hansl,
der Chip ist wirklich "tot", solange der Oszillator per Init-Sequenz
nicht eingeschaltet wurde! Du wirst das Datenblatt lesen müssen. Darin
steht (bei mir auf Seite 8):
"Please note that the initial power-on state of all registers is not
defined. Therefore, it is important to enable the oscillator (CH bit =
0) during initial configuration."
Viel Glück,
Michael
nungut, das kann ja jetzt ein wenig dauern bis ich das
zusammengebastelt habe.
wieso liefern die diese teile denn NICHT FUNKTIONSFAEHIG = DEFEKT! aus?
klar, wer lesen kann ist klar im vorteil(datenblatt) dennoch
fuehle ich mich ein wenig verarscht.
hansl
Dafür braucht die Uhr bis zur Aktivierung so gut wie keinen Strom -
siehe z. B. die dämlichen Plastikstreifen an der Batterie bei diversen
Billiggeräten, die man beim ersten Einschalten erst mühsam herausziehen
muss.
Da man die deaktivierte Uhr recht einfach per SW überprüfen kann, lässt
sich auch der Anwender leicht dazu überreden, sie zu stellen.
Man muss es nur wissen! Ich habs damals auch nicht gleich gesehen und
mich gewundert, dass die RTC nach dem Stellen nicht weiterzählte.
Gruß
Michael
also,
um dieses LOCK-bit zu loeschen muss ich nach 0x00 den wert 0x00
schreiben habe ich das soweit kapiert?
irgendwie kommt mir das ganze recht seltsam vor. bits von rechts nach
links
und so....
mfg
hansl
Hansl wrote:
> ..bin kurz davor den ganzen ramsch hier in ne Tonne zu packen.
Dann machs doch.
> WIE DEBUGT IHR SOWAS DENN?
Garnicht, da ich keine RTC benutze.
Ich laß einfach nen Timerinterrupt die Zeit zählen und gut is.
Wozu sind denn die Timer da, wenn man sie nicht benutzt ?
Peter
hi michael,
hmm, wie nun nicht weiterlaeuft? ich kann ueberhaupt nicht drauf
zugreifen!
aha das ding hier:
56-Byte, Battery-Backed, Nonvolatile (NV)
RAM for Data Storage
wozu brauchts denn da noch die externe batterie?
verwirrter als zuvor
hansl
Hansl,
evtl. Vbat nicht angeschlossen?
Laut Datasheet muss Vbat (Pin 3) auf Masse gelegt werden, falls keine
Batterie benutzt wird (dann stellt sich allerdings die Frage, wozu
überhaupt eine RTC, siehe Peter Daneggers post).
Gruss,
Thorsten
servus peter,
ich moecht mit der mcu und den timern gern sinnvolleres machen als
sekunden
in die hoehe zaehlen. wozu sind rtc denn da ;)
mal im ernst ne rtc ist einfach ein fetzen code um den man sich mal
nicht
kuemmern muss / connect and forget.
du brauchst keinen kalendar, schaljahr zeug...najo... ich kenn deinen
code koennten den aber nie selbstschreiben oder da was anpassen, dazu
sind meine programmierkenntnisse zu mickrig.
weiss zwar noch nicht ob ich jemals etwas so zeitkritisches basteln
werde... aber ich hab das ding da, und das wird verwendet.
in diesem sinne
hansl
Thorsten, mein held :) danke, VBAT das wars. ich werd wohl anfangen mir
datenblaetter auszudrucken, irgendwie ueberlese ich essentielles zeug
am bildschirm einfach zu haeufig.
mfg
hansl
> mal im ernst ne rtc ist einfach ein fetzen code um den man sich mal> nicht kuemmern muss / connect and forget.
Jau. Anschliessen ist wirklich einfach. Drähte löten und fertig. Bringt
aber reinweg nix, weil: per Software rankommen und sie zum Leben
erwecken ist deutlich weniger einfach, wie du hier sehr schön bewiesen
hast ;-).
Nö, irgendein Timer passt eigentlich immer, kann ja auch ein PWM-Timer
sein der dann nebenbei noch was anderes mit erledigt. Mit Timer sind es
ein halbes Dutzend Zeilen, mit RTC (+SPI/I2C) sehr viel mehr.
hi A.K.
>> mal im ernst ne rtc ist einfach ein fetzen code um den man sich mal>> nicht kuemmern muss / connect and forget.>Jau. Anschliessen ist wirklich einfach. Drähte löten und fertig. Bringt>aber reinweg nix, weil: per Software rankommen und sie zum Leben>erwecken ist deutlich weniger einfach, wie du hier sehr schön bewiesen>hast ;-).
da muss ich dir wohl recht geben. einfacher wuerds mir auch besser
gefallen :) aber wenn du dir mal ueberlegst das ich nun seit ner stunde
an dem
initialisierungsstring senden herumbastel....
wenn meine eigenbau uhr zb servos steuern soll und ich da anfange das
timing durcheinander zu bringen.... ich bin totaler anfaenger in sachen
MC und C :)
>Nö, irgendein Timer passt eigentlich immer, kann ja auch ein PWM-Timer>sein der dann nebenbei noch was anderes mit erledigt. Mit Timer sind es>ein halbes Dutzend Zeilen, mit RTC (+SPI/I2C) sehr viel mehr.
jo, wie gesagt... das tipp ich dann und ende. jede aenderung die ich
am programm vornehme ist total von der zeitbasis entkoppelt.
abgesehen davon moechte ich die uhr auch nicht immer neu stellen.
die batterie hatte ich bisher nur nicht angeschlossen weil ich mir
dachte das es fuer einen testlauf nicht notwendig ist..nuja, lesen
bildet.
mfg
hansl