Erick / Mbed 2 deprecated ICE_BLE_TEST

Dependencies:   NaturalTinyShell_ice libmDot-12Sept mbed-rtos mbed

Fork of ICE by Erick

Committer:
jmarkel44
Date:
Tue Sep 13 21:34:12 2016 +0000
Revision:
52:e25c857451b6
Parent:
51:66b820f203a5
Parent:
49:0456ee2271be
Child:
53:14ee82a96d93
merging;

Who changed what in which revision?

UserRevisionLine numberNew contents of line
jmarkel44 0:65cfa4873284 1 /******************************************************************************
davidjhoward 15:a6ee32969e8e 2 *
jmarkel44 0:65cfa4873284 3 * File: global.h
davidjhoward 15:a6ee32969e8e 4 * Desciption: global data
jmarkel44 0:65cfa4873284 5 *
jmarkel44 0:65cfa4873284 6 *****************************************************************************/
jmarkel44 0:65cfa4873284 7 #ifndef GLOBAL_H
jmarkel44 0:65cfa4873284 8 #define GLOBAL_H
jmarkel44 0:65cfa4873284 9
jmarkel44 0:65cfa4873284 10 #include "mbed.h"
jmarkel44 0:65cfa4873284 11 #include "rtos.h"
jmarkel44 0:65cfa4873284 12 #include "ntshell.h"
davidjhoward 7:c0c03193612d 13 #include "mDot.h"
jmarkel44 0:65cfa4873284 14
davidjhoward 15:a6ee32969e8e 15 #define SUPPRESS_OUTPUT
jmarkel44 2:da28f21b72a1 16
jmarkel44 0:65cfa4873284 17 extern int sig_continue;
jmarkel44 3:8ea4db957749 18 extern osThreadId mainThreadId;
jmarkel44 0:65cfa4873284 19
jmarkel44 0:65cfa4873284 20 typedef enum action_tag {
jmarkel44 0:65cfa4873284 21 ACTION_CREATE,
jmarkel44 0:65cfa4873284 22 ACTION_MODIFY,
davidjhoward 31:4b1587034318 23 ACTION_DESTROY,
davidjhoward 31:4b1587034318 24 ACTION_READ_FILE,
jmarkel44 0:65cfa4873284 25 } Action_t;
jmarkel44 0:65cfa4873284 26
jmarkel44 0:65cfa4873284 27 typedef enum control_tag {
jmarkel44 0:65cfa4873284 28 CONTROL_TIMER = 0,
jmarkel44 0:65cfa4873284 29 CONTROL_PID = 1,
jmarkel44 0:65cfa4873284 30 CONTROL_SETPOINT = 2,
jmarkel44 0:65cfa4873284 31 CONTROL_COMPOSITE = 3,
jmarkel44 0:65cfa4873284 32 CONTROL_MANUAL = 4
jmarkel44 0:65cfa4873284 33 } Control_t;
jmarkel44 0:65cfa4873284 34
jmarkel44 0:65cfa4873284 35
jmarkel44 0:65cfa4873284 36 // message data type
jmarkel44 0:65cfa4873284 37 typedef struct message_tag {
jmarkel44 0:65cfa4873284 38 Action_t action;
jmarkel44 0:65cfa4873284 39 Control_t control;
davidjhoward 31:4b1587034318 40 char controlFile[64];
jmarkel44 0:65cfa4873284 41 } Message_t;
jmarkel44 0:65cfa4873284 42
jmarkel44 51:66b820f203a5 43 // output control request message
jmarkel44 51:66b820f203a5 44 typedef struct output_control_req_t {
jmarkel44 51:66b820f203a5 45 string relay;
jmarkel44 51:66b820f203a5 46 enum State { ON, OFF };
jmarkel44 51:66b820f203a5 47 unsigned int priority;
jmarkel44 51:66b820f203a5 48 } OutputControlReq_t;
jmarkel44 51:66b820f203a5 49
jmarkel44 0:65cfa4873284 50 extern Mail<Message_t, 16> MailBox;
davidjhoward 31:4b1587034318 51 extern Mail<Message_t, 16> ModbusMasterMailBox;
jmarkel44 51:66b820f203a5 52 extern Mail<OutputControlReq_t, 16> OutputMasterMailBox;
jmarkel44 0:65cfa4873284 53
jmarkel44 0:65cfa4873284 54 extern ntshell_t ntshell;
jmarkel44 0:65cfa4873284 55
jmarkel44 0:65cfa4873284 56 extern int func_read(char *buf, int cnt);
jmarkel44 0:65cfa4873284 57 extern int func_write(const char *buf, int cnt);
jmarkel44 0:65cfa4873284 58 extern int func_cb_ntshell(const char *text);
jmarkel44 0:65cfa4873284 59 extern void func_cb_ntopt(int argc, char **argv);
davidjhoward 7:c0c03193612d 60 extern mDot *GLOBAL_mdot;
jmarkel44 0:65cfa4873284 61
davidjhoward 9:ef0ca2f8a8a6 62 struct ModbusRegister {
davidjhoward 9:ef0ca2f8a8a6 63 std::string name;
davidjhoward 9:ef0ca2f8a8a6 64 std::string units;
davidjhoward 9:ef0ca2f8a8a6 65 double min;
davidjhoward 9:ef0ca2f8a8a6 66 double max;
davidjhoward 9:ef0ca2f8a8a6 67 int node;
davidjhoward 9:ef0ca2f8a8a6 68 int reg;
davidjhoward 9:ef0ca2f8a8a6 69 int rtype;
davidjhoward 9:ef0ca2f8a8a6 70 int type;
davidjhoward 15:a6ee32969e8e 71 int size;
davidjhoward 15:a6ee32969e8e 72 int order;
davidjhoward 49:0456ee2271be 73 int rfreq;
davidjhoward 9:ef0ca2f8a8a6 74 std::string fmt;
davidjhoward 15:a6ee32969e8e 75 float float_value;
davidjhoward 15:a6ee32969e8e 76 uint32_t uint32_value;
davidjhoward 15:a6ee32969e8e 77 uint16_t uint16_value;
davidjhoward 9:ef0ca2f8a8a6 78 };
davidjhoward 9:ef0ca2f8a8a6 79
davidjhoward 15:a6ee32969e8e 80 typedef enum byte_order {
davidjhoward 15:a6ee32969e8e 81 BigEndian = 0,
davidjhoward 15:a6ee32969e8e 82 LittleEndian = 1,
davidjhoward 15:a6ee32969e8e 83 BigEndianReverseWord = 2,
davidjhoward 15:a6ee32969e8e 84 LittleEndianReversWord = 3,
davidjhoward 15:a6ee32969e8e 85 } Byte_Order;
davidjhoward 9:ef0ca2f8a8a6 86
davidjhoward 15:a6ee32969e8e 87 extern std::map<std::string,ModbusRegister> ModbusRegisterMap;
davidjhoward 15:a6ee32969e8e 88
jmarkel44 34:f345fdec711d 89 extern Thread *GLOBAL_analyticsLogger_thread;
jmarkel44 34:f345fdec711d 90 extern Thread *GLOBAL_modbusMaster_thread;
jmarkel44 34:f345fdec711d 91 extern Thread *GLOBAL_BLE_thread;
jmarkel44 34:f345fdec711d 92 extern Thread *GLOBAL_CDH_thread;
jmarkel44 34:f345fdec711d 93 extern Thread *GLOBAL_configHandler_thread;
jmarkel44 34:f345fdec711d 94 extern Thread *GLOBAL_controlTask_thread;
jmarkel44 48:1c7861d80d16 95 extern Thread *GLOBAL_outputTask_thread;
jmarkel44 34:f345fdec711d 96
davidjhoward 15:a6ee32969e8e 97 #endif