
tempe
Revision 2:778929fc1520, committed 2021-06-22
- Comitter:
- emelinegen
- Date:
- Tue Jun 22 12:34:28 2021 +0000
- Parent:
- 1:7bf2fdef45c9
- Commit message:
- temp
Changed in this revision
diff -r 7bf2fdef45c9 -r 778929fc1520 DS18B20.cpp --- a/DS18B20.cpp Mon Jun 21 09:55:09 2021 +0000 +++ b/DS18B20.cpp Tue Jun 22 12:34:28 2021 +0000 @@ -20,14 +20,15 @@ } ScratchPad_t; -DigitalOut conversionInProgress(LED4); // conversion in progress -DigitalOut resetFailure(LED1); // for error reporting +DigitalOut conversionInProgress(D1); // conversion in progress +DigitalOut resetFailure(D2); // for error reporting extern DigitalInOut sensor; // sensor pin static void inError() { while (1) { resetFailure = !resetFailure; - wait(0.2); + ThisThread::sleep_for(200ms); + //wait(0.2); } } @@ -76,11 +77,13 @@ } // temperature is store as 7.4 fixed point format (assuming 12 bit conversion) -void displayTemperature(Serial& s) { +float displayTemperature() { DoConversion(); uint32_t temp = GetTemperature(); float f = (temp & 0x0F) * 0.0625; // calculate .4 part f += (temp >> 4); // add 7.0 part to it - s.printf("Temp is %2.1fC\n\r", f); // display in 2.1 format + //printf("Temp is %2.1fC\n\r", f); // display in 2.1 format + printf("Temp is %d C\n\r", (int)(f*10)); // display in 2.1 format + return f; }
diff -r 7bf2fdef45c9 -r 778929fc1520 DS18B20.h --- a/DS18B20.h Mon Jun 21 09:55:09 2021 +0000 +++ b/DS18B20.h Tue Jun 22 12:34:28 2021 +0000 @@ -17,6 +17,6 @@ ROM_Code_t ReadROM() ; // temperature is store as 7.4 fixed point format (assuming 12 bit conversion) -void displayTemperature(Serial& s) ; +float displayTemperature() ; #endif \ No newline at end of file
diff -r 7bf2fdef45c9 -r 778929fc1520 main.cpp --- a/main.cpp Mon Jun 21 09:55:09 2021 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,29 +0,0 @@ -#include "mbed.h" -#include <stdint.h> -#include "DS18B20.h" - -DigitalInOut sensor(D8); // sensor connected to pin 5 - -Ticker timer; // used for our microsec timing -Serial pc(USBTX, USBRX); // serial comms over usb back to console - -int main() { - pc.printf("\n\r=====================================================\n\r"); - pc.printf("DS18B20 Configuration\n\r"); - sensor.mode(PullUp); - - ROM_Code_t ROM_Code = ReadROM(); - pc.printf("Family code: 0x%X\n\r", ROM_Code.BYTES.familyCode); - pc.printf("Serial Number: "); - for (uint32_t i = 6; i != 0; --i) { - pc.printf("%02X%s", ROM_Code.BYTES.serialNo[i-1], (i != 1)?":":"\r\n"); - } - pc.printf("CRC: 0x%X\r\n", ROM_Code.BYTES.crc); - - pc.printf("\n\rRunning temperature conversion...\n\r"); - while (1) { - displayTemperature(pc); - wait(1); - } -} -