APP 4

Dependencies:   mbed CRC16 mbed-rtos

Revision:
22:b855dbf3a8c1
Parent:
20:f0932bfe09ed
--- a/MEF.cpp	Tue Feb 23 00:22:49 2016 +0000
+++ b/MEF.cpp	Tue Feb 23 03:52:19 2016 +0000
@@ -15,11 +15,12 @@
 {
     switch (state)
     {
-        case PREAMBLE : 
+        case PREAMBLE :
+        default :
                 {
                     m_InputBuffer[m_Counter] = bit;
                     m_Counter++;
-                    if(m_Counter == 8 )
+                    if(m_Counter >= 8 )
                     {
                         if(preambleChecker())
                         {
@@ -33,7 +34,7 @@
                 {
                     m_InputBuffer[m_Counter] = bit;
                     m_Counter++;
-                    if(m_Counter == 8)
+                    if(m_Counter >= 8)
                     {
                         if(startChecker())
                         {
@@ -52,7 +53,7 @@
         case TYPE :
                 {
                     m_Counter ++;
-                    if(m_Counter == 8)
+                    if(m_Counter >= 8)
                     {
                         state = LENGTH;
                         m_Counter = 0;
@@ -63,7 +64,7 @@
                 {
                     m_InputBuffer[m_Counter] = bit;
                     m_Counter++;
-                    if(m_Counter == 8)
+                    if(m_Counter >= 8)
                     {
                         state = DATA;
                         m_DataSize = calculateSize();
@@ -79,7 +80,7 @@
                         m_CPayload[(m_Counter + 1)/ 8 - 1] = (m_BSPayload[m_Counter] << 0) | (m_BSPayload[m_Counter - 1] << 1) | (m_BSPayload[m_Counter - 2] << 2) | (m_BSPayload[m_Counter - 3] << 3) | (m_BSPayload[m_Counter - 4] << 4) | (m_BSPayload[m_Counter - 5] << 5) | (m_BSPayload[m_Counter - 6] << 6) | (m_BSPayload[m_Counter - 7] << 7);
                     }
                     m_Counter++;
-                    if(m_Counter == m_DataSize*8)
+                    if(m_Counter >= m_DataSize*8)
                     {
                         state = CRC16STATE;
                         m_CRC = CRC16::calculateCRC16(m_CPayload, m_DataSize);
@@ -90,7 +91,7 @@
                 {
                     m_InputBuffer[m_Counter] = bit;
                     m_Counter++;
-                    if(m_Counter == 16)
+                    if(m_Counter >= 16)
                     {
                         if(!compareCRC())
                         {
@@ -111,7 +112,7 @@
                 {
                     m_InputBuffer[m_Counter] = bit;
                     m_Counter++;
-                    if(m_Counter == 8)
+                    if(m_Counter >= 8)
                     {
                         if(startChecker())
                         {