fuck this

Dependencies:   BMP280

Committer:
Swaggie
Date:
Tue Jan 09 11:39:59 2018 +0000
Revision:
19:40c721f01ed2
Parent:
13:41c394fa932c
Child:
20:25939e03b803
Moved SD card HW to main file. Started detail commenting. SDCard commenting needs completing.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
noutram 0:65ff7ad381e8 1 #include "mbed.h"
Swaggie 2:5a38ae8459d5 2 #include "WebUI.h"
Swaggie 2:5a38ae8459d5 3 #include "Serial.h"
Swaggie 3:8fa1e77c8a5d 4 #include "Sampling.h"
Swaggie 3:8fa1e77c8a5d 5 #include "LCD.h"
mwthewsey 11:b538e73841ae 6 #include "SDCard.h"
Swaggie 5:bea93c8e50b7 7 #include "SDBlockDevice.h"
mwthewsey 12:03589f1d5c30 8
mwthewsey 12:03589f1d5c30 9 //Hardware setup
Swaggie 19:40c721f01ed2 10 BMP280 sensor(D14, D15); //enviromental sensor
Swaggie 19:40c721f01ed2 11 AnalogIn LDRSensor(A0); //LDR sensor
Swaggie 19:40c721f01ed2 12 DigitalOut SamplingLED(PB_10);//LED to indicate sampling
Swaggie 19:40c721f01ed2 13 //SD Card devices
Swaggie 19:40c721f01ed2 14 InterruptIn SD_WP(PE_10);
Swaggie 19:40c721f01ed2 15 InterruptIn UserButton(USER_BUTTON);
Swaggie 19:40c721f01ed2 16 SDBlockDevice sd(PB_5, D12, D13, D10);
Swaggie 19:40c721f01ed2 17 DigitalOut GreenLED(PB_11);
mwthewsey 12:03589f1d5c30 18
Swaggie 19:40c721f01ed2 19 Serial PC(USBTX, USBRX); //Serial interface
Swaggie 5:bea93c8e50b7 20 //SD Card Object
Swaggie 19:40c721f01ed2 21 ENVDISPLAY lcd(D9, D8, D7, D6, D4, D2,PE_12, PE_14); //LCD pins and two timeset buttons
noutram 0:65ff7ad381e8 22
noutram 0:65ff7ad381e8 23 int main()
noutram 0:65ff7ad381e8 24 {
Swaggie 2:5a38ae8459d5 25 //Initialise devices
Swaggie 19:40c721f01ed2 26 firstSample = true; //Set only at start of program
Swaggie 2:5a38ae8459d5 27 //Hardware Self Test
mwthewsey 12:03589f1d5c30 28
Swaggie 19:40c721f01ed2 29 //Initialise interrupts and times
Swaggie 19:40c721f01ed2 30 SerialStart(); //Start serial comms
Swaggie 19:40c721f01ed2 31 lcd.Start(); //Start LCD functionality
Swaggie 19:40c721f01ed2 32 SDCardInit(); //Start SDCard functionality
Swaggie 19:40c721f01ed2 33 WebUISetup(); //Start Web Interface
Swaggie 19:40c721f01ed2 34 ConfigThreadsAndIR(); //Start sampling
Swaggie 19:40c721f01ed2 35
Swaggie 19:40c721f01ed2 36
Swaggie 6:8e1795a5886b 37 //Run
Swaggie 19:40c721f01ed2 38 while (true) {
Swaggie 19:40c721f01ed2 39 if (NewEnvSample && NewLDRSample) {
Swaggie 7:bf9f92ff02e8 40 //New samples have been captured and are in the register
Swaggie 7:bf9f92ff02e8 41 IncrementIndex();
Swaggie 19:40c721f01ed2 42 NewEnvSample = false; //Reset sampling threads
Swaggie 6:8e1795a5886b 43 NewLDRSample = false;
Swaggie 19:40c721f01ed2 44
Swaggie 19:40c721f01ed2 45 //push latest samples to LCD.
mwthewsey 11:b538e73841ae 46 lcd.UpdateData(tempReadings[currentIndex],presReadings[currentIndex],LDRReadings[currentIndex],timeReadings[currentIndex]);
mwthewsey 9:ac5673cca703 47
Swaggie 6:8e1795a5886b 48 }
Swaggie 19:40c721f01ed2 49
Swaggie 19:40c721f01ed2 50 }
Swaggie 7:bf9f92ff02e8 51 }