Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: MAX31855 SDFileSystem mbed
main.cpp@10:f5d4d5e30b9b, 2016-04-13 (annotated)
- 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?
| User | Revision | Line number | New 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 | } |
