Kristof T'Jonck / Mbed 2 deprecated proj2_car

Dependencies:   RemoteIR m3pi mbed-rtos mbed

Committer:
Kristof@LAPTOP-FT09DA9V
Date:
Thu May 11 15:27:12 2017 +0200
Revision:
10:7eaaa891ab81
Parent:
9:8c5229dfab82
added comments

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Kristof@LAPTOP-FT09DA9V.home 1:76cff32344d1 1 //
Kristof@LAPTOP-FT09DA9V.home 1:76cff32344d1 2 // Created by Kristof on 5/9/2017.
Kristof@LAPTOP-FT09DA9V.home 1:76cff32344d1 3 //
Kristof@LAPTOP-FT09DA9V.home 1:76cff32344d1 4
Kristof@LAPTOP-FT09DA9V.home 1:76cff32344d1 5 #ifndef PROJ2_LIGHTCOMMUNICATION_H
Kristof@LAPTOP-FT09DA9V.home 1:76cff32344d1 6 #define PROJ2_LIGHTCOMMUNICATION_H
Kristof@LAPTOP-FT09DA9V.home 1:76cff32344d1 7
Kristof@LAPTOP-FT09DA9V.home 1:76cff32344d1 8 #include <cstdint>
Kristof@LAPTOP-FT09DA9V.home 1:76cff32344d1 9 #include "stdio.h"
Kristof@LAPTOP-FT09DA9V.home 1:76cff32344d1 10 #include "rtos.h"
Kristof@LAPTOP-FT09DA9V.home 1:76cff32344d1 11 #include "ReceiverIR.h"
Kristof@LAPTOP-FT09DA9V.home 1:76cff32344d1 12
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 13 #define OWN_ID 0
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 14 #define SPEED 0.5f //0-1
Kristof@LAPTOP-FT09DA9V.home 1:76cff32344d1 15
Kristof@LAPTOP-FT09DA9V.home 1:76cff32344d1 16 class LightCommunication {
Kristof@LAPTOP-FT09DA9V.home 1:76cff32344d1 17 public:
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 18
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 19 /**
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 20 * Constructor
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 21 */
Kristof@LAPTOP-FT09DA9V.home 1:76cff32344d1 22 LightCommunication();
Kristof@LAPTOP-FT09DA9V.home 1:76cff32344d1 23
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 24 /**
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 25 * Destructor
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 26 */
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 27 ~LightCommunication();
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 28
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 29 /**
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 30 * Gets the left value with a calculation done every loop
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 31 * @return a right value
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 32 */
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 33 float getRight(float);
Kristof@LAPTOP-FT09DA9V.home 1:76cff32344d1 34
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 35 /**
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 36 * Gets the left value with a calculation done every loop
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 37 * @return a left value
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 38 */
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 39 float getLeft(float);
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 40
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 41 /**
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 42 * Receives data via Serial into a buffer
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 43 * @deprecated using receiveData instead
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 44 * @param buf
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 45 */
Kristof@LAPTOP-FT09DA9V 7:1d77c7e0208c 46 void getSerial(char * buf);
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 47
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 48 /**
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 49 * Receives data with NEC protocol
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 50 * @deprecated Not using NEC anymore
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 51 * @param buf
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 52 */
Kristof@LAPTOP-FT09DA9V 7:1d77c7e0208c 53 void getIRStyle(uint8_t* buf);
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 54
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 55 /**
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 56 *
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 57 */
Kristof@LAPTOP-FT09DA9V 7:1d77c7e0208c 58 void receiveData();
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 59
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 60 /**
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 61 * @deprecated checked in the controller instead
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 62 * @return
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 63 */
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 64 bool needsToStop();
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 65
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 66 private:
Kristof@LAPTOP-FT09DA9V 7:1d77c7e0208c 67 float right,left;
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 68
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 69 /**
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 70 * Receives the data using NEC protocol
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 71 * @deprecated Not using this anymore, using serial instead
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 72 */
Kristof@LAPTOP-FT09DA9V 9:8c5229dfab82 73 ReceiverIR * ir_rx;
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 74
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 75 /**
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 76 * Pointer to a device
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 77 */
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 78 Serial * device;
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 79
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 80 /**
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 81 * Pointer to a mutex
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 82 */
Kristof@LAPTOP-FT09DA9V 9:8c5229dfab82 83 Mutex * mut;
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 84
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 85 /**
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 86 * Converts a received int8_t to a float (data/100)*speed
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 87 * @return float value
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 88 */
Kristof@LAPTOP-FT09DA9V 10:7eaaa891ab81 89 float toFloat(int8_t data);
Kristof@LAPTOP-FT09DA9V.home 1:76cff32344d1 90
Kristof@LAPTOP-FT09DA9V.home 1:76cff32344d1 91 };
Kristof@LAPTOP-FT09DA9V.home 1:76cff32344d1 92
Kristof@LAPTOP-FT09DA9V.home 1:76cff32344d1 93
Kristof@LAPTOP-FT09DA9V.home 1:76cff32344d1 94 #endif //PROJ2_LIGHTCOMMUNICATION_H