添加流量计数测试
diff --git a/supwisdom/sp_data.c b/supwisdom/sp_data.c
index 7417423..2275abc 100644
--- a/supwisdom/sp_data.c
+++ b/supwisdom/sp_data.c
@@ -97,6 +97,7 @@
sp_transdtl_t record;
MEMCLEAR(&record, sizeof(record));
+ sp_flash_read(pos->last_transdtl.transaddr, (uint8*)&record, record_behalf_len);
record.amount = pos->purchase.paid_sum;
if(pos->paymode == PAYMODE_QRCODE)
{
@@ -108,7 +109,6 @@
}
record.flowsensors = pos->purchase.paid_num;
record.transtatus = 1;
- sp_flash_read(pos->last_transdtl.transaddr, (uint8*)&record, record_behalf_len);
return sp_write_below_record(pos, &record);
}
diff --git a/supwisdom/sp_menu.c b/supwisdom/sp_menu.c
index d9d1b0a..5ae99f1 100644
--- a/supwisdom/sp_menu.c
+++ b/supwisdom/sp_menu.c
@@ -548,6 +548,46 @@
}
}
+static void flowsensor_calibrate(sp_pos_t* pos)
+{
+ uint32 ticker;
+ uint8 kcode;
+ uint32 count;
+ uint32 temp;
+ char msg[32];
+
+ sp_valve_on();
+ sp_flowsensor_count_clear();
+ disp_hint_info_two(pos,"Á÷Á¿¼ÆÊý²âÊÔ","¼ÆËã100ml¼ÆÊý",0);
+ count = 0;
+ ticker = sp_get_ticker();
+ while(sp_get_ticker() -ticker < DELAY_TIME60s*5)
+ {
+ sp_feed_dog();
+ sp_valve_control();
+ kcode = sp_get_key();
+ if(kcode != SP_KEY_NONE)
+ {
+ if(kcode == SP_KEY_CLEAR)
+ {
+ sp_valve_off();
+ return;
+ }
+ ticker = sp_get_ticker();
+ }
+ temp = sp_flowsensor_get_count();
+ if(temp != count)
+ {
+ count = temp;
+ sprintf(msg,"Âö³å¸öÊý:%d",temp);
+ disp_hint_info_two(pos,"Á÷Á¿¼ÆÊý²âÊÔ",msg,DELAY_TIME100ms);
+ }
+ }
+ sp_valve_off();
+ sprintf(msg,"Âö³å¸öÊý:%d",sp_flowsensor_get_count());
+ disp_hint_info_two(pos,"Á÷Á¿¼ÆÊý²âÊÔ",msg,DELAY_TIME3s);
+}
+
static void test_valve_on(sp_pos_t* pos)
{
sp_valve_on();
@@ -613,7 +653,8 @@
{"3.¿ªÆô·§ÃÅ", test_valve_on},
{"4.¹Ø±Õ·§ÃÅ", test_valve_off},
{"5.Á÷Á¿²âÊÔ", test_flowsensor},
- {"6.ͨѶ²âÊÔ", test_link}
+ {"6.ͨѶ²âÊÔ", test_link},
+ {"7.Á÷Á¿¼ÆÊýУ׼",flowsensor_calibrate}
};
max_cnt = (sizeof(menus)/sizeof(menu_t) -1)/3 + 1;
page = 0;