created separate function for hex to char
Dependencies: SDFileSystem ds3231 eeprom_Nikita mbed testUniGraphic_150217
Fork of SS_SensePOC2P0_11Dec2017_USERPID by
battery.cpp@76:611154b3b597, 2017-12-12 (annotated)
- Committer:
- rashmivenkataramaiah
- Date:
- Tue Dec 12 11:13:10 2017 +0000
- Revision:
- 76:611154b3b597
- Parent:
- 72:1f990fa8c516
made separate function for hex to char
Who changed what in which revision?
User | Revision | Line number | New contents of line |
---|---|---|---|
nikitateggi | 22:ffa88619551d | 1 | #include "mbed.h" |
nikitateggi | 22:ffa88619551d | 2 | #include "battery.h" |
rashmivenkataramaiah | 72:1f990fa8c516 | 3 | //#include "display_modules.h" |
nikitateggi | 45:067673dae242 | 4 | |
nikitateggi | 45:067673dae242 | 5 | #define BATTERY_PIN PTB1 // Battery Pin |
nikitateggi | 45:067673dae242 | 6 | #define BATTERY_MAX_OPERATING_VOLTAGE (float)3.3 // Battery Max Operating Voltage |
nikitateggi | 45:067673dae242 | 7 | #define BATTERY_INTERMEDIATE_HIGH_VOLTAGE (float)3.64 // Battery Full Voltage |
nikitateggi | 45:067673dae242 | 8 | #define BATTERY_MEDIUM_VOLTAGE (float)3.57 // battery Medium Voltage |
nikitateggi | 45:067673dae242 | 9 | #define BATTERY_LOW_VOLTAGE (float)3.53 // Battery LOW Voltage |
nikitateggi | 45:067673dae242 | 10 | |
rashmivenkataramaiah | 57:e82d4bd6b2c0 | 11 | /* |
nikitateggi | 45:067673dae242 | 12 | #define BATTERY_SCREEN_CHARGE_CONDITION 0 |
nikitateggi | 45:067673dae242 | 13 | #define BATTERY_LOW_CHARGE_CONDITION 1 |
nikitateggi | 45:067673dae242 | 14 | #define BATTERY_CRITICALLY_LOW_CHARGE_CONDITION 2 |
nikitateggi | 45:067673dae242 | 15 | #define BATTERY_SCREEN_NO_CHARGE_CONDITION 3 |
rashmivenkataramaiah | 57:e82d4bd6b2c0 | 16 | */ |
nikitateggi | 45:067673dae242 | 17 | |
rashmivenkataramaiah | 57:e82d4bd6b2c0 | 18 | static uint8_t battery_voltage_condition = BATTERY_SCREEN_CHARGE_CONDITION; |
nikitateggi | 45:067673dae242 | 19 | |
nikitateggi | 45:067673dae242 | 20 | |
nikitateggi | 45:067673dae242 | 21 | AnalogIn A(BATTERY_PIN); |
nikitateggi | 45:067673dae242 | 22 | Serial battery(USBTX, USBRX); |
nikitateggi | 45:067673dae242 | 23 | |
nikitateggi | 45:067673dae242 | 24 | /* Function : To Monitor Battery Voltage |
nikitateggi | 45:067673dae242 | 25 | returns : void |
nikitateggi | 22:ffa88619551d | 26 | |
nikitateggi | 45:067673dae242 | 27 | */ |
nikitateggi | 45:067673dae242 | 28 | |
nikitateggi | 45:067673dae242 | 29 | //uint8_t battery_condition=0; |
nikitateggi | 45:067673dae242 | 30 | void battery_monitor() |
nikitateggi | 45:067673dae242 | 31 | { |
nikitateggi | 45:067673dae242 | 32 | |
nikitateggi | 45:067673dae242 | 33 | float b_voltage; |
nikitateggi | 45:067673dae242 | 34 | b_voltage = A.read_u16()*(BATTERY_MAX_OPERATING_VOLTAGE/65535)*2; |
nikitateggi | 45:067673dae242 | 35 | wait(0.001f); |
nikitateggi | 45:067673dae242 | 36 | battery.printf("voltage=%f",b_voltage); |
nikitateggi | 45:067673dae242 | 37 | |
nikitateggi | 45:067673dae242 | 38 | if (b_voltage >= BATTERY_INTERMEDIATE_HIGH_VOLTAGE ) |
nikitateggi | 45:067673dae242 | 39 | battery_voltage_condition = BATTERY_SCREEN_CHARGE_CONDITION; |
nikitateggi | 45:067673dae242 | 40 | |
nikitateggi | 45:067673dae242 | 41 | else if ((b_voltage < BATTERY_INTERMEDIATE_HIGH_VOLTAGE ) && (b_voltage > BATTERY_MEDIUM_VOLTAGE)) // 15% to 10% Battery voltage |
nikitateggi | 45:067673dae242 | 42 | battery_voltage_condition = BATTERY_LOW_CHARGE_CONDITION ; |
nikitateggi | 45:067673dae242 | 43 | |
nikitateggi | 45:067673dae242 | 44 | else if ((b_voltage < BATTERY_MEDIUM_VOLTAGE) && (b_voltage > BATTERY_LOW_VOLTAGE)) // 10% to 5% battery volage |
nikitateggi | 45:067673dae242 | 45 | battery_voltage_condition = BATTERY_CRITICALLY_LOW_CHARGE_CONDITION; |
nikitateggi | 45:067673dae242 | 46 | |
nikitateggi | 45:067673dae242 | 47 | else if (b_voltage < BATTERY_LOW_VOLTAGE) |
nikitateggi | 45:067673dae242 | 48 | battery_voltage_condition = BATTERY_SCREEN_NO_CHARGE_CONDITION ; |
rashmivenkataramaiah | 72:1f990fa8c516 | 49 | |
nikitateggi | 45:067673dae242 | 50 | } |
nikitateggi | 45:067673dae242 | 51 | |
nikitateggi | 45:067673dae242 | 52 | /* Function : To get battery status depending battery voltage |
nikitateggi | 45:067673dae242 | 53 | returns : battery_voltage_condition |
nikitateggi | 45:067673dae242 | 54 | |
nikitateggi | 45:067673dae242 | 55 | */ |
nikitateggi | 45:067673dae242 | 56 | |
nikitateggi | 45:067673dae242 | 57 | uint8_t get_battery_status() |
nikitateggi | 45:067673dae242 | 58 | { |
nikitateggi | 45:067673dae242 | 59 | |
nikitateggi | 45:067673dae242 | 60 | return battery_voltage_condition; |
nikitateggi | 22:ffa88619551d | 61 | } |