2014-07-03 02: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 02: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 07: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