|
@@ -58,7 +58,7 @@ ULONG ulOBC_ComTimeOutCount = 0;
|
|
|
ULONG ulBMS_ComTimeOutCount = 0;
|
|
|
uint8_t MC_MotorSPD_rpm_Percent = 0;
|
|
|
uint8_t MC_WorkMode;
|
|
|
-uint8_t MC_BC_COM = 1;
|
|
|
+uint8_t MC_BC_COM = 0;
|
|
|
LPF_OUT BMS_swCurIdcLpf;
|
|
|
BOOL blBMSCommFault = FALSE;
|
|
|
static UWORD uwRemainDistanceCal;
|
|
@@ -754,28 +754,24 @@ void Can_voMC_Run_200ms(void)
|
|
|
Can_MaxMinTempHistory();
|
|
|
Can_GearSt_switch();
|
|
|
SizeMCUP = sizeof(MC_UpcInfo.stAssistInfo);
|
|
|
- if (MC_BC_COM == 0)
|
|
|
+ if (MC_BC_COM == 1)
|
|
|
{
|
|
|
- MC_RunInfoToCDL.Torque = ((ULONG)maf_torque.value * TORQUEBASE / 10) >> 14; // 0.1 Nm
|
|
|
- MC_RunInfoToCDL.CadenceDir = (MC_CadenceDir_Struct_t)cadence_stFreGetOut.cadence_dir; // 踩踏方向 0-正,1-反,2-停止,
|
|
|
- MC_RunInfoToCDL.Cadence = (cadence_stFreGetOut.uwLPFFrequencyPu * cof_uwVbRpm) >> 20; // rpm
|
|
|
- MC_RunInfoToCDL.GearSt = MC_ControlCode.GearSt;
|
|
|
- MC_RunInfoToCDL.T_PCB = adc_stUpOut.PCBTemp + 40;
|
|
|
- MC_RunInfoToCDL.T_Coil = adc_stUpOut.PCBTemp + 40;
|
|
|
- MC_RunInfoToCDL.BusVoltage = ((ULONG)adc_stUpOut.uwVdcLpfPu * cof_uwUbVt * 100) >> 14; // 1mV
|
|
|
- // MC_RunInfoToCDL.BusCurrent = (((ULONG)scm_stMotoPwrInLpf.slY.sw.hi << 13) / adc_stUpOut.uwVdcLpfPu * cof_uwIbAp * 100) >> 14; // 1mA
|
|
|
- MC_RunInfoToCDL.BusCurrent = ((ULONG)adc_stUpOut.uwIbusAvgLpfPu) * cof_uwIbAp * 10 >> 14; ///>母线电流 1mA,地址偏移8
|
|
|
- MC_RunInfoToCDL.MotorSpeed = (SLONG)scm_stSpdFbkLpf.slY.sw.hi * cof_uwVbRpm >> 15;
|
|
|
- // MC_RunInfoToCDL.BikeSpeed =
|
|
|
- // (((SQWORD)bikespeed_stFreGetOut.uwLPFFrequencyPu * cof_uwFbHz * ass_ParaCong.uwWheelPerimeter * 3216 * 36 >> 15) * 1050) >>
|
|
|
- // 35; // 600 0.1cm 3216 = Q10(3.1415926) 105 = Q20(1/10000) 0.1 km/h;
|
|
|
- //
|
|
|
- MC_RunInfoToCDL.BikeSpeed =
|
|
|
- (((SQWORD)bikespeed_stFreGetOut.uwLPFFrequencyPu * FBASE * ass_ParaCong.uwWheelPerimeter * 36 >> 20) * 1048 * 10) >> 20;
|
|
|
-// MC_RunInfoToCDL.BikeSpeed = MC_RunInfoToCDL.MotorSpeed /10;
|
|
|
- MC_RunInfoToCDL.IqCurrent = ((SLONG)scm_swIqRefPu * cof_uwIbAp * 100) >> 14;
|
|
|
- MC_RunInfoToCDL.AlarmCode = MC_ErrorCode.Code && 0x00FF;
|
|
|
- //SendData(ID_MC_TO_CDL, MODE_REPORT, 0xF112, (uint8_t *)&MC_RunInfoToCDL.Torque);
|
|
|
+ MC_RunInfoToCDL.SysStatus = FSM1st_Sys_state.state;
|
|
|
+ MC_RunInfoToCDL.SubStatus = FSM2nd_Run_state.state;
|
|
|
+ MC_RunInfoToCDL.MotorStatus = curSpeed_state.state;
|
|
|
+ MC_RunInfoToCDL.AssitStatus = Ass_FSM;
|
|
|
+ MC_RunInfoToCDL.Id = scm_swIdRefPu;
|
|
|
+ MC_RunInfoToCDL.Iq = scm_swIqRefPu;
|
|
|
+ MC_RunInfoToCDL.Ud = scm_swUdRefPu;
|
|
|
+ MC_RunInfoToCDL.Uq = scm_swUqRefPu;
|
|
|
+ MC_RunInfoToCDL.InstantTorq = torsensor_stTorSensorOut.uwTorqueReg;
|
|
|
+ MC_RunInfoToCDL.FilteTorq = torsensor_stTorSensorOut.uwTorqueLPFPu;
|
|
|
+ MC_RunInfoToCDL.FreqTorq = maf_torque.AverValue;
|
|
|
+ MC_RunInfoToCDL.RS[0] = scm_swIdFdbLpfPu;
|
|
|
+ MC_RunInfoToCDL.RS[1] = scm_swIqFdbLpfPu;
|
|
|
+ MC_RunInfoToCDL.RS[2] = Assist_torqueper;
|
|
|
+ MC_RunInfoToCDL.RS[3] = bikethrottle_stBikeThrottleOut.uwThrottlePercent;
|
|
|
+ SendData(&UART_TxBuff_Struct_OBC, ID_MC_TO_CDL, MODE_REPORT, 0xBA20, (UBYTE *)&MC_RunInfoToCDL.SysStatus);
|
|
|
}
|
|
|
|
|
|
MC_RunInfo.BikeSpeed = cp_stBikeRunInfoPara.BikeSpeedKmH; ///>车速 0.1km/h,地址偏移0
|