This is some program for air quality monitoring device. Its capabilities span quite a broad range: -read sensor (selection of 2 kinds - both worthless actually) -store measurements on SD card (nice formatting included ®) -display current measurement on LCD -sleep between measurement (but on my Nucleo platform power draw was still unacceptably high) -change measurement interval with on-board keys
Dependencies: DS1307 DS1820 DSM501 GP2Y1010AU0F I2CEeprom SDFileSystem TextLCD_YWROBOT WakeUp keypad_ADC mbed
The device has no upload capabilities. It logs data onto local SD card if one is present. It displays current measurement nevertheless.
I used some libraries: some purpose-made, rest forked public libraries. main.cpp file contains the program. First it initializes modules (EEPROM, RTC, thermometer, dust sensor, LCD, SDcard), then enters endless loop of following sequence:
- take a measurement
- display measurement and save it to the SD card
- enter sleep for *sleep* period
- repeat
Files at revision 0:41f9e684d87e
Name | Size | Actions |
---|---|---|
[up] | ||
DS1307.lib | 61 | Revisions Annotate |
DS1820.lib | 61 | Revisions Annotate |
DSM501.lib | 61 | Revisions Annotate |
GP2Y1010AU0F.lib | 67 | Revisions Annotate |
I2CEeprom.lib | 64 | Revisions Annotate |
SDFileSystem.lib | 67 | Revisions Annotate |
TextLCD.lib | 70 | Revisions Annotate |
WakeUp.lib | 66 | Revisions Annotate |
keypad_ADC.lib | 65 | Revisions Annotate |
main.cpp | 14896 | Revisions Annotate |
mbed.bld | 66 | Revisions Annotate |