Besoin d'aide set DS1302RTC sur MEGA 2560

Bonjour à tous,

Je me tourne vers vous car je souhaite réaliser un projet de contrôle autonome de mon aquarium d’eau douce. Après de multiples recherche sur le net, j’ai trouvé quelques infos, mais je dois avouer que tous les projets ne collent pas forcément au mien et qu’au niveau programmation, je ne maîtrise pas assez…

Le but est de rendre + ou – autonome mon aquarium lors de mes déplacements pro et vacances.

[u]Mon projet en quelques lignes:[/u]

  1. Contrôler le niveau d’eau et ajouter automatiquement de l’eau si nécessaire via un bidon de 15 litres et une pompe (seuil bas -> Activation de la pompe (relai) jusqu’à seuil haut et attente jusqu’à seuil bas, etc…)
  2. Contrôler et afficher la température de l’eau et activer une sortie (relai) si la température dépasse une consigne de X degrés (le but étant de connecter un ventilateur pour refroidir l’eau si besoin).
  3. Distribuer de la nourriture 1 fois par jour à 10h du matin par exemple (activation d’une sortie relais durant x seconde)
  4. Prendre une photo toute les heures de l’aquarium ou visualisation en temps réel
  5. Disposer des données n’importe où en France ou à l’étranger (interface http avec tableaux de bords, données envoyées sur twitter ou autres…)
  6. Possibilité d’activer 1 ou 2 sorties à distance si besoin

Pour le moment avec cette période de forte chaleur, je me suis penché sur le point 2 (gestion de la température) que j'ai réussi à programmer.

Ci-dessous le lien du résultat: Gestion température

Je me penche à présent sur le point 3 (distribution de la nourriture) et là je rencontre des soucis... Je possède une carte MEGA 2560 ainsi qu'un module horloge DS1302

Et là, impossible de régler cette horloge >:(

Malgré plusieurs recherche sur le net, je ne suis pas sûre des branchement du module sur la carte et je ne comprend pas la logique de programmation de certain post

J'arrive à visualiser une date et heure en liaison série (des années 2000), mais impossible de régler la date et heure actuelle...

Je dois passer à coté de quelque chose et à chaque fois que je récupère un bout de programme, j'ai des messages d'erreur (manque librairie ou autre...)

Une âme charitable peut-elle m'aiguiller sur les branchements et programme svp ?

les ports à connecter sont:

VCC = +5V (je pense) GND = Masse CLK = ? DAT = ? RST = ?

Merci par avance pour votre aide Amicalement Tony

Bonjour,

Est-ce que tu as un lien précis vers le module DS1302 que tu as acheté ?

bonjour surement un module DS1302 (j'en ai :confused: ) avec une serigraphie "exotique"

RST=CE

voir ce sketch (attention a bien commenter apres set clock)

Bonjour

Tout d'abord, un grand merci pour vos réponses ;)

3Sigma => Voici le lien "Ebay" de mon achat. Je ne sais pas si tu auras les infos que tu souhaites, sinon n'hésite pas à me demander, je peux le prendre en photo et les envoyer ;)

http://www.ebay.fr/itm/301288784095?_trksid=p2057872.m2749.l2649&ssPageName=STRK%3AMEBIDX%3AIT

Artouste => Merci pour le sketch, mais je ne comprend pas trop ? Dois-je le copier entièrement et l'injecter ?

Ou sélectionner qu'une partie (excuse moi, mais je débute et j'avoue ne pas trop comprendre la logique pour régler la date et heure).

Pour le moment, j'ai copier l'intégralité du sketch et je l'ai injecté dans le mega, en liaison série je vois la date du 22/04/2012

J'ai également modifié cette partie du sketch:

// Fill these variables with the date and time. int seconds, minutes, hours, dayofweek, dayofmonth, month, year;

// Example for april 15, 2013, 10:08, monday is 2nd day of Week. // Set your own time and date in these variables. seconds = 0; minutes = 29; hours = 18; dayofweek = 1; // Day of week, any day can be first, counts 1...7 dayofmonth = 29; // Day of month, 1...31 month = 8; // month 1...12 year = 2016;

Mais la date en liaison série reste la même (22/04/2012), en revanche, les secondes défilent bien, c'est que cela fonctionne, mais impossible de le mettre à la bonne date et heure...

Je ne comprend pas pourquoi... :)

Un coup de mains ? ;)

bonjour dans le programme tu modifie les valeurs de la date/heure à positionner dans cette section

// Set your own time and date in these variables.
  seconds    = 0;
  minutes    = 01;
  hours      = 13;
  dayofweek  = 3;  // Day of week, any day can be first, counts 1...7
  dayofmonth = 30; // Day of month, 1...31
  month      = 8;  // month 1...12
  year       = 2016;

avec cette ligne décommentée

// Write all clock data at once (burst mode).
 DS1302_clock_burst_write( (uint8_t *) &rtc); // commenter apres set clock

tu compile et upload et juste derriere

tu commente la ligne comme ça

// Write all clock data at once (burst mode).
  //DS1302_clock_burst_write( (uint8_t *) &rtc); // commenter apres set clock

et recompile et upload