Petter Bellander / Mbed 2 deprecated Saab-BT

Dependencies:   mbed

Committer:
petter
Date:
Tue Jan 05 22:10:16 2016 +0000
Revision:
4:3041a571b7a7
Parent:
2:10c60edc8573
Child:
5:8e468fef2754
Moved additional RN52 event data queries from main into RN52 class.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
petter 0:6cf6e566c0da 1 #ifndef RN52_H
petter 0:6cf6e566c0da 2 #define RN52_H
petter 0:6cf6e566c0da 3
petter 0:6cf6e566c0da 4
petter 0:6cf6e566c0da 5 typedef enum
petter 0:6cf6e566c0da 6 {
petter 0:6cf6e566c0da 7 RN52_PLAYPAUSE,
petter 0:6cf6e566c0da 8 RN52_NEXTTRACK,
petter 0:6cf6e566c0da 9 RN52_PREVTRACK,
petter 0:6cf6e566c0da 10 RN52_CONNECT,
petter 0:6cf6e566c0da 11 RN52_DISCONNECT,
petter 0:6cf6e566c0da 12 RN52_REBOOT,
petter 0:6cf6e566c0da 13 RN52_VOLUMEUP,
petter 0:6cf6e566c0da 14 RN52_MAXVOLUME,
petter 0:6cf6e566c0da 15 RN52_GETSTATUS,
petter 0:6cf6e566c0da 16 RN52_ASSISTANT,
petter 0:6cf6e566c0da 17 RN52_CALLER_ID,
petter 0:6cf6e566c0da 18 RN52_TRACK_METADATA,
petter 0:6cf6e566c0da 19
petter 0:6cf6e566c0da 20 RN52_COMMAND_LAST
petter 0:6cf6e566c0da 21
petter 0:6cf6e566c0da 22 } RN52_COMMAND;
petter 0:6cf6e566c0da 23
petter 0:6cf6e566c0da 24
petter 0:6cf6e566c0da 25 typedef enum
petter 0:6cf6e566c0da 26 {
petter 0:6cf6e566c0da 27 RN52_LIMBO,
petter 0:6cf6e566c0da 28 RN52_CONNECTABLE,
petter 0:6cf6e566c0da 29 RN52_CONNECTABLE_DISCOVERABLE,
petter 0:6cf6e566c0da 30 RN52_CONNECTED,
petter 0:6cf6e566c0da 31 RN52_OUTGOING_CALL,
petter 0:6cf6e566c0da 32 RN52_INCOMING_CALL,
petter 0:6cf6e566c0da 33 RN52_ACTIVE_CALL,
petter 0:6cf6e566c0da 34 RN52_TEST_MODE,
petter 0:6cf6e566c0da 35 RN52_THREE_WAY_CALL_WAITING,
petter 0:6cf6e566c0da 36 RN52_THREE_WAY_CALL_ON_HOLD,
petter 0:6cf6e566c0da 37 RN52_THREE_WAY_CALL_MULTI_CALL,
petter 2:10c60edc8573 38 RN52_INCOMING_CALL_ON_HOLD,
petter 0:6cf6e566c0da 39 RN52_ACTIVE_CALL2,
petter 0:6cf6e566c0da 40 RN52_AUDIO_STREAMING,
petter 0:6cf6e566c0da 41 RN52_LOW_BATTERY,
petter 0:6cf6e566c0da 42
petter 0:6cf6e566c0da 43 RN52_CONNECTION_LAST
petter 0:6cf6e566c0da 44
petter 0:6cf6e566c0da 45 } RN52_CONNECTION;
petter 0:6cf6e566c0da 46
petter 0:6cf6e566c0da 47
petter 0:6cf6e566c0da 48 typedef enum
petter 0:6cf6e566c0da 49 {
petter 0:6cf6e566c0da 50 RN52_NO_EVENT,
petter 0:6cf6e566c0da 51 RN52_CALLER_ID_EVENT,
petter 0:6cf6e566c0da 52 RN52_TRACK_CHANGE_EVENT,
petter 0:6cf6e566c0da 53
petter 0:6cf6e566c0da 54 RN52_EVENT_LAST
petter 0:6cf6e566c0da 55
petter 0:6cf6e566c0da 56 } RN52_EVENT;
petter 0:6cf6e566c0da 57
petter 0:6cf6e566c0da 58 typedef struct
petter 0:6cf6e566c0da 59 {
petter 0:6cf6e566c0da 60 RN52_EVENT event;
petter 0:6cf6e566c0da 61 bool media_connected;
petter 0:6cf6e566c0da 62 bool phone_connected;
petter 0:6cf6e566c0da 63 RN52_CONNECTION connection;
petter 0:6cf6e566c0da 64 char response[40];
petter 0:6cf6e566c0da 65
petter 0:6cf6e566c0da 66 } RN52_RESULT;
petter 0:6cf6e566c0da 67
petter 0:6cf6e566c0da 68
petter 0:6cf6e566c0da 69
petter 0:6cf6e566c0da 70
petter 0:6cf6e566c0da 71 //----------------------------------------------------------------------------
petter 0:6cf6e566c0da 72 // CLASS
petter 0:6cf6e566c0da 73 //----------------------------------------------------------------------------
petter 0:6cf6e566c0da 74
petter 0:6cf6e566c0da 75 class RN52
petter 0:6cf6e566c0da 76 {
petter 0:6cf6e566c0da 77 public:
petter 0:6cf6e566c0da 78 void init();
petter 4:3041a571b7a7 79 bool check_event(RN52_RESULT * rn52_result);
petter 0:6cf6e566c0da 80 bool set(RN52_COMMAND cmd);
petter 0:6cf6e566c0da 81 bool get(RN52_COMMAND cmd, RN52_RESULT * rn52_result);
petter 0:6cf6e566c0da 82 void capture_response(char * str);
petter 0:6cf6e566c0da 83 };
petter 0:6cf6e566c0da 84
petter 0:6cf6e566c0da 85 #endif