diff --git a/libraries/MCP9808_RT/LICENSE b/libraries/MCP9808_RT/LICENSE index 8eba944a..c3d6b3da 100644 --- a/libraries/MCP9808_RT/LICENSE +++ b/libraries/MCP9808_RT/LICENSE @@ -1,6 +1,6 @@ MIT License -Copyright (c) 2020-2021 Rob Tillaart +Copyright (c) 2020-2022 Rob Tillaart Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/libraries/MCP9808_RT/examples/mcp9808_minimum/mcp9808_minimum.ino b/libraries/MCP9808_RT/examples/mcp9808_minimum/mcp9808_minimum.ino index 70c43aa6..10fa774e 100644 --- a/libraries/MCP9808_RT/examples/mcp9808_minimum/mcp9808_minimum.ino +++ b/libraries/MCP9808_RT/examples/mcp9808_minimum/mcp9808_minimum.ino @@ -1,7 +1,6 @@ // // FILE: mcp9808_minimum.ino // AUTHOR: Rob Tillaart -// VERSION: 0.1.0 // PURPOSE: demo // DATE: 2020-11-12 diff --git a/libraries/MCP9808_RT/examples/mcp9808_offset/mcp9808_offset.ino b/libraries/MCP9808_RT/examples/mcp9808_offset/mcp9808_offset.ino index f4242096..a95be7e3 100644 --- a/libraries/MCP9808_RT/examples/mcp9808_offset/mcp9808_offset.ino +++ b/libraries/MCP9808_RT/examples/mcp9808_offset/mcp9808_offset.ino @@ -1,7 +1,6 @@ // // FILE: mcp9808_offset.ino // AUTHOR: Rob Tillaart -// VERSION: 0.1.0 // PURPOSE: demo // DATE: 2020-11-13 diff --git a/libraries/MCP9808_RT/examples/mcp9808_performance/mcp9808_performance.ino b/libraries/MCP9808_RT/examples/mcp9808_performance/mcp9808_performance.ino index 30233d21..de1833d4 100644 --- a/libraries/MCP9808_RT/examples/mcp9808_performance/mcp9808_performance.ino +++ b/libraries/MCP9808_RT/examples/mcp9808_performance/mcp9808_performance.ino @@ -1,7 +1,6 @@ // // FILE: mcp9808_performance.ino // AUTHOR: Rob Tillaart -// VERSION: 0.1.0 // PURPOSE: demo // DATE: 2020-11-13 diff --git a/libraries/MCP9808_RT/examples/mcp9808_setResolution/mcp9808_setResolution.ino b/libraries/MCP9808_RT/examples/mcp9808_setResolution/mcp9808_setResolution.ino index ab8564b9..2710782f 100644 --- a/libraries/MCP9808_RT/examples/mcp9808_setResolution/mcp9808_setResolution.ino +++ b/libraries/MCP9808_RT/examples/mcp9808_setResolution/mcp9808_setResolution.ino @@ -1,7 +1,6 @@ // // FILE: mcp9808_setResolution.ino // AUTHOR: Rob Tillaart -// VERSION: 0.1.0 // PURPOSE: demo // DATE: 2020-11-13 diff --git a/libraries/MCP9808_RT/examples/mcp9808_test/mcp9808_test.ino b/libraries/MCP9808_RT/examples/mcp9808_test/mcp9808_test.ino index b0b0b6a2..d68f1a18 100644 --- a/libraries/MCP9808_RT/examples/mcp9808_test/mcp9808_test.ino +++ b/libraries/MCP9808_RT/examples/mcp9808_test/mcp9808_test.ino @@ -1,11 +1,8 @@ // // FILE: mcp9808_test.ino // AUTHOR: Rob Tillaart -// VERSION: 0.1.1 // PURPOSE: demo // DATE: 2020-05-03 -// (c) : MIT -// #include "mcp9808.h" diff --git a/libraries/MCP9808_RT/examples/mcp9808_test_alert/mcp9808_test_alert.ino b/libraries/MCP9808_RT/examples/mcp9808_test_alert/mcp9808_test_alert.ino index 1cc23537..67bceb39 100644 --- a/libraries/MCP9808_RT/examples/mcp9808_test_alert/mcp9808_test_alert.ino +++ b/libraries/MCP9808_RT/examples/mcp9808_test_alert/mcp9808_test_alert.ino @@ -1,12 +1,8 @@ // // FILE: mcp9808_test_alert.ino // AUTHOR: Rob Tillaart -// VERSION: 0.1.0 // PURPOSE: demo alert // DATE: 2020-11-12 -// (c) : MIT -// - // // MCP9808 breakout board // +----------+ diff --git a/libraries/MCP9808_RT/examples/mcp9808_test_alert_irq/mcp9808_test_alert_irq.ino b/libraries/MCP9808_RT/examples/mcp9808_test_alert_irq/mcp9808_test_alert_irq.ino index 9b9f2e84..e61dd270 100644 --- a/libraries/MCP9808_RT/examples/mcp9808_test_alert_irq/mcp9808_test_alert_irq.ino +++ b/libraries/MCP9808_RT/examples/mcp9808_test_alert_irq/mcp9808_test_alert_irq.ino @@ -1,12 +1,8 @@ // // FILE: mcp9808_test_alert_irq.ino // AUTHOR: Rob Tillaart -// VERSION: 0.1.0 // PURPOSE: demo alert to interrupt 0 = PIN2 of Arduino UNO. // DATE: 2020-11-16 -// (c) : MIT -// - // // MCP9808 breakout board // +----------+ @@ -29,6 +25,7 @@ MCP9808 ts(24); const uint8_t ALERTPIN = 2; // ADJUST IF NEEDED volatile bool flag = false; + // interrupt routine void detectAlert() { diff --git a/libraries/MCP9808_RT/examples/mcp9808_test_alert_polling/mcp9808_test_alert_polling.ino b/libraries/MCP9808_RT/examples/mcp9808_test_alert_polling/mcp9808_test_alert_polling.ino index ffb1435f..167d09c4 100644 --- a/libraries/MCP9808_RT/examples/mcp9808_test_alert_polling/mcp9808_test_alert_polling.ino +++ b/libraries/MCP9808_RT/examples/mcp9808_test_alert_polling/mcp9808_test_alert_polling.ino @@ -1,12 +1,8 @@ // // FILE: mcp9808_test_alert_polling.ino // AUTHOR: Rob Tillaart -// VERSION: 0.1.0 // PURPOSE: demo alert to PIN5 of Arduino UNO. // DATE: 2020-11-16 -// (c) : MIT -// - // // MCP9808 breakout board // +----------+ @@ -82,3 +78,4 @@ void loop() // -- END OF FILE -- + diff --git a/libraries/MCP9808_RT/keywords.txt b/libraries/MCP9808_RT/keywords.txt index ef43c90a..383f7bc9 100644 --- a/libraries/MCP9808_RT/keywords.txt +++ b/libraries/MCP9808_RT/keywords.txt @@ -1,8 +1,10 @@ # Syntax Colouring Map For MCP9808 + # Data types (KEYWORD1) MCP9808 KEYWORD1 + # Methods and Functions (KEYWORD2) setAddress KEYWORD2 setConfigRegister KEYWORD2 @@ -31,6 +33,7 @@ getRevision KEYWORD2 # Constants (LITERAL1) MCP9808_LIB_VERSION LITERAL1 + MCP9808_THYSTERESIS LITERAL1 MCP9808_SHUTDOWN LITERAL1 MCP9808_CRIT_LOCK LITERAL1 diff --git a/libraries/MCP9808_RT/library.json b/libraries/MCP9808_RT/library.json index 73f8be0d..aae538a9 100644 --- a/libraries/MCP9808_RT/library.json +++ b/libraries/MCP9808_RT/library.json @@ -15,8 +15,9 @@ "type": "git", "url": "https://github.com/RobTillaart/MCP9808_RT.git" }, - "version": "0.1.4", + "version": "0.2.1", "license": "MIT", "frameworks": "arduino", - "platforms": "*" + "platforms": "*", + "headers": "mcp9808.h" } diff --git a/libraries/MCP9808_RT/library.properties b/libraries/MCP9808_RT/library.properties index 2af0c752..6585c815 100644 --- a/libraries/MCP9808_RT/library.properties +++ b/libraries/MCP9808_RT/library.properties @@ -1,5 +1,5 @@ name=MCP9808_RT -version=0.1.4 +version=0.2.1 author=Rob Tillaart maintainer=Rob Tillaart sentence=Arduino Library for I2C MCP9808 temperature sensor diff --git a/libraries/MCP9808_RT/mcp9808.cpp b/libraries/MCP9808_RT/mcp9808.cpp index dad58413..1c6823c9 100644 --- a/libraries/MCP9808_RT/mcp9808.cpp +++ b/libraries/MCP9808_RT/mcp9808.cpp @@ -1,7 +1,7 @@ // // FILE: mcp9808.cpp // AUTHOR: Rob Tillaart -// VERSION: 0.1.4 +// VERSION: 0.2.1 // PURPOSE: Arduino Library for I2C mcp9808 temperature sensor // DATE: 2020-05-03 // URL: https://github.com/RobTillaart/MCP9808_RT @@ -11,10 +11,12 @@ // 0.1.1 2020-11-12 refactor // 0.1.2 2020-11-16 removed hasAlert, removed setAlertPin, // added 2 alert examples, refactor low level -// 0.1.3 2021-01-01 arduino-ci + unit test +// 0.1.3 2021-01-01 Arduino-ci + unit test // 0.1.4 2021-11-08 update build-CI, badges // default offset for offset // default Wire for I2C bus - setAddress() +// 0.2.0 2021-11-19 fix #7 negative temperature +// 0.2.1 2021-12-21 update library.json, license, minor edits #include "mcp9808.h" @@ -214,7 +216,7 @@ float MCP9808::readFloat(uint8_t reg) } if (val & 0x1000) // negative value { - return 256 - (val & 0x0FFF) * 0.0625; + return ((val & 0x0FFF) * 0.0625) - 256.0; } return (val & 0x0FFF) * 0.0625; } diff --git a/libraries/MCP9808_RT/mcp9808.h b/libraries/MCP9808_RT/mcp9808.h index 94ea7e18..f2d8a2a7 100644 --- a/libraries/MCP9808_RT/mcp9808.h +++ b/libraries/MCP9808_RT/mcp9808.h @@ -2,7 +2,7 @@ // // FILE: mcp9808.h // AUTHOR: Rob Tillaart -// VERSION: 0.1.4 +// VERSION: 0.2.1 // PURPOSE: Arduino Library for I2C mcp9808 temperature sensor // DATE: 2020-05-03 // URL: https://github.com/RobTillaart/MCP9808_RT @@ -17,21 +17,21 @@ // 24..31 == 0x18..0x1F -#define MCP9808_LIB_VERSION (F("0.1.4")) +#define MCP9808_LIB_VERSION (F("0.2.1")) // CONFIGURATION REGISTER MASKS // check the datasheet for exact usage -#define MCP9808_THYSTERESIS 0x0600 -#define MCP9808_SHUTDOWN 0x0100 -#define MCP9808_CRIT_LOCK 0x0080 -#define MCP9808_WIN_LOCK 0x0040 -#define MCP9808_INT_CLEAR 0x0020 -#define MCP9808_ALERT_STATUS 0x0010 -#define MCP9808_ALERT_CTRL 0x0008 -#define MCP9808_ALERT_SELECT 0x0004 -#define MCP9808_ALERT_POLAR 0x0002 -#define MCP9808_ALERT_MODE 0x0001 +#define MCP9808_THYSTERESIS 0x0600 +#define MCP9808_SHUTDOWN 0x0100 +#define MCP9808_CRIT_LOCK 0x0080 +#define MCP9808_WIN_LOCK 0x0040 +#define MCP9808_INT_CLEAR 0x0020 +#define MCP9808_ALERT_STATUS 0x0010 +#define MCP9808_ALERT_CTRL 0x0008 +#define MCP9808_ALERT_SELECT 0x0004 +#define MCP9808_ALERT_POLAR 0x0002 +#define MCP9808_ALERT_MODE 0x0001 class MCP9808 diff --git a/libraries/MCP9808_RT/test/unit_test_001.cpp b/libraries/MCP9808_RT/test/unit_test_001.cpp index ad0f2a3d..0af51fe7 100644 --- a/libraries/MCP9808_RT/test/unit_test_001.cpp +++ b/libraries/MCP9808_RT/test/unit_test_001.cpp @@ -39,6 +39,7 @@ unittest_setup() { + fprintf(stderr, "MCP9808_LIB_VERSION: %s\n", (char *) MCP9808_LIB_VERSION); } unittest_teardown() @@ -46,12 +47,24 @@ unittest_teardown() } -// TODO more can be tested if there is a Godmode->Wire stub +unittest(test_constants) +{ + assertEqual(MCP9808_THYSTERESIS , 0x0600); + assertEqual(MCP9808_SHUTDOWN , 0x0100); + assertEqual(MCP9808_CRIT_LOCK , 0x0080); + assertEqual(MCP9808_WIN_LOCK , 0x0040); + assertEqual(MCP9808_INT_CLEAR , 0x0020); + assertEqual(MCP9808_ALERT_STATUS, 0x0010); + assertEqual(MCP9808_ALERT_CTRL , 0x0008); + assertEqual(MCP9808_ALERT_SELECT, 0x0004); + assertEqual(MCP9808_ALERT_POLAR , 0x0002); + assertEqual(MCP9808_ALERT_MODE , 0x0001); +} + +// TODO more can be tested if there is a Godmode->Wire stub unittest(test_constructor) { - fprintf(stderr, "VERSION: %s\n", (char *) MCP9808_LIB_VERSION); - MCP9808 ts(24); assertTrue(ts.setAddress(24, &Wire) ); assertTrue(ts.isConnected());