Bluetooth Low Energy for Smart Plug
Dependencies: BLE_API mbed nRF51822
Fork of SmartPlugBLE by
SmartPlug.h
00001 #ifndef SMART_PLUG_H 00002 #define SMART_PLUG_H 00003 00004 00005 class Relay 00006 { 00007 public: 00008 Relay():state(0),hrCounter(0),minCounter(0) 00009 { 00010 } 00011 00012 void setState(uint8_t newState) 00013 { 00014 state = newState; 00015 } 00016 00017 void setHrCounter(uint8_t newHrCounter) 00018 { 00019 hrCounter = newHrCounter; 00020 } 00021 00022 void setMinCounter(uint8_t newMinCounter) 00023 { 00024 minCounter = newMinCounter; 00025 } 00026 00027 uint8_t getState() 00028 { 00029 return state; 00030 } 00031 00032 uint8_t getHrCounter() 00033 { 00034 return hrCounter; 00035 } 00036 00037 uint8_t getMinCounter() 00038 { 00039 return minCounter; 00040 } 00041 00042 private: 00043 uint8_t state; 00044 uint8_t hrCounter; 00045 uint8_t minCounter; 00046 }; 00047 00048 class SmartPlug 00049 { 00050 public: 00051 bool isCounting; 00052 00053 SmartPlug():isCounting(false),voltage(0),current(0),power(0),powerFactor(0),energy(0) 00054 { 00055 } 00056 00057 uint32_t getVoltage() 00058 { 00059 return voltage; 00060 } 00061 00062 uint32_t getCurrent() 00063 { 00064 return current; 00065 } 00066 00067 uint32_t getPower() 00068 { 00069 return power; 00070 } 00071 00072 uint32_t getPowerFactor() 00073 { 00074 return powerFactor; 00075 } 00076 00077 uint32_t getEnergy() 00078 { 00079 return energy; 00080 } 00081 00082 Relay* getRelay() 00083 { 00084 return &relay; 00085 } 00086 00087 void setVoltage(uint32_t data) 00088 { 00089 voltage = data; 00090 } 00091 00092 void setCurrent(uint32_t data) 00093 { 00094 current = data; 00095 } 00096 00097 void setPower(uint32_t data) 00098 { 00099 power = data; 00100 } 00101 00102 void setPowerFactor(uint32_t data) 00103 { 00104 powerFactor = data; 00105 } 00106 00107 void setEnergy(uint32_t data) 00108 { 00109 energy = data; 00110 } 00111 00112 void setRelay(uint8_t state,uint8_t hour, uint8_t min) 00113 { 00114 relay.setState(state); 00115 relay.setHrCounter(hour); 00116 relay.setMinCounter(min); 00117 printf("hour = %d,min = %d\r\n",hour,min); 00118 if(hour != 0 || min != 0) 00119 isCounting = true; 00120 else if(state) 00121 { 00122 isCounting = false; 00123 } 00124 } 00125 private: 00126 uint32_t voltage; 00127 uint32_t current; 00128 uint32_t power; 00129 uint32_t powerFactor; 00130 uint32_t energy; 00131 Relay relay; 00132 }; 00133 00134 #endif
Generated on Fri Jul 22 2022 14:22:22 by 1.7.2