Dernière version « du pauvre », le logiciel d’exploitation P15_Exploitation_pour_V4.ino concrétise l’utilisation possible d’une carte Arduino NANO pour respecter les nombreux critères du cahier des charges définis dans le chapitre précédent. C’est toujours le développement d’un logiciel qui fait émerger les faiblesses des études préliminaires ou qui invite à ajouter aux prévisions initiales des améliorations. C’est exactement ce qui c’est passé. Par exemple, non prévu dans le préambule, quand le clic devient long, a été ajouté l’allumage de la LED rouge pour en informer l’opérateur. D’autres part, avait été oublié le cas de la première minute. On ne peut pas afficher de valeur du CO2 car il faut faire la moyenne de 60 mesures. Aussi, pour avertir l’opérateur de cette contrainte, le message explicite de la Fig.83 est affiché durant ce laps de temps. Du coup, se pose un problème pour la génération des caractères spéciaux. On ne peut pas ajouter le « è » et il faut faire un choix. Aussi, comme explicité plus avant la présence de
ne se justifie plus, du coup dans la liste des caractères rouges, le « è » prend sa place. Comme il restait largement assez de place pour ajouter les subroutines relatives aux affichages sur la ligne série du Moniteur de l’IDE, ces dernières ont été implémentées. Du reste, comme le programme d’exploitation n’occupe vraiment pas
beaucoup de place dans la mémoire dédiée, j’ai cherché désespérément à « rentabiliser » l’ATmega328. Globalement le code a été optimisé conformément aux conseils de programmation résumés dans le chapitre 26 en Page 64 et il tient du moins j’y crois, le minimum de place pour s’exécuter normalement. En revanche, comme je n’aime pas les programmes qui n’utilisent que faiblement les ressources du microcontrôleur, j’ai gavé les affichages sur la ligne série du Moniteur de l’IDE et surtout, ajouté le « journal » d’explications quand sur RESET on provoque un clic long. C’est un mode durant lequel chaque clic court fait changer l’une des sept pages d’écran possibles en permutation circulaire. Celle en 1 précise comme montré sur la Fig.84 la façon de passer au fonctionnement standard. On remarque que toutes les références au CO2 de 2 à 7 utilisent un 2 indicé. Les accentués en 2, en 4 et en 6 sont corrects. Par contre le ‘g‘ en 6 est celui d’origine, car il ne restait plus d’emplacement pour créer une matrice personnelle de plus.
Problème du drapeau qui n’est jamais affiché : Lors de l’établissement du « cahier des charges », une erreur de logique a été commise. En effet, lorsque le taux de CO2 dépassait 599, il était prévu d’afficher l’émoticône de la Fig.79 en C. Hors, dans un tel cas c’est le texte de la Fig.80 qui est visualisé et la présence de
ne se justifie plus. Cet emplacement devenant disponible on y loge le « è » trop heureux d’y trouver sa place.
Avec à peine 44% de l’espace disponible pour le code, je ne sais plus quoi ajouter pour consommer des octets. Aussi, ce logiciel d’exploitation étant considéré comme abouti, nous allons pouvoir envisager la « version du riche », c’est à dire celle avec un écran graphique. Ce n’est pas que l’écran OLED utilisé soit très onéreux. Étant non tactile, non muni de matrices aux dalles colorées, il demeure d’un coût encore très abordable. La richesse vient dans sa faculté à afficher des images de 64 x 128 PIXELs. Ce n’est pas encore du « full HD« , mais cette définition permet une foule de possibilités qui échappent aux composants « LCD« . Sans les exploiter toutes, nous allons avec la dernière version, la n°5, expérimenter le plaisir de construire des images. (Quand on utilise du C++ pour peindre de belles Å“uvres, fussent-elles rudimentaires, ce n’est jamais simple !)
La suite est ici.