UC头条:ST MC SDK生成自己的MCU工程教程

如何用ST MC SDK生成自身不包含芯片的工程。

1.工程创建

2.参数设置

2.1电机参数设置

2.2电流检测

2.3转子位置检测

2.4过流保护

2.5开光管的最小死区时间和开关频率

2.6上下管驱动PWM的有效极性设置

2.7驱动控制管理

2.7.1启动参数管理

2.7.2驱动设置

2.8欠压检测及保护

2.9电压、电流、温度采样

2.10IO口配置

2.11DAC功能

2.12IO口冲突检查

2.13生成工程

3.更改MCU型号

我用的是STM32F407ZGT6,但是 SDK支持的MCU里并不包含这款,如下图所示,本文就来记录如何创建一个工程以及将工程更改成适合自己MCU的文件。

点击加载图片

1.工程创建

双击打开SDK后,因为控制板和功率板都是自己的,并不是ST的套件,所以此处选择应该如下图所示。

点击加载图片

选择MCU 的时候尽量选择与自己所用MCU型号相近的,首先基于相同系列,其次基于相同管脚数。所以这里选择STM32F407IGT6,稍后需要做进一步的修改。

频率的话只能选择外部频率,就要根据自己手里的硬件进行选择,我手里的最小系统是25MHz外部晶振。如下图所示。

点击加载图片

进来以后如下图所示。

点击加载图片

2.参数设置

实验室有直流电源,所以AC INPUT那里不用管,首先设置BUS VOLTAGE。功率板电路原理图(母线电压采样)如下图所示:

点击加载图片

相应的工程设置如下图所示:

点击加载图片

2.1电机参数设置

电机用的是外转子无位置无刷直流电机。需要知道自己电机的极对数、最大转速、额定电流、额定电压、相电阻、电感、反电势常数。所以设置参数如下图所示:

点击加载图片

因为是无位置检测,所以这两项都不选。

点击加载图片

2.2电流检测

电流检测参数设置如下图所示,可以选择单电阻、三电阻、ICS采样方式,这几个参数根据自己的功率板电路原理图进行填写,:

![在这里插入图片描述](https://img-blog.csdnimg.cn/20210116101344438.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L0phY2hpbl9MaQ==,size_16,color_FFFFFF,t_70#pic_center)

同时这个软件提供了计算功能来计算放大倍数,点击后边的calculate,后如下图所示:

点击加载图片

2.3转子位置检测

一般情况下下边的参数无需修改,保持默认即可。

点击加载图片

2.4过流保护

点击加载图片

2.5开光管的最小死区时间和开关频率

点击加载图片

2.6上下管驱动PWM的有效极性设置

点击加载图片

2.7驱动控制管理

点击加载图片

2.7.1启动参数管理

点击加载图片

2.7.2驱动设置

点击加载图片

这里的PWM频率是16000Hz,然而根据程序里的设置,求出来PWM的频率是32000Hz,但是因为波形是中心对称波形,所以32000应该除以2.。

2.8欠压检测及保护

点击加载图片

2.9电压、电流、温度采样

电流:

点击加载图片

电压&温度:

点击加载图片

2.10IO口配置

点击加载图片

2.11DAC功能

点击加载图片

到这里一些基本的参数就设置完成了,接下来进行一下IO口的检查,就可以生成工程了。

2.12IO口冲突检查

点击加载图片

点击加载图片

可以看到有两个冲突,一个是温度采样和DAC冲突,一个是TIM1的BKIN引脚和电流采样的ADC12_IN6冲突,我们只需要回到设置的地方更改IO口即可。

2.13生成工程

在上方工具栏先保存文件,可以新建一个英文名的文件夹。然后点击下载按钮进行生成。如下图所示:

点击加载图片

点击“生成”图标后会有下图弹出,因为用KEIL进行编程,所以选择Keil MDK-ARM V5。

点击加载图片

点击加载图片

3.更改MCU型号

在新建的文件夹里找到.ioc文件,并用记事本打开:

点击加载图片

然后在记事本里对这两项进行更改替换,一个是MCU的型号,一个是MCU的封装。

点击加载图片

替换后如下图所示:

点击加载图片

保存后在把.ioc文件用Cube-MX打开:

点击加载图片

进入Cube-MX后然后对ADC进行使能,这个操作就是消除开始用ST SDK生成工程的那个警告,如下图所示:

点击加载图片

点击加载图片

然后生成代码,如下图所示:

点击加载图片

至此,工程基本计算生成完成了,编译以后也是零警告、零错误。

点击加载图片

当然,应用到实际工程中还有许多的路要走,对程序也需要做相应的修改,目前我也在摸索。如有错误之处,还望不吝赐教。

(0)

相关推荐