Implement a SD card into HW6
Dependencies: SDFileSystem mbed
Fork of shomberg_hw_6 by
Diff: main.cpp
- Revision:
- 9:da0b72918880
- Parent:
- 8:d6560caeda9a
- Child:
- 10:c9a438114fbd
--- a/main.cpp Tue Oct 23 14:04:01 2018 +0000 +++ b/main.cpp Thu Oct 25 18:12:33 2018 +0000 @@ -10,7 +10,7 @@ @author Russell Shomberg @created 2018-10-23 - @revised 2018-10-23 + @revised 2018-10-25 @version 0.0 Issues: No Decimal point for temperature @@ -19,27 +19,17 @@ // INCLUDES #include "mbed.h" +#include "OCE360Input.h" +#include "SegDisplay.h" -// INPUTS -DigitalIn switchPosition(p7); // wire p7 to middle connection of 2 position switch between Vref and GND -AnalogIn Ain(p20); // wire p20 to a variable resister connected from Vref and GND // OUTPUTS Serial pc(USBTX, USBRX); // for debugging -//// Pin Map for 7-Seg starts bottom left, goes CCW -BusOut Seg1(p12,p13,p14,p15,p16,p17,p18,p19); //01 02 03 04 05 06 07 08 09 10 -BusOut Seg2(p21,p22,p23,p24,p25,p26,p27,p28); //E D CC C DP B A CC F G - -// FUNCTIONS -char SegConvert(int SegValue); - // VARIABLES int outputT= 0; float v0; float deltav; -float temp0; -float deltatemp; float val; int ones; int tens; @@ -47,26 +37,23 @@ int main() { // read starting voltage from temperature sensor - v0 = Ain*3.5*1000; + v0 = read_sensor(); while(1) { // Read Switch if on output temp else output mV - outputT = switchPosition; - - // Read temperature sensor - deltav = Ain*3.5*1000-v0; + outputT = read_switch(); + deltav = read_sensor()-v0; // Output to terminal if (outputT) { // Convert to temp - deltatemp = deltav/10; - printf("Temperature Difference = %1.2f degC\n\r", deltatemp); - val = deltatemp; + val = convert_mV_to_temp(deltav); + //printf("Temperature Difference = %1.2f degC\n\r", val); } else { - printf("Voltage Difference = %1.2f mV\n\r", deltav); val = deltav; + //printf("Voltage Difference = %1.2f mV\n\r", val); } // Convert val to ones and tens char @@ -74,8 +61,8 @@ tens = fmod(rint(val) / 10, 10); - Seg1 = ~SegConvert(ones); - Seg2 = ~SegConvert(tens); + Seg1 = SegConvert(ones); + Seg2 = SegConvert(tens); wait(1); @@ -84,25 +71,3 @@ } - -//ones: 12 13 14 15 16 17 18 19 -// A B C D E F G P -//tens: 21 22 23 24 25 26 27 28 -// - -char SegConvert(int SegValue) { // function 'SegConvert' - char SegByte=0x00; - switch (abs(SegValue)) { // ABCDEFGP - case 0 : SegByte= 0x3F;break; // 11111100 binary - case 1 : SegByte= 0x06;break; // 01100000 binary - case 2 : SegByte= 0x5B;break; // 11110110 binary - case 3 : SegByte= 0x4F;break; // 10011110 binary - case 4 : SegByte= 0x66;break; // 11001100 binary - case 5 : SegByte= 0x6D;break; // 11011010 binary - case 6 : SegByte= 0x7D;break; // 11111010 binary - case 7 : SegByte= 0x07;break; // 00001110 binary - case 8 : SegByte= 0x7F;break; // 11111110 binary - case 9 : SegByte= 0x6F;break; // 11011110 binary - } - return SegByte; -} \ No newline at end of file