Pessoal boa tarde, sou novo aqui no fórum, mas já venho acompanhando algumas perguntas e respostas de dúvidas que vim adquirindo ao longo dos meus estudos em Arduíno. Se puderem me ajudar em um dúvida que considero um problema no meu projeto fico extremamente grato, bom no meu projeto utilizo um Arduino mega + Ethernet Shield + sensor indutivo + RTC DS1307. Minha dúvida é de como posso deixar "permanente" a hora do RTC, pois durante o funcionamento do projeto, me deparo com o problema de caso o sensor não esteja em uso com tudo funcionando o RTC volta a hora que foi compilado oque isso não pode acontecer, quero deixa-lo sempre com a hora atual, independente do de tudo estar funcionando ou não, para que não de nenhum problema durante seu funcionamento. Gostaria que pudessem me ajudar seja em parte de código ou em indicação de um novo modulo para acabar com esse problema.

Exibições: 206

Anexos

Responder esta

Respostas a este tópico

Boa tarde TMBR,  (se não gosta que te chame pelas iniciais, avise),

o problema no seu projeto parece ser simples de resolver, mas para isto será necessária uma verificada no

seu sketch.

Anexe um arquivo contendo o sketch.

Se tiver dúvida como anexar o arquivo, veja:

e siga os procedimento que vão aparecendo.

RV

Mineirin, incluí o código, creio que tenha feito certo.

Boa tarde TMBR,

dei uma analisada no seu sketch,e parece que está correto,  mas fiquei em dúvida sobre estas suas afirmações:

1a.  " Minha dúvida é de como posso deixar "permanente" a hora do RTC, "

        O que significa pra você deixar permanente a hora do RTC?

2a.  " caso o sensor não esteja em uso com tudo funcionando o RTC volta a hora que foi compilado "

       Se não tiver defeito ou se a bateria dele estiver boa, o RTC deve rodar normalmente independente

       do se mega estar ou não ligado.

       Se estiver tudo OK o RTC está sempre com o horário atualizado.

Detalhe melhor estes 2 pontos que citei.

RV

Boa tarde Mineirin, vamos lá , para a o primeiro ponto seria: Quando o projeto em si esta em funcionamento com o sensor indutivo contando certinho a hora entregue pelo RTC é a atual, mas caso o projeto esta parado sem funcionar, apenas ligado a tomada e volto a utilizar o sensor, o RTC me retorna a hora de compilação e não a atual do momento em que houve o funcionamento. Exemplo: Durante o dia utilizo o projeto completo tudo ok, chega a noite deixo apenas ele ligado a tomada mas não esta a funcionar vamos dizer standby, no outro dia quando volto a utilizar a data entregue pelo RTC não é a atual, ou é do dia anterior ou a data de compilação. 

Segundo ponto: A pilha alterei esses dias comprei uma da panasonic, mas mesmo assim continuo com esse problema.

Poderia ser o RTC com defeito? Se ficou meio confuso de entender, tendo melhorar.

TMBR, vi algo estranho no seu sketch.

esta linha:  --- >  > RTC_Millis rtc; //Objeto rtc da classe DS1307

porque vc usou desta forma?

Modifique para  ---> >  RTC_DS1307 rtc;

e depois conte o resultado pra gente.

RV

Mineirin estava tentando fazer a alteração que você falou, mas a data/hora que é retornada vem como 2165/165/165 165:165:85. Mesmo utilizando o exemplo da biblioteca do RTClib.h pra o DS1307 a hora que aparece é essa 2165/165/165 165:165:85, consigo receber e ajustar a data/hora correta utilizando o exemplo softrtc também da RTClib que utiliza o RTC_Millis que coloquei no projeto.

Boa tarde TMBR,

este valor que está aparecendo é causado por algum problema ou no seu RTC ou

nos ports que vc o ligou.

Ele não está funcionando corretamente.

Verifique se as ligações está corretas, e também rode o sketch I2C scanner para verificar se

ele detecta o seu dispositivo.

RV

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço