Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed PowerControl SDFileSystem
Fork of SDFilesystem by
HeptaBattery.cpp
00001 #include "HeptaBattery.h" 00002 #include "mbed.h" 00003 00004 HeptaBattery::HeptaBattery(PinName bat, PinName bat_ct, PinName reg_st) : _bat(bat),_bat_ct(bat_ct),_reg_st(reg_st) 00005 { 00006 _bat_ct = 0; // disable battery charge 00007 _reg_st = 1; // able 3.3V regulator out 00008 PHY_PowerDown();// disable Ethernet connection 00009 } 00010 void HeptaBattery::vol(float* bt) 00011 { 00012 *bt = (_bat.read()*1.431*3.3); 00013 } 00014 void HeptaBattery::vol_u16(char* bt_u16, int *dsize) 00015 { 00016 unsigned short bt_datas; 00017 char bt1[8]={0x00},bt2[8]={0x00}; 00018 bt_datas=_bat.read_u16()>>4; 00019 sprintf( bt1, "%02X", (bt_datas >> 8) & 0x0F); 00020 sprintf( bt2, "%02X", (bt_datas) & 0xFF); 00021 bt_u16[0]=bt1[0]; bt_u16[1]=bt1[1]; 00022 bt_u16[2]=bt2[0]; bt_u16[3]=bt2[1]; 00023 *dsize = 4; 00024 } 00025 void HeptaBattery::chargecontrol(int state, int *save_flag) 00026 { 00027 float Bat; 00028 switch(state){ 00029 case 1: 00030 //Battery Voltage High Level 00031 Peripheral_PowerUp(0xFDFF6FF7); 00032 _bat_ct = 0; 00033 _reg_st = 1; 00034 *save_flag = 0; 00035 break; 00036 case 2: 00037 //Battery Voltage Normal Level 00038 Peripheral_PowerUp(0xFDFF6FF7); 00039 _reg_st = 1; 00040 _bat_ct = 1; 00041 *save_flag = 0; 00042 break; 00043 case 3: 00044 //Battery Voltage Low Level 00045 Peripheral_PowerDown(0x7D7E6DF1); 00046 _bat_ct = 1; 00047 _reg_st = 0; 00048 *save_flag = 1; 00049 break; 00050 case 4: 00051 //Battery Voltage Auto Charge 00052 Bat = _bat.read()*1.431*3.3; 00053 if(Bat>=4.2){ 00054 Peripheral_PowerUp(0xFDFF6FF7); 00055 printf("voltage high level = %f\r\n",Bat); 00056 printf("Complete!!!"); 00057 _bat_ct = 0; 00058 _reg_st = 1; 00059 *save_flag = 0; 00060 } 00061 Peripheral_PowerDown(0x7D7E6DF1); 00062 printf("voltage low level = %f\r\n",Bat); 00063 _bat_ct = 1; 00064 _reg_st = 0; 00065 *save_flag = 1; 00066 break; 00067 default: 00068 printf("error\r\n"); 00069 break; 00070 } 00071 } 00072
Generated on Fri Jul 15 2022 08:06:17 by
1.7.2
