collapse

* Posts Recentes

Emulador NES em ESP32 por dropes
[22 de Abril de 2024, 14:14]


Arame de Estendal por almamater
[18 de Abril de 2024, 16:16]


O que é isto ? por SerraCabo
[12 de Abril de 2024, 14:20]


Amplificador - Rockboard HA 1 In-Ear por almamater
[11 de Abril de 2024, 20:46]


Meu novo robô por josecarlos
[29 de Março de 2024, 18:30]


Bateria - Portátil por almamater
[25 de Março de 2024, 22:14]


Escolher Osciloscópio por jm_araujo
[06 de Fevereiro de 2024, 23:07]


TP4056 - Dúvida por dropes
[31 de Janeiro de 2024, 14:13]


Leitura de dados por Porta Serie por jm_araujo
[22 de Janeiro de 2024, 14:00]


Distancia Cabo por jm_araujo
[08 de Janeiro de 2024, 16:30]

Autor Tópico: Real Time Clock DS1307 (RTC) + Arduino  (Lida 170651 vezes)

0 Membros e 1 Visitante estão a ver este tópico.

Offline TigPT

  • Administrator
  • Mini Robot
  • *****
  • Mensagens: 5.372
    • Tiago Rodrigues
Re: Real Time Clock DS1307 (RTC) + Arduino
« Responder #45 em: 21 de Outubro de 2009, 23:01 »
Existe um problema a nível de servidor na gestão dos headers dos ficheiros desde a migração para smf 2.0 todos os ficheiros anteriores a esta migração, após o download do ficheiro, a extrair dá erro
"? ? ? - the file header is corrupt"

Estamos a tentar resolver mas não é trivial. Peço desculpa e agradeço a compressão.
« Última modificação: 21 de Outubro de 2009, 23:02 por TigPT »

Offline microbyte

  • Mini Robot
  • *
  • Mensagens: 1.322
    • http://ricardo-dias.com/
Re: Real Time Clock DS1307 (RTC) + Arduino
« Responder #46 em: 21 de Outubro de 2009, 23:03 »
Aqui está tudo normal...
Safari em OSX

Offline TigPT

  • Administrator
  • Mini Robot
  • *****
  • Mensagens: 5.372
    • Tiago Rodrigues
Re: Real Time Clock DS1307 (RTC) + Arduino
« Responder #47 em: 21 de Outubro de 2009, 23:04 »
Também estou em Safari no OS X e por exemplo no anexo da do primeiro post deste tópico o UnrarX dá-me erro.

Offline microbyte

  • Mini Robot
  • *
  • Mensagens: 1.322
    • http://ricardo-dias.com/
Re: Real Time Clock DS1307 (RTC) + Arduino
« Responder #48 em: 21 de Outubro de 2009, 23:09 »
Tens razão...
Não tinha experimentado a extrair. ;) Peço desculpa pela confusão.

Offline Baltasar

  • Mini Robot
  • *
  • Mensagens: 6
Re: Real Time Clock DS1307 (RTC) + Arduino
« Responder #49 em: 18 de Novembro de 2009, 16:29 »
Boas, estou com um problema no meu RTC, não sei se tenho a livraria DS1307 correcta e as aqui disponíveis no fórum para descarregar estão corrompidas.

Mas o problema é simplesmente sempre que faço um set ao clock passando os valores correctos, nos segundos ele depois de fazer start() começa sempre em zero, mesmo passando outro qualquer valor, isto é normal? Alguém sabe como contornar este problema?

De qualquer forma vou testar usando somente a livraria wire.h e conectar com I2C em vez da livraria especifica.

Offline delphi

  • Mini Robot
  • *
  • Mensagens: 217
Re: Real Time Clock DS1307 (RTC) + Arduino
« Responder #50 em: 18 de Novembro de 2009, 16:32 »
Olá, e se não fizer star()?
www.saborapalco.com - Companhia de Teatro Amador
www.megavaquinha.com - Uma mega aposta no euromilhões de um grupo de mega amigos

Offline Baltasar

  • Mini Robot
  • *
  • Mensagens: 6
Re: Real Time Clock DS1307 (RTC) + Arduino
« Responder #51 em: 18 de Novembro de 2009, 16:38 »
Posso testar também, embora o código que tenha seja este e nesse caso também tenho de eliminar o stop().

void setRTC(int sec, int mins, int hr)
{
  RTC.stop();
  RTC.set(DS1307_SEC, sec);    //set the seconds
  RTC.set(DS1307_MIN, mins);     //set the minutes
  RTC.set(DS1307_HR, hr);    //set the hours
  RTC.start();
}

EDIT: Ok de facto retirando o stop() e start(), fica a funcionar, obrigado. Quer dizer que start faz tipo um reinicializarão dos segundos (repõem a zero)?
Aproveito para perguntar onde posso fazer o download da livraria DS1307 oficial e mais recente caso exista?
Mais uma vez obrigado.
« Última modificação: 18 de Novembro de 2009, 16:47 por Baltasar »

Offline Baltasar

  • Mini Robot
  • *
  • Mensagens: 6
