pwm period is now 200us instead of the default 20ms veml6040 config is now AF_BIT | TRIG_BIT

Dependencies:   mbed MMA8451Q USBDevice WakeUp vt100

Fork of afero_node_suntory_2017_06_15 by Orefatoi

Revision:
2:dfe671e31221
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/util/CheckSum.cpp	Tue Jan 24 10:00:28 2017 +0000
@@ -0,0 +1,52 @@
+#include "CheckSum.h"
+
+uint32_t *CheckSum::table = NULL;
+
+CheckSum::CheckSum()
+{
+    reset();
+    reset_table();
+}
+
+void
+CheckSum::reset()
+{
+    checkSum = 0xFFFFFFFF;
+}
+
+void
+CheckSum::reset_table()
+{
+   if(table==NULL)
+    {
+        table = new uint32_t[256];
+        for (uint32_t i = 0; i < 256; i++)
+        {
+            uint32_t c = i;
+            for (int j = 0; j < 8; j++)
+            {
+                c = (c & 1) ? (0xEDB88320 ^ (c >> 1)) : (c >> 1);
+            }
+            table[i] = c;
+        }
+    }
+}
+
+void
+CheckSum::calc(uint8_t *buf, size_t len)
+{
+    for (size_t i = 0; i < len; i++)
+    {
+        checkSum = table[(checkSum ^ buf[i]) & 0xFF] ^ (checkSum >> 8);
+    }
+}
+
+//CheckSum::CheckSumCRC32
+PREFERENCES::_crc32
+CheckSum::get()
+{
+//    CheckSumCRC32 crc32;
+    PREFERENCES::_crc32 ret;
+    ret.ui32 = checkSum ^ 0xFFFFFFFF;
+    return ret; 
+}