vede
Guest
Fri Jan 02, 2009 6:12 pm
Bonsoir à tous,
j'ai cablé le DS1307 comme préconisé
dans le datasheet et des exemples du web...
j'arrive bien à en lire le contenu par défaut
à l'initialisation, en hexa :
80 00 00 01 01 01 00 03
(via le protocole I2C et un PIC16F88)
mais ça ne bouge pas... les secondes (80)
ne s'incrémentent pas...
un probléme de quartz? sinon quoi...
merci d'avance si vous avez une idée,
vede
:O]
offset
Guest
Fri Jan 02, 2009 9:53 pm
vede a écrit :
Quote:
Bonsoir à tous,
j'ai cablé le DS1307 comme préconisé
dans le datasheet et des exemples du web...
j'arrive bien à en lire le contenu par défaut
à l'initialisation, en hexa :
80 00 00 01 01 01 00 03
(via le protocole I2C et un PIC16F88)
mais ça ne bouge pas... les secondes (80)
ne s'incrémentent pas...
un probléme de quartz? sinon quoi...
merci d'avance si vous avez une idée,
vede
:O]
Bonjour,
Si le bit 7 de l'octet à l'adresse 0 est à 1, l'oscillateur est
désactivé ( ce qui est le cas ici puisque la première valeur est à $80 ).
Il faudrait écrire 0 à la première adresse pour l'activer.
Cordialement.
jj
Guest
Fri Jan 02, 2009 10:14 pm
le bit 7 des secondes = Clock Halt, il faut le forcer à zéro.
il faut que tu fasses une routine au démarrage pour voir si ce bit est à
un et en conservant la valeur des secondes, puis le re-écrire à zero
avec les secondes si il est à 1.
ceci au cas ou une panne de pile se produirait.
personnellement, je préfère le DS1337 qui n'a pas ce bit, mais pas de
mémoire non plus...
JJ
vede a écrit :
Quote:
Bonsoir à tous,
j'ai cablé le DS1307 comme préconisé
dans le datasheet et des exemples du web...
j'arrive bien à en lire le contenu par défaut
à l'initialisation, en hexa :
80 00 00 01 01 01 00 03
(via le protocole I2C et un PIC16F88)
mais ça ne bouge pas... les secondes (80)
ne s'incrémentent pas...
un probléme de quartz? sinon quoi...
merci d'avance si vous avez une idée,
vede
:O]
vede
Guest
Sat Jan 03, 2009 6:02 pm
"jj" <jeanjacques.goessens_at_wanadoo.fr> a écrit dans le message de news:
495e83df$0$18364$ba4acef3_at_news.orange.fr...
Quote:
le bit 7 des secondes = Clock Halt, il faut le forcer à zéro.
il faut que tu fasses une routine au démarrage pour voir si ce bit est à
un et en conservant la valeur des secondes, puis le re-écrire à zero avec
les secondes si il est à 1.
ceci au cas ou une panne de pile se produirait.
personnellement, je préfère le DS1337 qui n'a pas ce bit, mais pas de
mémoire non plus...
JJ
Bonsoir à tous,
ça y est, l'heure avance...
et merci, c'était bien ça....
c vrai que ça parait nul...
ce CH bit....
et j'avais mal traduis/compris
le datasheet...
bon'soirée,
vede
;O]
jj
Guest
Sat Jan 03, 2009 6:59 pm
vede a écrit :
Quote:
"jj" <jeanjacques.goessens_at_wanadoo.fr> a écrit dans le message de news:
495e83df$0$18364$ba4acef3_at_news.orange.fr...
le bit 7 des secondes = Clock Halt, il faut le forcer à zéro.
il faut que tu fasses une routine au démarrage pour voir si ce bit est à
un et en conservant la valeur des secondes, puis le re-écrire à zero avec
les secondes si il est à 1.
ceci au cas ou une panne de pile se produirait.
personnellement, je préfère le DS1337 qui n'a pas ce bit, mais pas de
mémoire non plus...
JJ
Bonsoir à tous,
ça y est, l'heure avance...
et merci, c'était bien ça....
c vrai que ça parait nul...
ce CH bit....
et j'avais mal traduis/compris
le datasheet...
bon'soirée,
vede
;O]
Ce qui est chient, c'est qu'il faut lire les secondes, faire un et avec
0x7f et le ré-ecrire... en croisant les doigts pour que les minutes
n'aient pas changé pendant ce temps...
ou bien, tu l'écris lors de la mise à l'heure seulement, ainsi si la
pile est hs, l'horloge s'arrête.
JJ