posilani dat

Dependencies:   FatFileSystemCpp mbed PowerControl USBHostLite

Committer:
PavelKumpan
Date:
Tue May 23 18:42:14 2017 +0000
Revision:
26:5674b8978551
Parent:
20:66ecb2f0e307
Recreated communication protocol.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
jkaderka 9:8839ecc02e0e 1 /*
jkaderka 9:8839ecc02e0e 2 * Wifi communication
jkaderka 9:8839ecc02e0e 3 *
jkaderka 9:8839ecc02e0e 4 * Uses dhcp to obtain the ip and communicates on port 2000
jkaderka 9:8839ecc02e0e 5 *
jkaderka 9:8839ecc02e0e 6 */
jkaderka 4:030c7726c7dc 7 #ifndef __RF_H_
jkaderka 4:030c7726c7dc 8 #define __RF_H_
jkaderka 4:030c7726c7dc 9
jkaderka 4:030c7726c7dc 10 #include "mbed.h"
jkaderka 12:e3cb430ec051 11 //#include "WiflyInterface.h"
PavelKumpan 26:5674b8978551 12 #define FRAME_HEADER_LEN 6
PavelKumpan 26:5674b8978551 13 #define SEND_SIZE 1024
jkaderka 4:030c7726c7dc 14
jkaderka 4:030c7726c7dc 15 class Wifi {
jkaderka 4:030c7726c7dc 16 public:
legwinskij 20:66ecb2f0e307 17 Wifi (PinName tx, PinName rx, PinName cts, PinName reset);
legwinskij 20:66ecb2f0e307 18 /*
legwinskij 20:66ecb2f0e307 19 * Serves as constructor (we're changing PLL frequency)
legwinskij 20:66ecb2f0e307 20 */
legwinskij 20:66ecb2f0e307 21 void init(void);
jkaderka 4:030c7726c7dc 22 /*
jkaderka 9:8839ecc02e0e 23 * Returns received command (without #), just the one char
jkaderka 4:030c7726c7dc 24 */
PavelKumpan 26:5674b8978551 25 int getCmd(char* cmd_header, char* cmd_data);
jkaderka 4:030c7726c7dc 26
jkaderka 9:8839ecc02e0e 27 /*
legwinskij 17:ca53e6d36163 28 * Sends one char to wifly
legwinskij 17:ca53e6d36163 29 */
legwinskij 17:ca53e6d36163 30 void sendByte(char byte);
legwinskij 17:ca53e6d36163 31
legwinskij 17:ca53e6d36163 32 /*
legwinskij 17:ca53e6d36163 33 * Sends one char to wifly
legwinskij 17:ca53e6d36163 34 */
legwinskij 20:66ecb2f0e307 35 char readByte(void);
legwinskij 17:ca53e6d36163 36
legwinskij 17:ca53e6d36163 37 /*
jkaderka 9:8839ecc02e0e 38 * Format: (int) -1 (int) -1 (int) swimmer_id
jkaderka 12:e3cb430ec051 39 * many times (int) count 3*(short) acc 3*(float)gyro
jkaderka 12:e3cb430ec051 40 * (int) -1 (int) -1 up to 1023 zeros
jkaderka 9:8839ecc02e0e 41 */
legwinskij 15:baa2672a9b38 42 //int sendFile(const char *fname, int swimmer_id);
legwinskij 20:66ecb2f0e307 43 int sendFile(const char *fname);
legwinskij 20:66ecb2f0e307 44 bool readable(void);
legwinskij 20:66ecb2f0e307 45 void sendAck(void);
legwinskij 20:66ecb2f0e307 46 void sendNack(void);
PavelKumpan 26:5674b8978551 47 void sendFail(void);
PavelKumpan 26:5674b8978551 48 int waitForAck(void);
jkaderka 4:030c7726c7dc 49
jkaderka 4:030c7726c7dc 50 private:
jkaderka 12:e3cb430ec051 51 Serial wifi_;
jkaderka 12:e3cb430ec051 52 int in_buf;
PavelKumpan 26:5674b8978551 53 char buffer[SEND_SIZE];
PavelKumpan 26:5674b8978551 54 void bufferSend(size_t size);
PavelKumpan 26:5674b8978551 55 int bufferSendVerify(char byte);
PavelKumpan 26:5674b8978551 56 int bufferFlush(void);
jkaderka 4:030c7726c7dc 57 };
jkaderka 4:030c7726c7dc 58
jkaderka 4:030c7726c7dc 59 #endif