你好我好大家好! 发表于 2014-6-16 17:12:03

关于基于stm32的PMSM的FOC2的2.0的库,是否有错的问题

最近将PMSM的FOC2的2.0的库移植到stm32f051xx上,移植过程中发现几个纠结的问题,看看有没有哪位前辈遇到过啊:
  1在编译的时候发现如下错误(在基于051的外设库函数的工程中编译的):
                                                                                     ..\Output\svpwm.axf: Error: L6218E: Undefined symbol STO_Get_Electrical_Angle (referred from stm32f0xx_it.o)
...\Output\svpwm.axf: Error: L6218E: Undefined symbol STO_Get_Electrical_Angle (referred from stm32f0xx_it.o).
..\Output\svpwm.axf: Error: L6218E: Undefined symbol STO_Get_wBemf_alfa_est (referred from stm32f0xx_it.o).
..\Output\svpwm.axf: Error: L6218E: Undefined symbol STO_Get_wBemf_beta_est (referred from stm32f0xx_it.o).
..\Output\svpwm.axf: Error: L6218E: Undefined symbol STO_Get_wIalfa_est (referred from stm32f0xx_it.o).
..\Output\svpwm.axf: Error: L6218E: Undefined symbol STO_Get_wIbeta_est (referred from stm32f0xx_it.o).
..\Output\svpwm.axf: Error: L6218E: Undefined symbol FOC_FluxRegulator (referred from mc_foc_drive.o).
..\Output\svpwm.axf: Error: L6218E: Undefined symbol FOC_FluxRegulator_Init (referred from mc_foc_drive.o).
..\Output\svpwm.axf: Error: L6218E: Undefined symbol FOC_FluxRegulator_Update (referred from mc_foc_drive.o).
..\Output\svpwm.axf: Error: L6218E: Undefined symbol STO_Calc_Rotor_Angle (referred from mc_foc_drive.o).
..\Output\svpwm.axf: Error: L6218E: Undefined symbol STO_Gains_Init (referred from mc_state_observer_interface.o).
..\Output\svpwm.axf: Error: L6218E: Undefined symbol STO_Gains_Update (referred from mc_state_observer_interface.o).
..\Output\svpwm.axf: Error: L6218E: Undefined symbol STO_Get_Speed (referred from mc_state_observer_interface.o).
..\Output\svpwm.axf: Error: L6218E: Undefined symbol STO_IsSpeed_Reliable (referred from mc_state_observer_interface.o).
..\Output\svpwm.axf: Error: L6218E: Undefined symbol STO_Calc_Speed (referred from stm32f10x_timebase.o).
 
 经查证,发现引起以上错误的原因是这些函数在相应的头文件里面只是声明了一下,但是在相应的 .C文件里面没有却没有定义,刚开始还以为自己在移植的过程中不小心把这几个函数给删了呢,后来查了查原文件,确实是没有这几个函数,不知道这是库的开发人员保留让客户根据自己的需要自己编写,还是忘了写这几个函数了啊?
 
2,在基于103的外设库函数上编译此工程时,编译器不报错,不知道是为什么?但是在基于051的外设的库函数上编译此工程却提示了如上错误。
 

vivy 发表于 2014-6-17 16:04:15

RE:关于基于stm32的PMSM的FOC2的2.0的库,是否有错的问题

用不着的话就注释掉

feel-376797 发表于 2014-6-17 16:16:25

RE:关于基于stm32的PMSM的FOC2的2.0的库,是否有错的问题

移植一般先要改一些与硬件有关的东西。

你好我好大家好! 发表于 2014-6-17 16:22:10

回复:关于基于stm32的PMSM的FOC2的2.0的库,是否有错的问题

回复第 2 楼 于2014-06-17 16:04:15发表:
用不着的话就注释掉
 
可是不明白,为什么在没有移植前,这些函数也没有定义,但是为什么就没有报错呢?
 

你好我好大家好! 发表于 2014-6-17 16:25:53

回复:关于基于stm32的PMSM的FOC2的2.0的库,是否有错的问题

回复第 3 楼 于2014-06-17 16:16:25发表:
移植一般先要改一些与硬件有关的东西。
这些语句都是软件,,硬件不兼容的语句已经改完啦:'(,,不明白为什么移植前为什么不报错《
 

有缘于你 发表于 2014-6-17 19:16:19

RE:关于基于stm32的PMSM的FOC2的2.0的库,是否有错的问题

可能这些语句由宏定义控制的

feixiang20 发表于 2014-6-18 13:23:49

RE:关于基于stm32的PMSM的FOC2的2.0的库,是否有错的问题

觉得是定义的不够清楚,自己仔细研究后再写

aaa999kk 发表于 2014-6-18 16:13:15

RE:关于基于stm32的PMSM的FOC2的2.0的库,是否有错的问题

不要写这么多注释, 反倒看不清楚, 宏定义也难改

feiante-155820 发表于 2014-6-18 17:31:21

RE:关于基于stm32的PMSM的FOC2的2.0的库,是否有错的问题

F0和F1还是有些区别的

深秋独影 发表于 2014-6-19 12:29:59

RE:关于基于stm32的PMSM的FOC2的2.0的库,是否有错的问题

头文件没有包含进去吧
页: [1] 2
查看完整版本: 关于基于stm32的PMSM的FOC2的2.0的库,是否有错的问题