class ProgressCallback : public AnimatorCallback {
public:
- explicit ProgressCallback(UIBoxProgress *progress, UILabel *label) : progress(progress), label(label) {}
- ~ProgressCallback() {}
+ explicit ProgressCallback(UIBoxProgress *progress, UILabel *batterylabel, UILabel *XTSlabel) : progress(progress), batterylabel(batterylabel),XTSlabel(XTSlabel) {}
+ ~ProgressCallback() {}
virtual void Callback(UIView *view)
{
- //int value = std::rand() % 101; // 生成一个介于 0 和 100 之间的随机数
- float voltage = 0.0F ;
- // battery_get_voltage_by_channel(&voltage,channel);
- uint8_t value = 0 ;
- uint8_t xts_test_done = 0 ;
-
+ float voltage = 0.0F;
+ uint8_t value = 0;
+ uint8_t xts_testing = 1;
uint32_t RunTime_ = HALTick::GetInstance().GetTime();
-
- #ifdef XTS_SUPPORT
- xts_test_done = is_xts_test_done();
- #endif
- if(xts_test_done){
- value = battery_get_voltage(&voltage);
- // printf("bat check stamp %u xts_test_done %u\r\n",RunTime_,xts_test_done);
- return ;
- }else{
+ #ifdef XTS_SUPPORT
+ xts_testing = is_xts_test_done();
+ #endif
+
+ if (!xts_testing) {
+ // XTS测试进行
+ xts_flag = 1;
+ XTSlabel->SetText("XTS测试进行中");
+ XTSlabel->SetTextColor(Color::GetColorFromRGBA(0xe6, 0x04, 0x09, 0xff));
value = 0;
- printf("bat check stamp %u xts_testing %u,xts_flag %u\r\n", RunTime_, xts_testing,xts_flag);
- // printf("bat check stamp %u xts_test_done %u\r\n",RunTime_,xts_test_done);
++ //printf("bat check stamp %u xts_testing %u,xts_flag %u\r\n", RunTime_, xts_testing,xts_flag);
+ } else {
+ // XTS测试结束
+ if (xts_flag) {
+ XTSlabel->SetText("XTS测试结束");
+ XTSlabel->SetTextColor(Color::GetColorFromRGBA(0x4e, 0xe6, 0x04, 0xff));
+ xts_flag = 0; // 复位
+ }
+ value = battery_get_voltage(&voltage);
- printf("bat check stamp %u xts_testing %u,xts_flag %u\r\n", RunTime_, xts_testing,xts_flag);
++ //printf("bat check stamp %u xts_testing %u,xts_flag %u\r\n", RunTime_, xts_testing,xts_flag);
}
+
char* progress1ForeImageSrc = nullptr;
char* progress1BackImageSrc = nullptr;
if (value <= 10) {