• Welcome to LusoRobótica - Robótica em Português.
 

Sistema Rega Automático com interface VB

Started by danuca, 07 de September de 2012, 14:40

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.


danuca

Boas pessoal

Como foi sugerido por voces, comprei um módulo RTC ds1307.

Experimentei vários códigos hoje, inclusive um de um toturial que estava aqui do tr3s, e tenho sempre o mesmo output, e nao consigo perceber porquê.

EX1:
45:85:85      165/45/2165
45:85:85      165/45/2165
45:85:85      165/45/2165
45:85:85      165/45/2165
45:85:85      165/45/2165
45:85:85      165/45/2165
45:85:85      165/45/2165
45:85:85      165/45/2165
45:85:85      165/45/2165




Ex2:
Sao:    45:85:85   DiaDeSaoNunca-feira dia 45 de Oufevulhosto de 2165
Sao:    45:85:85   DiaDeSaoNunca-feira dia 45 de Oufevulhosto de 2165
Sao:    45:85:85   DiaDeSaoNunca-feira dia 45 de Oufevulhosto de 2165
Sao:    45:85:85   DiaDeSaoNunca-feira dia 45 de Oufevulhosto de 2165
Sao:    45:85:85   DiaDeSaoNunca-feira dia 45 de Oufevulhosto de 2165
Sao:    45:85:85   DiaDeSaoNunca-feira dia 45 de Oufevulhosto de 2165
Sao:    45:85:85   DiaDeSaoNunca-feira dia 45 de Oufevulhosto de 2165
Sao:    45:85:85   DiaDeSaoNunca-feira dia 45 de Oufevulhosto de 2165
Sao:    45:85:85   DiaDeSaoNunca-feira dia 45 de Oufevulhosto de 2165
Sao:    45:85:85   DiaDeSaoNunca-feira dia 45 de Oufevulhosto de 2165


Acho um bocado estranho darem exactamente os mesmos valores, além disso o tempo nunca é incrementado em todos os programas que experimentei, por isso certamente nao será dos programas. Alguém tem alguma ideia ?

Cumps

Sérgio_Sena

Quote from: danuca on 13 de September de 2012, 01:25
Boas pessoal

Como foi sugerido por voces, comprei um módulo RTC ds1307.

Experimentei vários códigos hoje, inclusive um de um toturial que estava aqui do tr3s, e tenho sempre o mesmo output, e nao consigo perceber porquê.

EX1:
45:85:85      165/45/2165
45:85:85      165/45/2165
45:85:85      165/45/2165
45:85:85      165/45/2165
45:85:85      165/45/2165
45:85:85      165/45/2165
45:85:85      165/45/2165
45:85:85      165/45/2165
45:85:85      165/45/2165




Ex2:
Sao:    45:85:85   DiaDeSaoNunca-feira dia 45 de Oufevulhosto de 2165
Sao:    45:85:85   DiaDeSaoNunca-feira dia 45 de Oufevulhosto de 2165
Sao:    45:85:85   DiaDeSaoNunca-feira dia 45 de Oufevulhosto de 2165
Sao:    45:85:85   DiaDeSaoNunca-feira dia 45 de Oufevulhosto de 2165
Sao:    45:85:85   DiaDeSaoNunca-feira dia 45 de Oufevulhosto de 2165
Sao:    45:85:85   DiaDeSaoNunca-feira dia 45 de Oufevulhosto de 2165
Sao:    45:85:85   DiaDeSaoNunca-feira dia 45 de Oufevulhosto de 2165
Sao:    45:85:85   DiaDeSaoNunca-feira dia 45 de Oufevulhosto de 2165
Sao:    45:85:85   DiaDeSaoNunca-feira dia 45 de Oufevulhosto de 2165
Sao:    45:85:85   DiaDeSaoNunca-feira dia 45 de Oufevulhosto de 2165


