2014-07-03 2:36 PM
Hi,
I just converted my project from Web Distribution 3.4 to Web Distribution 4.0 , and when compiling signed16[sMECSPEEDREF01HZ] = MCI_GetMecSpeedRef01Hz(*myMCI); signed16[sAVRGMECSPEED01HZ] = MCI_GetAvrgMecSpeed01Hz(*myMCI); signed16[sTORQUEREF] = MCI_GetTorqueRef(*myMCI); signed16[sTORQUE] = MCI_GetTorque(*myMCI); I get Error[Li005]: no definition for ''MCI_GetTorqueRef'' [referenced from C:\Program Files (x86)\STMicroelectronics\FOC SDK\STM32 PMSM FOC LIBv4.0\Web\Project\EWARM\UserProject\ STM32303C-EVAL_SINGLEDRIVE\Obj\rjl_modifications.o] Error[Li005]: no definition for ''MCI_GetTorque'' [referenced from C:\Program Files (x86)\STMicroelectronics\FOC SDK\STM32 PMSM FOC LIBv4.0\Web\Project\EWARM\UserProject\ STM32303C-EVAL_SINGLEDRIVE\Obj\rjl_modifications.o] These definitions are MCInterfaceClass.h, but not in MCInterfaceClass.c. Since the speed commands work, I dont think it is a configuration problem. Are these commands deprecated and replaced by something else? What? (Which is correct -- the .h file or the .c file??) Thanks, Robert2014-07-14 2:32 AM
Ciao Robert
Yes, the MCI_GetTorqueRef function is deprecated you can replace it with the MCI_GetTeref that give the same results. We forgot to remove the MCI_GetTorqueRef from the .h file. A possible work around is to wrap the function inside int16_t MCI_GetTorqueRef(CMCI this) { return MCI_GetTeref(this); } but changing the user code with MCI_GetTeref should be more advisable. Ciao Gigi2021-06-17 7:09 AM
The question has been moved from the "Motor Control Hardware" section to the "STM32 Motor Control" section (the question is about the STM32 MC SDK).
Best regards
We’re moving the ST Community to a new platform to give you a better and more reliable community experience.