Manages the 1-wire bus

Dependents:   oldheating heating

Revision:
9:6f663ad53c7e
Parent:
8:ceafef18cbf7
Child:
11:3859fee99d5d
--- a/web/web-1wire-class.inc	Wed Jun 10 10:02:55 2020 +0000
+++ b/web/web-1wire-class.inc	Wed Jun 10 11:41:03 2020 +0000
@@ -3,30 +3,16 @@
 "\n"
 "class OneWire\n"
 "{\n"
-"    static parseDS18B20(text)\n"
+"    static DS18B20ToString(value)\n"
 "    {\n"
-"        switch (text)\n"
-"        {\n"
-"            case '7FFF': return 'CRC error'                     ;\n"
-"            case '7FFE': return 'ROM not found'                 ;\n"
-"            case '7FFD': return 'Timed out'                     ;\n"
-"            case '7FFC': return 'No device detected after reset';\n"
-"            case '7FFB': return 'Device removed during search'  ;\n"
-"        }\n"
-"        let isNegative = false;\n"
-"        switch(text.charAt(0))\n"
+"        switch (value)\n"
 "        {\n"
-"            case '8': text = '7' + text.substr(1, 3); isNegative = true; break;\n"
-"            case '9': text = '6' + text.substr(1, 3); isNegative = true; break;\n"
-"            case 'A': text = '5' + text.substr(1, 3); isNegative = true; break;\n"
-"            case 'B': text = '4' + text.substr(1, 3); isNegative = true; break;\n"
-"            case 'C': text = '3' + text.substr(1, 3); isNegative = true; break;\n"
-"            case 'D': text = '2' + text.substr(1, 3); isNegative = true; break;\n"
-"            case 'E': text = '1' + text.substr(1, 3); isNegative = true; break;\n"
-"            case 'F': text = '0' + text.substr(1, 3); isNegative = true; break;\n"
+"            case 0x7FFF: return 'CRC error'                     ;\n"
+"            case 0x7FFE: return 'ROM not found'                 ;\n"
+"            case 0x7FFD: return 'Timed out'                     ;\n"
+"            case 0x7FFC: return 'No device detected after reset';\n"
+"            case 0x7FFB: return 'Device removed during search'  ;\n"
 "        }\n"
-"        let value = parseInt(text, 16) / 16.0;\n"
-"        if (isNegative) value = -value;\n"
-"        return value;\n"
+"        return (value / 16.0).toFixed(1);\n"
 "    }\n"
 "}"
\ No newline at end of file