19) Schéma complet de l’électronique pilotée par la carte Arduino NANO.

Détaillé sur la Fig.50 proposée ci-dessous, les diodes électroluminescentes vertes en parallèles sur les sections R ne sont pas représentées pour simplifier le dessin. Compte tenu du « faible » nombre d’options envisagées pour cette application, dès le début un clavier ne comportant que deux boutons poussoir a été adopté. Ces deux B.P. seront gérés par l’entrée analogique A0. L’utilisation d’un petit écran OLED d’une part, et d’un module Horloge/Calendrier d’autres part imposent la mise en Å“uvre d’une ligne I2C qui sur Arduino monopolise traditionnellement les broches « analogiques » A4 et A5. Comme un petit avertisseur sonore de type Buzzer complète l’écran d’informations graphique, ce dernier est piloté par la sortie binaire D2. On ne branche rien sur D0 et D1 qui sont requises pour le dialogue série USB avec l’IDE en phase de développement logiciel. La broche binaire D3 est nécessaire au pilotage du circuit Horloge, usage imposé par la bibliothèque associée. Les études préliminaires ont montré que deux LEDs seraient utiles pour visualiser l’état du petit clavier. Une LED verte pilotée par D10 signalera l’appui sur une touche, ou l’attente d’une frappe au clavier. La gestion d’un nombre élevé de fonctions avec seulement deux touches est facilitée par la notion d’appui court ou d’appui long. Dès qu’un enfoncement dépasse la durée minimale d’un clic considéré comme long, une LED rouge pilotée par D11 s’allumera. Vu que l’on dispose de plus de sorties binaires sur l’ATmega328 que n’en impose cette application, on peut se permettre « d’en gaspiller ». (C’est la raison qui nous a déjà poussés à ne pas utiliser D0 et D1.) Aussi, une LED bleue clignotera une fois par seconde pour visualiser le bon fonctionnement de la boucle de base void loop() du logiciel. Pour minimiser la consommation sur les accumulateurs en période « nocturne », cette dernière sera « pulsée » par de courts flashs lumineux. La durée est programmée pour avoir l’activation la plus courte possible, compatible toutefois avec une observation diurne efficace. Sur le schéma proposé, on utilise une LED triple à cathodes communes, car cette dernière était disponible en local, et ainsi fait gagner de la place. Naturellement vous pouvez librement la remplacer par trois composants séparés, et sélectionner les couleurs de votre choix. Notez au passage que diverses broches de sorties peuvent être permutées. L’implantation définitive résulte de choix modifiés lors de l’étude du circuit imprimé pour en faciliter la conception. Pour information, il aurait été possible de ne concevoir qu’un seul circuit imprimé principal supportant l’intégralité des composants. (Mis à part le clavier bien sûr.) Vous constaterez que sur le prototype on « éparpille » l’ensemble de l’électronique sur plusieurs petits modules. Il ne faudra pas vous en étonner, car c’est la conséquence d’un développement dont plusieurs remises en cause ont imposé des ajouts et un empilage « gigogne ».

Pouvoir surveiller les divers paramètres physiques de notre petite application coule de source. Dans ce but on utilise l’entrée analogique A6 pour mesurer la tension sur les piles rechargeables et ainsi pouvoir estimer leur niveau de charge ou de décharge. Par ailleurs, l’entrée analogique A7 sera réservée pour mesurer la tension sur l’entrés VIN de la carte Arduino. Enfin, la carte Arduino NANO fournissant huit entrée analogiques possibles, on peut utiliser A3 pour surveiller la tension de la petite pile de 3,3v qui sur le module horloge sauvegarde en permanence le fonctionnement quand le module n’est pas alimenté en +5Vcc. Comme il est vital de ne pas consommer de courant sur cette petite pile alcaline de faible capacité, une résistance de 15MΩ est insérée en série avec A3. (Voir plus avant les modifications à effectuer sur le petit module.) Pour les mêmes raisons, inutile de laisser la 15MΩ en permanence branchée sur A3. C’est la raison pour laquelle un petit « strap à languette » permet de l’isoler. Une bonne idée consiste à prévoir un petit connecteur HE14 qui autorise son placement en deux positions. Quand il est débranché de A3, on le « range » juste à coté. Les deux picots de réception forcent alors un état « 0 » sur l’entrée binaire D7. De cette façon, sur l’écran la valeur de la tension sera remplacée par « //// » prévenant l’opérateur que la mesure n’est pas effective, invitant ce dernier à déplacer provisoirement le « strap à languette » pour faire afficher la valeur de la tension s’il le désire. La sélection de la pile rechargeable testée par l’entrée analogique A6 sera effectuée manuellement à l’aide d’un inverseur. Comme on dispose de plus de broches d’interfaçage que nécessaire, on adoptera un inverseur double. Ainsi, l’une de ses sections sera testée par l’entrée binaire D9, et ainsi préciser automatiquement sur l’afficheur quel est l’élément actuellement mesuré. (Et oui, on donne dans le luxe, sans compter que l’on va persister et abuser dans ce sens avec le logiciel !) Notez au passage que D2 et D3 ne sont pas reliées directement aux accumulateurs rechargeables, mais par l’intermédiaire de connecteurs HE14 à deux picots. Au moyen de « straps » on peut ainsi à convenance isoler ces sections pour effectuer les essais de validation tant matérielle que logicielle.

La suite est ici.