Re: Real Time Clock DS1307 (RTC) + Arduino
« Responder #52 em: 18 de Novembro de 2009, 18:27 »
Fui ver o conteúdo da livraria DS1307 para a função start() e realmente agora percebo porque faz o reset dos segundos a zero, fica aqui um excerto da livraria nessa mesma função para quem não sabe ou não pode ver ficar a compreender também:

void DS1307::start(void)
{
   // unset the ClockHalt bit to start the rtc
   // TODO : preserve existing seconds
    rtc_bcd[DS1307_SEC]=0;
   save();
}

 ::)
Sorrryyy, de facto devia logo ter ido a procura disto que tinha logo a minha resposta em vez de perguntar aqui, mas acho que assim outros tão ou mais distraídos como eu podem ver aqui o porque e a solução hehehe.   ;)


Offline Baltasar

  • Mini Robot
  • *
  • Mensagens: 6
Re: Real Time Clock DS1307 (RTC) + Arduino
« Responder #53 em: 19 de Novembro de 2009, 16:44 »
Ok tenho mais um problema e desta vez não consigo identificar a causa nem o porque, mas o facto é que ao incluir esta livraria "DS1307.h" que parece fazer algum tipo de conflito com a "LiquidCrystal.h" deixo de ter PWM no pin 3 do Arduino ficando assim o meu projecto pendurado :( , pois como estou a usar o shield LCD com keypad somente fico com 2 possíveis pinos PWM livres o 11 e o 3, tudo bem com o 11, mas o 3 realmente fica morto, alguém sabe da solução ou porque do sucedido?

Podem testar simplesmente mesmo quem não tenha o LCD, basta usarem o demo "Fading" que vem no IDE 017 e no inicio carregarem as libs necessárias ao RTC e LCD assim:

.........................................
#include <WProgram.h>
#include <Wire.h>
#include <DS1307.h> // OPÇÃO 1
#include <LiquidCrystal.h> // OPÇÃO 2

LiquidCrystal lcd(8, 9, 4, 5, 6, 7); // OPÇÃO 2
.........................................
Depois mudar o pin do LED para o 3 comentando alternadamente o indicado como opção 1 ou as 2, e o LED já faz o fade, com tudo carregado não mexe sequer.

Alguém me pode confirmar isto ou ajudar neste sentido?



« Última modificação: 19 de Novembro de 2009, 19:02 por Baltasar »

Offline Baltasar

  • Mini Robot
  • *
  • Mensagens: 6
Re: Real Time Clock DS1307 (RTC) + Arduino
« Responder #54 em: 21 de Novembro de 2009, 10:38 »
Ok solução para já é usar somente a lib Wire.h e falar com o RTC com comandos directos I2C, como por exemplo:

 Wire.begin();
 Wire.beginTransmission(DS1307_I2C_ADDRESS);
 Wire.send(0);
 Wire.send(0x00);
 .................................. etc. e tal...  ;)

Mas se alguém poder realmente testar como referi no post anterior seria útil para perceber se é mesmo um erro/bug como referi ou é mesmo o meu Arduino que está completamente "crazy" ?!?!?   ::)

Offline metRo_

  • Administrator
  • Mini Robot
  • *****
  • Mensagens: 3.753
Re: Real Time Clock DS1307 (RTC) + Arduino
« Responder #55 em: 21 de Novembro de 2009, 13:28 »
Em relação ao teu problema o que pode estar acontecer é uma dessas bibliotecas utilizar os timers utilizados para gerar a pwm nesse pino. Le o primeiro post deste tópico: http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1232572239 ele apresenta algumas bibliotecas para gerar pwm's.

Offline Baltasar

  • Mini Robot
  • *
  • Mensagens: 6
Re: Real Time Clock DS1307 (RTC) + Arduino
« Responder #56 em: 21 de Novembro de 2009, 14:56 »
Sim estou a perceber o teu ponto de vista, mas vasculhei o código todo das libs que refiro e nenhuma tem qualquer referencia ou código que me leve a crer que se use algum dos 3 timers do Arduino.

No entanto vou dar uma vista de olhos melhor no link que indicas, pois pode ter alguma coisas que me ajude, embora no meu caso os sinais PWM normais do arduino servem perfeitamente pois e para controlar a intensidade de vários led's por uma porta de um FET.

Offline tr3s

  • Administrator
  • Mini Robot
  • *****
  • Mensagens: 811
  • char x=1, y=5; x^=y^=x^=y;
Re: Real Time Clock DS1307 (RTC) + Arduino
« Responder #57 em: 23 de Novembro de 2009, 12:12 »
O primeiro tópico foi actualizado! Os anexos já funcionam novamente :D

Abraços a todos e desculpem pela demora :P
Tr3s
Daniel Gonçalves

Offline arucard

  • Mini Robot
  • *
  • Mensagens: 3
Re: Real Time Clock DS1307 (RTC) + Arduino
« Responder #58 em: 14 de Dezembro de 2009, 12:04 »
Valeu cara!! muito obrigado!!

Offline vdr

  • Mini Robot
  • *
  • Mensagens: 78
Re: Real Time Clock DS1307 (RTC) + Arduino
« Responder #59 em: 20 de Fevereiro de 2010, 19:50 »
Se eu quiser que o DS1307 me envie para um pino do arduino um impulso positivo a cada 12h ou 24h como o poderei fazer? Andei a olhar para o código aqui disponivel e não descortinei como faze-lo.