KIT Solar Car Project / Mbed 2 deprecated mbed_max6675_4_LM61_AEmicroSD

Dependencies:   mbed SDFileSystem

Committer:
BoostNori
Date:
Thu Mar 19 04:45:23 2020 +0000
Revision:
0:d68d5418c985
a

Who changed what in which revision?

UserRevisionLine numberNew contents of line
BoostNori 0:d68d5418c985 1
BoostNori 0:d68d5418c985 2 #include <mbed.h>
BoostNori 0:d68d5418c985 3 #include "max6675_4.h"
BoostNori 0:d68d5418c985 4
BoostNori 0:d68d5418c985 5 max6675_4::max6675_4(SPI& _spi_4, PinName _ncs_4) : spi_4(_spi_4), ncs_4(_ncs_4) {
BoostNori 0:d68d5418c985 6
BoostNori 0:d68d5418c985 7 }
BoostNori 0:d68d5418c985 8
BoostNori 0:d68d5418c985 9 float max6675_4::read_temp_4() {
BoostNori 0:d68d5418c985 10 short value_4 = 0;
BoostNori 0:d68d5418c985 11 float temp_4 = 0;
BoostNori 0:d68d5418c985 12
BoostNori 0:d68d5418c985 13 uint8_t highByte_4=0;
BoostNori 0:d68d5418c985 14 uint8_t lowByte_4=0;
BoostNori 0:d68d5418c985 15
BoostNori 0:d68d5418c985 16 select_4();
BoostNori 0:d68d5418c985 17 wait(.25); //This delay is needed else it does'nt seem to update the temp
BoostNori 0:d68d5418c985 18
BoostNori 0:d68d5418c985 19 highByte_4 = spi_4.write(0);
BoostNori 0:d68d5418c985 20 lowByte_4 = spi_4.write(0);
BoostNori 0:d68d5418c985 21 deselect_4();
BoostNori 0:d68d5418c985 22
BoostNori 0:d68d5418c985 23
BoostNori 0:d68d5418c985 24 if (lowByte_4 & (1<<2)) {
BoostNori 0:d68d5418c985 25 error("No Probe");
BoostNori 0:d68d5418c985 26 } else {
BoostNori 0:d68d5418c985 27 value_4 = (highByte_4 << 5 | lowByte_4>>3);
BoostNori 0:d68d5418c985 28 }
BoostNori 0:d68d5418c985 29
BoostNori 0:d68d5418c985 30 temp_4 = (value_4*0.25); // Multiply the value by 0.25 to get temp in ˚C or
BoostNori 0:d68d5418c985 31 // * (9.0/5.0)) + 32.0; // Convert value to ˚F (ensure proper floats!)
BoostNori 0:d68d5418c985 32
BoostNori 0:d68d5418c985 33 return temp_4;
BoostNori 0:d68d5418c985 34 }
BoostNori 0:d68d5418c985 35
BoostNori 0:d68d5418c985 36 void max6675_4::select_4() {
BoostNori 0:d68d5418c985 37 ncs_4 = 0;
BoostNori 0:d68d5418c985 38 }
BoostNori 0:d68d5418c985 39
BoostNori 0:d68d5418c985 40 void max6675_4::deselect_4() {
BoostNori 0:d68d5418c985 41 ncs_4 = 1;
BoostNori 0:d68d5418c985 42 }