Arduino time & température

Bonjour à tous,

Voici un petit projet qui n'a rien d'original et qui ne rivalise pas avec les réalisations que l'on peut retrouver sur le forum. Avant cette réalisation je n'avais jamais programmé en C ou C++. Mais avec votre aide et les documents disponibles sur le net j'ai progressé à une vitesse que j'avais même pas imaginé.
MERCI A TOUS POUR VOTRE CONTRIBUTION.
Le projet consiste à afficher sur un écran LCD la date, l'heure, la température et permettre la mise à jour de l'horloge.
Le montage est constitué :

  • carte Arduino Duemilanove
  • un afficheur LCD 4x20 caractères avec clavier en I2C
  • un circuit DS1307 I2C pour la gestion de l'heure
  • un circuit DS1621 I2C pour la mesure de la température
  • une LED clignotante à 1Hz

Le logiciel est loin d'être à la hauteur de ce que les uns et les autres peuvent écrire mais il répond aux fonctionnalités imposées par mon projet.
Il y a des passages, au début de mon projet qui sont faits avec des astuces "pas forcément dans la déontologie du parfait programmeur C" mais il y avait des techniques de programmation que je ne maîtrisais pas.
Le développement de ce projet m'a permis d'abordé les pointeurs, bibliothèques, structures, typrdef, etc...
Vos remarques éventuelles sur la structure de mon programme me permettront certainement de progresser encore un peu plus dans ce monde. :slight_smile:

Encore un grand merci à ceux qui m'ont aidés.
@+
icare

Allure générale de l'affichage

Mise à jour heure (la petite étoile à droite pour l'année bissextile)

Côté hard

Je viens de trouver des suites à mon premier projet, à savoir :

Arduino_time_temp.zip (15.4 KB)

Bonjour à tous

Voici une interface d'affichage de l'heure un peu différente des affichages habituels.
Principe de l'affichage :

La diode led du haut (1ère ligne) clignote à une fréquence de 0.5 Hz.
La deuxième ligne permet d'afficher l'heure de 0 à 20 heures par tranche de 5 heures (chaque diode rouge a un poids de 5 heures)
La troisième ligne permet d'afficher les heures entre 0 et 4 (chaque diode jaune a un poids d'une heure)
Pour obtenir l'heure à un instant précis, il faut additionner la 2ème et 3ème ligne.
Sur la photo jointe, il est 9 heures (5 + 4 ).

Le principe est le même pour les minutes. La quatrième ligne indique les minutes de 0 à 55 minutes avec un poids de 5 minutes par diodes. Pour un repérage plus rapide de la lecture les diodes 15, 30 et 45 minutes sont de couleurs rouge (quart d'heure).
La ligne du bas visualise les minutes comprises entre 0 et 4 minutes.
Comme pour les heures, on obtient les minutes en additionnant les lignes 4 et 5.
Sur la photo, l'affichage est de 48 minutes (45 + 3)

Ce qui nous donne : 09:48

A bientôt
icare

Bonjour,
Suite des élucubrations mais certainement pas la fin 8)
Mon horloge de Berlin "Après mise en boîte et avant mise en peinture".

Petite vidéo :

A bientôt
Icare

Pas mal, quoi qu'un peu inutile mais bon au moins t'apprends des choses :slight_smile:

bonjour Icare,

je souhaite réaliser un projet qui ressemble de près au tien: j'ai besoin de sondes de température, de monoxyde de carbone et d'humidité de l'air qui une fois les résultats interprétés vont moduler des circuits (air frais notamment) et donner des informations via ethernet

penses tu que je peux partir sur la base de ton projet?

cordialement

Bonsoir,
Bien sur tout est possible, j'ai utilisé l'exemple du temps et de la température mais il est possible d'y ajouter d'autres capteurs.
J'avais surtout fait des essais sur différents types d'affichage.
Je reste à ta disposition pour d'autres renseignements si tu le souhaites.

guix:
Pas mal, quoi qu'un peu inutile mais bon au moins t'apprends des choses :slight_smile:

INUTILE, donc indispensable
pourquoi toujours faire des choses utiles?

Bonsoir,

infobarquee:
INUTILE, donc indispensable
pourquoi toujours faire des choses utiles?

Je suis tout à fait d'accord avec toi et que les choses inutiles sont extrêmement indispensable.
Je trouve que l'on plus d'énergie et de motivation pour les choses inutiles
Il ne nous reste plus qu'à faire apologie des choses inutiles
@+