Étape 7: Le Code
.. .please remarque le lcd4bit original bibliothèque possède beaucoup de retards inutiles dans ce qui ralentit le code vers le bas beaucoup, ils devraient être supprimés (regarder dans le fichier de bibliothèque de RPC pour trouver des indices).
En bref, le code (dans l’ordre de la façon dont elle apparaît dans le code ci-joint) effectue :
BOUCLE PRINCIPALE
-#defines M, les valeurs de C pour le linéaire et les équations de journal nécessaires pour traduire les valeurs de bits pour les entrées. soit y = mx + c et y = Mlog (x) + C
-tailles #defines pour une moyenne de tableau, échantillonnage fois, taille de stockage de histerisis niveaux, Pins, EEProm.
-définit les variables, valeurs etc. de déclencher.
BOUCLE PRINCIPALE
-Lire dans valeurs de capteur toutes les millisecondes « SENSOR_INTERVAL ».
-Met les nouvelles valeurs dans un tableau et ce tableau est en moyenne.
-Effectue des calculs sur les moyennes pour donner une valeur de « bonne » c'est-à-dire centigrade (mes excuses à mes cousins américains mais je suis métrique), ppm (co2), l’humidité Relative.
-Affiche les mises à jour de nouveau temp, l’humidité et des niveaux de Co2 à écran LCD.
-Stocke les valeurs d’eeprom toutes les millisecondes « EE_PROM_INTERVAL ».
-Relais détente si dessous/dessus de déclencher, toutes les millisecondes « Intervalle ».
-Code du clavier qui met en œuvre un système de menu rudimentaire permettant le déclenchement à modifier les valeurs et les valeurs jugées sous-évaluées à serial EEPROM.
-Funtions pour aider avec étalement et touche sélection.
J’ai essayé de donner une explication dans le code quant à ce que chaque section fait, par tous les moyens vont dans et jetez un coup d’oeil. Si vous êtes plus enclin à la peur de lire le code, s’il vous plaît noter les principales choses à noter sont les instructions #define pour manipuler les intervalles pour les lire, de susciter et d’étalement et les instructions #define pour l’étalonnage des valeurs M et C.
Elles sont toutes situées en haut du code alors jetez un oeil et de s’amuser à tripoter.
Veuillez noter que le code utilise la bibliothèque de l’EEprom pour la lecture de l’écriture des valeurs de l’eeprom, la bibliothèque lcd4bit (modifiées, les retards sont supprimés et le brochage changé) pour l’écran lcd et stdlib pour convertir int en char pour l’écriture sur l’écran LCD.