Acho um bocado estranho darem exactamente os mesmos valores, além disso o tempo nunca é incrementado em todos os programas que experimentei, por isso certamente nao será dos programas. Alguém tem alguma ideia ?

Cumps



# Já acertaste as horas no chip? Esses valores podem estar a "crashar" a lógica interna e pode ser por isso que ele não incrementa.

# Tens que ligar o oscilador interno, para ele começar a contar o tempo. Datasheet explica tudo.
Cumprimentos,
Sérgio Sena

Electronic Gear for Musicians

Instagram

senso

Como é que tens isso ligado?
Já usei a biblioteca da Adafruit, com tutorial, aqui:
http://www.ladyada.net/learn/breakoutplus/ds1307rtc.html
Avr fanboy

danuca

Já estive a ver o datasheet:

The contents of the time and calendar registers are in the BCD format.  Bit 7 of register 0
is the clock halt (CH) bit.  When this bit is set to a 1, the oscillator is disabled.  When cleared to a 0, the
oscillator is enabled.
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.

MAs eu acho que o toturial do tr3s faz enable ao oscilador...

Liguei exactamente como neste toturial:
http://www.glacialwanderer.com/hobbyrobotics/?p=12


senso

Mas compraste o chip, ou uma placa com o chip soldado, com o cristal, condensador de decoupling e suporte de bateria?
Avr fanboy

danuca

Comprei a placa toda, com ship  cristal bateria..

o toturial faz enable ao CH:

if(v<60 && v>-1){            // Desta forma consegue-se manter o clock actual
      §byte state=rtc_bcd[DS1307_SEG] & DS1307_CLOCKHALT;

senso

Cheira-me a bugs pelo código..
Que simbolo é este:
      §
Está no inicio da segunda linha.
Avr fanboy

danuca

Esse símbolo foi um erro meu a copiar, desculpa.


Eu usei o código do tr3s, toda a gente tava a dizer que dava, pra mim o mais estranho é o relógio nem sequer incrementar..

danuca

senso:

Com essa biblioteca o output muda realmente, mas ainda fica pior:

Ì¥ÚáÆcF³?)Ô§ÂÃB'©ä"åKMÉSÀcBsèAaùRL¡ «9?âöâ ItùRLå ¯9?âÖâ I    È"çKMÉSÈcbsèA2M?ù7¸YÙ3/&ÂâB:'Ï+»ù"Y£Á;Ðbbr

Aconteceu-te isto ?

danuca

Já descobri. O baudrate estava mal

Mas tenhos os mesmos valores que os outros programas :s


2165/165/165 165:165:85
since midnight 1/1/1970 = 1402703185s = 16234d
now + 7d + 30s: 2014/6/20 23:46:55

senso

De onde compras-te a placa, manda link e tira umas fotos, tens os pull-ups nas linhas do i2c?
Avr fanboy


senso

Nenhuma das patas do cristal está partida?
Como está solto(pelo menos nas fotos), pode-se ter partido com vibração, e já agora, experimenta tirar a bateria e desligar o rtc da alimentação durante uns minutos, pode ter a bateria descarregada e ter ficado nalgum estado estranho.
Avr fanboy

danuca

Não, está impecável.

Tirei a bateria, e fiz o upload sem a pilha e tenho este output:


Sao:    23:15:0   Quinta-feira dia 12 de Marco de 2009
Sao:    0:0:0   Segunda-feira dia 1 de Fevereiro de 2000
Sao:    0:0:0   Segunda-feira dia 1 de Fevereiro de 2000
Sao:    0:0:0   Segunda-feira dia 1 de Fevereiro de 2000
Sao:    0:0:0   Segunda-feira dia 1 de Fevereiro de 2000
Sao:    0:0:0   Segunda-feira dia 1 de Fevereiro de 2000
Sao:    0:0:0   Segunda-feira dia 1 de Fevereiro de 2000
Sao:    0:0:0   Segunda-feira dia 1 de Fevereiro de 2000


mas depois volto a por a pilha e volta ao mesmo output de á bocado :s