ST MC SDK生成自己的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。
在這裏插入圖片描述
然後點擊“GENERATE",可能會彈出警告,這個不用管,點擊“YES"就好,如下圖:
在這裏插入圖片描述




3.更改MCU型號

在新建的文件夾裏找到.ioc文件,並用記事本打開:
在這裏插入圖片描述
然後在記事本里對這兩項進行更改替換,一個是MCU的型號,一個是MCU的封裝。
在這裏插入圖片描述
替換後如下圖所示:
在這裏插入圖片描述
保存後在把.ioc文件用Cube-MX打開:
在這裏插入圖片描述
進入Cube-MX後然後對ADC進行使能,這個操作就是消除開始用ST SDK生成工程的那個警告,如下圖所示:
在這裏插入圖片描述
在這裏插入圖片描述
然後生成代碼,如下圖所示:
在這裏插入圖片描述
至此,工程基本計算生成完成了,編譯以後也是零警告、零錯誤。
在這裏插入圖片描述
當然,應用到實際工程中還有許多的路要走,對程序也需要做相應的修改,目前我也在摸索。如有錯誤之處,還望不吝賜教。














發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章