前言 客户在使用 ST FOC4.3 库文件控制电机过程中,当使用了 STM32F30x 芯片时,如果使用的是 ICS(Isolated Current Sensor)采样电流信号时会遇到无法编译通过报错问题,本文用以说明如果修正这个问题。 4 \7 ^0 o) d: M " H# l; n' K, m0 Q- F0 [* Q, U 问题描述 % \( {1 e9 E+ C' K 使用芯片为 STM32F303RCT6,当用到 FOC4.3 库进行电机控制时,如果使用了 ICS 作为电流采样,会遇到编译报错,如下提示:* I4 B2 T v9 ` - A) F7 p( v- s# j6 F* ]8 a 具体位置在 MCTask.c 的下面程序段:) \* [$ \! M- z3 j
看到上的错误提示是没有定义 ICS_DDParamsM1 和 IF3XX_NewObject 所用的形参 pICS_F30xParams_t 没有匹配。察看库中调用的根源在 pICS_F30XParams_t 与 ICS_DDParamsM1 是不同的,有个别的地方需要调整,因此根源在于没有在 头文件中定义相应的参数表。: w( j8 W+ m; t
解决方法 3 @6 u# ^3 x b" L4 d8 H" p$ U. { 1. 在...\web\SystemDriveParams 中增加支持 STM32F30x 的 ICS 采样的参数定义 ICS_F30XParams_t ICS_F30XParamsM1 = {……} ; 2. 该参数表需要对应于 pICS_F30XParams_t 结构体中的定义,新增文件见附件文件; 6 E# c# C% W4 d% I% Y1 V4 e+ G * g) y: I0 P5 _# M7 I1 x ; }+ D7 c) y$ J1 u- g& f. J . H t; b6 o; w; S% }' \ 3. 修改 MCTask.c 中的形参,改 ICS_DDParamsM1 为 ICS_F30XParamsM1 $ k6 f, b8 \0 M3 c % N4 M' ?! s# m 1 G$ b9 f" v' k( @ 5 [& U# O) g: O% e8 j 完整版请查看:附件" d+ K8 y: R( Z' F% m7 j( u& H # J& ^; y# G( Q % y& l& {0 G' k$ S; X8 Z |
ST_FOC4.3库关于STM32F30x系列ICS采样代码修改.pdf
下载254.43 KB, 下载次数: 1
基于STM32F334的数字电源
STM32F3DISCOVERY + UCGUI3.90A的移植(源码+视频)
基于STM32F303双电机FOC驱动: 无感原理图/BOM表/代码等开源...
【基于STM32F3的电机控制】_给力外围之 OPAMP
在 STM32 F0、 F2、 F3、 F4 和 L1 系列MCU 中使用硬件实时时钟 (RTC)
基于STM32F334的BUCK同步降压数字电源设计
STM32F334 上的 ADC 管脚和 DAC 管脚复用问题
如何使用USART或LPUART将STM32F0/F3/L0/L4微控制器从低功耗模式唤醒
在 STM32 F0、 F2、 F3、 F4 和 L1 系列 MCU 中使用硬件实时时钟 (RTC)
使用 STM32F0xx 和 STM32F3xx 微控制器为红外遥控协议实现发送器和接收器