Serial communication protocol generic implementation

Dependents:   ClassFRDM ClassLPC

Revision:
1:9cfb17f74dcd
Parent:
0:60c4436f7667
--- a/DataComm.h	Thu Mar 19 02:36:11 2015 +0000
+++ b/DataComm.h	Thu Mar 19 11:54:05 2015 +0000
@@ -5,6 +5,8 @@
 #define DATACOMM_H
 
 #define PREAMBLE 0x7E
+#define POSTAMBLE 0x7F
+#define MAX 100
 
 #include "mbed.h"
 #include "platform.h"
@@ -13,27 +15,34 @@
 class DataComm {
 
     public:
+        //initialize signal input/output pins
         void setClockOut(PinName pin);
         void setClockIn(PinName pin);
         void setSerialOut(PinName pin);
-        void setSerialIn(PinName pin);        
+        void setSerialIn(PinName pin);
+        //listen for incoming preamble        
         void listen();
+        //set clock speed
         void setClock(int clock);
+        //send preamble
         void initiate_connection();
-        void setDataSize(int size);
-        void send_data(char data[]);
+        void send_data(char data[], int size);
         char* receive_data();
+        //send postamble
+        void close_connection();
     
     
     
     protected:
+        //gpio input/output pins
         gpio_t clock_out;
         gpio_t clock_in;        
         gpio_t serial_out;
         gpio_t serial_in;
+        //clock speed and skew
         int clock_time;
         int skew_time;
-        int data_size;
+        //timer for handling clock and skew
         Timer t;     
 };