Serial communication protocol generic implementation

Dependents:   ClassFRDM ClassLPC

Committer:
askksa12543
Date:
Thu Mar 19 02:36:11 2015 +0000
Revision:
0:60c4436f7667
Child:
1:9cfb17f74dcd
initial class version of data comm project.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
askksa12543 0:60c4436f7667 1 //data comm functions
askksa12543 0:60c4436f7667 2 //serial communication protocol
askksa12543 0:60c4436f7667 3
askksa12543 0:60c4436f7667 4 #ifndef DATACOMM_H
askksa12543 0:60c4436f7667 5 #define DATACOMM_H
askksa12543 0:60c4436f7667 6
askksa12543 0:60c4436f7667 7 #define PREAMBLE 0x7E
askksa12543 0:60c4436f7667 8
askksa12543 0:60c4436f7667 9 #include "mbed.h"
askksa12543 0:60c4436f7667 10 #include "platform.h"
askksa12543 0:60c4436f7667 11 #include "gpio_api.h"
askksa12543 0:60c4436f7667 12
askksa12543 0:60c4436f7667 13 class DataComm {
askksa12543 0:60c4436f7667 14
askksa12543 0:60c4436f7667 15 public:
askksa12543 0:60c4436f7667 16 void setClockOut(PinName pin);
askksa12543 0:60c4436f7667 17 void setClockIn(PinName pin);
askksa12543 0:60c4436f7667 18 void setSerialOut(PinName pin);
askksa12543 0:60c4436f7667 19 void setSerialIn(PinName pin);
askksa12543 0:60c4436f7667 20 void listen();
askksa12543 0:60c4436f7667 21 void setClock(int clock);
askksa12543 0:60c4436f7667 22 void initiate_connection();
askksa12543 0:60c4436f7667 23 void setDataSize(int size);
askksa12543 0:60c4436f7667 24 void send_data(char data[]);
askksa12543 0:60c4436f7667 25 char* receive_data();
askksa12543 0:60c4436f7667 26
askksa12543 0:60c4436f7667 27
askksa12543 0:60c4436f7667 28
askksa12543 0:60c4436f7667 29 protected:
askksa12543 0:60c4436f7667 30 gpio_t clock_out;
askksa12543 0:60c4436f7667 31 gpio_t clock_in;
askksa12543 0:60c4436f7667 32 gpio_t serial_out;
askksa12543 0:60c4436f7667 33 gpio_t serial_in;
askksa12543 0:60c4436f7667 34 int clock_time;
askksa12543 0:60c4436f7667 35 int skew_time;
askksa12543 0:60c4436f7667 36 int data_size;
askksa12543 0:60c4436f7667 37 Timer t;
askksa12543 0:60c4436f7667 38 };
askksa12543 0:60c4436f7667 39
askksa12543 0:60c4436f7667 40 #endif