|
|
@@ -83,12 +83,18 @@ void throttle_detect(void) {
|
|
|
}
|
|
|
#if CONFIG_DAUL_THROTTLE==1
|
|
|
thr_5v = get_thro2_5v_float();
|
|
|
- thr_sig = get_throttle2_float();
|
|
|
- if (thr_sig <= nv_get_foc_params()->f_minThroVol || thr_sig >=nv_get_foc_params()->f_maxThroVol) {
|
|
|
- err_mask |= THRO2_SIG_ERR_BIT;
|
|
|
- }
|
|
|
if (thr_5v <= 4.5f || thr_5v >= 5.5f) {
|
|
|
err_mask |= THRO2_5V_ERR_BIT;
|
|
|
+ }else {
|
|
|
+ float thr2_sig = get_thro2_5v_float() - get_throttle2_float();
|
|
|
+ if (thr2_sig <= nv_get_foc_params()->f_minThroVol || thr2_sig >=nv_get_foc_params()->f_maxThroVol) {
|
|
|
+ err_mask |= THRO2_SIG_ERR_BIT;
|
|
|
+ }else {
|
|
|
+ if (ABS(thr2_sig - thr_sig) > 0.5f) {
|
|
|
+ err_mask |= THRO2_SIG_ERR_BIT;
|
|
|
+ err_mask |= THRO1_SIG_ERR_BIT;
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
#endif
|
|
|
}
|