Stap 4: Software
De software voor de loggers is gemaakt met behulp van de Arduino IDE. Code moest worden geschreven te installeren en controleren van de temperatuursensoren die gebruik maken van de 1-Wire bus, SD-kaart die gebruik maakt van SPI en de RTC die gebruik maakt van de I2C. Eerst de code stelt de benodigde interfaces op zijn beurt en dan presteert initialisatie voor de randapparatuur als nodig (het maken van een bestand op de SD-kaart bijvoorbeeld). Dan komt het binnen een lus om de poll van de RTC om te zien als de gewenste controle-interval is verstreken. Zo duurt een lezing van elk van de temperatuursensoren en schrijft het resultaat naar de output bestand die is opgemaakt als een CSV-bestand met kolommen voor datum, tijd en temperatuur voor elke sensor.
De broncode (ABIO_DataLogger.ino) is opgenomen in dit artikel. Om de DS18B20 sensoren werken zonder een externe optrekken weerstand op de data lijn die ik een enigszins gewijzigde versie van de privacy-bibliotheek gebruikt om het gebruik van de Arduino van interne pull ups die ik ook heb bijgevoegd. De DS1307RTC-bibliotheek kan worden gevonden hier, anders ik denk dat de afhankelijkheden zijn standaard bibliotheken.