Daniel Blomdahl / Mbed 2 deprecated multiple_variable_temp

Dependencies:   MAX31855 SDFileSystem mbed

Committer:
JLarkin
Date:
Wed Apr 13 20:26:40 2016 +0000
Revision:
10:f5d4d5e30b9b
Parent:
9:c97cd10b11ac
Child:
11:1e56b710b568
Updated for totalTime, tracking half-hours

Who changed what in which revision?

UserRevisionLine numberNew contents of line
DanielBlomdahl 2:a2966bf82e8c 1
DanielBlomdahl 0:42e8fa13c7a9 2 #include "mbed.h"
DanielBlomdahl 2:a2966bf82e8c 3 #include "MAX31855.h"
DanielBlomdahl 6:76e8649a643f 4 #include "SDSaveFunction.h"
DanielBlomdahl 0:42e8fa13c7a9 5
DanielBlomdahl 2:a2966bf82e8c 6 Serial pc(USBTX,USBRX);
DanielBlomdahl 2:a2966bf82e8c 7 SPI spi(NC,PTD3,PTD1);
DanielBlomdahl 7:9032b52be810 8 SPI sdspi(PTE3,PTE1,PTE2);
DanielBlomdahl 9:c97cd10b11ac 9 DigitalIn eject(PTA4); // INT2
DanielBlomdahl 9:c97cd10b11ac 10 DigitalOut greenLed(LED2);
DanielBlomdahl 9:c97cd10b11ac 11 DigitalOut redLed(LED1);
DanielBlomdahl 2:a2966bf82e8c 12
DanielBlomdahl 2:a2966bf82e8c 13 MAX31855 thermometer1(spi,PTC4);
DanielBlomdahl 2:a2966bf82e8c 14 MAX31855 thermometer2(spi,PTC3);
DanielBlomdahl 7:9032b52be810 15 AnalogIn solarPanel(PTB2);
DanielBlomdahl 1:8116bd9d3c46 16 Timer t;
DanielBlomdahl 0:42e8fa13c7a9 17
DanielBlomdahl 7:9032b52be810 18
DanielBlomdahl 0:42e8fa13c7a9 19 int main()
DanielBlomdahl 0:42e8fa13c7a9 20 {
JLarkin 10:f5d4d5e30b9b 21 greenLed = 1;
JLarkin 10:f5d4d5e30b9b 22 redLed = 0;
JLarkin 10:f5d4d5e30b9b 23 float temp1, temp2;
JLarkin 10:f5d4d5e30b9b 24 float lastTime = 0;
JLarkin 10:f5d4d5e30b9b 25 float dt = 0.5;
JLarkin 10:f5d4d5e30b9b 26 float voltage = 0;
JLarkin 10:f5d4d5e30b9b 27 float halfHour = 0;
JLarkin 10:f5d4d5e30b9b 28 float totalTime;
JLarkin 10:f5d4d5e30b9b 29 t.start();
JLarkin 10:f5d4d5e30b9b 30 mountSDCard();
JLarkin 10:f5d4d5e30b9b 31 openDataFile();
JLarkin 10:f5d4d5e30b9b 32 while (halfHour<=6) {
JLarkin 10:f5d4d5e30b9b 33 if (eject == 0) {
JLarkin 10:f5d4d5e30b9b 34 greenLed = 0;
JLarkin 10:f5d4d5e30b9b 35 redLed = 1;
JLarkin 10:f5d4d5e30b9b 36 break;
JLarkin 10:f5d4d5e30b9b 37 }
JLarkin 10:f5d4d5e30b9b 38 totalTime = 30*60*halfHour + t.read();
JLarkin 10:f5d4d5e30b9b 39 if (totalTime>lastTime+dt) {
JLarkin 10:f5d4d5e30b9b 40 lastTime = totalTime;
DanielBlomdahl 7:9032b52be810 41 temp1 = thermometer1.read();
DanielBlomdahl 9:c97cd10b11ac 42 wait(.02);
DanielBlomdahl 7:9032b52be810 43 temp2 = thermometer2.read();
DanielBlomdahl 9:c97cd10b11ac 44 voltage = solarPanel.read();
DanielBlomdahl 8:882ccc7bbc8a 45 pc.printf("Voltage %f\t Temp1 %f\t Temp2 %f\t Time %f\r\n", voltage, temp1, temp2, lastTime);
DanielBlomdahl 8:882ccc7bbc8a 46 writeData(lastTime, temp1, temp2, voltage);
DanielBlomdahl 7:9032b52be810 47 }
JLarkin 10:f5d4d5e30b9b 48 if (t.read()>=30*60){
JLarkin 10:f5d4d5e30b9b 49 halfHour++;
JLarkin 10:f5d4d5e30b9b 50 t.reset();
JLarkin 10:f5d4d5e30b9b 51 }
JLarkin 10:f5d4d5e30b9b 52 }
JLarkin 10:f5d4d5e30b9b 53 closeDataFile();
DanielBlomdahl 0:42e8fa13c7a9 54 }