【STM32F429开发日志】(三)使用STM32Cube开发环境
ST推出的新开发环境STM32Cube包括STM32CubeMX工具软件和嵌入式软件平台。STM32CubeMX软件是一个图形界面的STM32系列MCU开发工具,具有以下功能:1)自动选择MCU型号,可指定系列、封装、外设数量等条件;
2)生成时钟配置代码;
3)生成外设配置代码;
4)生成中间件配置代码;
5)自动引脚分配,具有冲突检测与解决功能;
6)功耗估计。
目前V4.2版本只能生成与IAR EWARM,Keil MDK-ARM和TrueSTUDIO开发环境兼容的初始化与配置代码。
针对不同的MCU系列有不同的嵌入式软件平台,比如针对STM32F4系列的STM32CubeF4软件平台。软件平台包括一个硬件抽象层(HAL)和一系列中间件(比如RTOS,USB,TCP/IP协议栈等)。HAL封装了特定于MCU的操作,使得在其上开发的软件可以很容易的在不同MCU系列间移植。
回复:【STM32F429开发日志】(三)使用STM32Cube开发环境
STM32Cube的体系结构如图1所示。需要注意的是,STM32CubeMX对MCU系列的支持还不够完善,V4.2版本只能对STM32F4, STM32F2和STM32L0系列生成时钟、外设和中间件配置代码,其它系列只能生成外设相应的GPIO配置代码,功耗估计只支持STM32F4, STM32F2, STM32L1和STM32L0系列。图1
安装STM32CubeMX前需要先安装JAVA运行环境,STM32CubeMX V4.2版本要求JAVA至少是Version 1.7 Update 45版本。
回复:【STM32F429开发日志】(三)使用STM32Cube开发环境
下面以流水灯为例说明STM32CubeMX软件的使用。第一步,建立并保存工程。
启动STM32CubeMX软件,界面如图2所示。
图2
点击New Project,在New Project对话框中选择Board Selector标签页,在这里有各种ST评估板可以选择,我们选择STM32F429I-DISCO,最后点击OK,如图3所示。这样就建立起了STM32F429I-DISCO评估板的工程,这个工程已经根据评估板设置好了,然后可以生成相应的代码。
图3
为了演示如何使用STM32CubeMX软件,关闭刚刚建立的工程,从头建立一个新的工程。点击New Project,在New Project对话框中选择Mcu Selector标签页,然后在MCU Filter中依次选择STM32F4,STM32F429/439,在下面列表中选择STM32F429ZITx,最后点击OK,如图4所示。
图4
新建立的工程界面如图5所示。
图5
回复:【STM32F429开发日志】(三)使用STM32Cube开发环境
点击菜单Project -> Settings,在Project Settings对话框的Project Name框中填写工程名称,在Project Location框中填写工程所在目录(或者点击右侧Browse按钮选择目录),最后点击OK按钮,如图6所示。注意,目录中不能包含中文,否则不能生成IDE工程。图6
点击工具栏保存按钮,或点击菜单File -> Save Project保存工程。工程所在的文件夹和工程名称,为前面填写的文件夹和工程名称。
第二步,分配引脚。
首先选中顶部Keep Current Signals Placement复选框,可以防止后面的配置修改先分配的引脚。点击Pinout标签页,在左侧树形列表中展开Configuration -> IPs -> RCC项,High Speed Clock (HSE)下拉框选择Crystal/Ceramic Resonator,可以看到右侧引脚图自动设置了PH0/OSC_IN和PH1/OSC_OUT引脚功能。如图7所示。
图7
在右侧引脚图中点击PG13,在弹出菜单中选择GPIO_Output,如图8所示。同样的,PG14也设置为GPIO_Output。这两个引脚是控制LED的。为了在引脚图中快速找到引脚,在顶部Find框中输入PG13然后回车,引脚就会闪烁显示,注意如果引脚没在显示范围内,需要手动缩放(滚动鼠标滚轮)或移动(鼠标左键拖动)引脚图。
图8
回复:【STM32F429开发日志】(三)使用STM32Cube开发环境
第三步,配置时钟。点击Clock Configuration标签页,将框图中HSE左侧的Input Frequency改为8,System Clock Mux选择HSE,AHB Prescaler、APB1 Prescaler和APB2 Prescaler均选择/1,如图8A所示。
图8A
第四步,配置GPIO。
点击Configuration标签页,点击GPIO按钮,在Pin Configuration对话框中选择GPIO标签页,在上面列表中选择第一行PG13,然后在下面选择PG13引脚配置,如图9所示。同样的配置PG14引脚。最后点击OK按钮。
图9
第五步,生成MDK工程及配置代码。
点击菜单Project -> Settings,在Project Settings对话框的Toolchain/IDE下拉框选择MDK-ARM 4.73,最后点击OK按钮保存,如图10所示。Code Generator标签页中是一些生成代码的选项,使用默认值即可。注意,使用MDK-ARM 4.73或者更高版本都可以,经测试MDK V4.74和V5.11都可以正常打开并编译生成的工程。
图10
点击工具栏生成代码按钮或菜单Project -> Generate Code,开始在工程所在目录生成IDE工程和配置代码。完成后弹出Code Generation对话框,点击Open Project按钮打开MDK,如图11所示。
图11
最后一步,在MDK中修改main.c文件添加用户代码。
注意,修改使用STM32CubeMX生成的main.c文件时,只能修改/* USER CODE BEGIN x */和/* USER CODE END x */之间的代码,并且不能在其它位置添加新的用户代码区域,否则在下一次重新生成代码时修改的部分会丢失。
完整的示例代码在附件中。
RE:【STM32F429开发日志】(三)使用STM32Cube开发环境
楼主辛苦了~楼主辛苦了~RE:【STM32F429开发日志】(三)使用STM32Cube开发环境
;P;Pmark!!! 请问我在生成代码的时候提示“...but MDK-ARM 4.73 project generation have a problem”要怎么解决?不管换哪个目标环境生成哪个系列的都不行 看起来有点老。 是不是原创?
页:
[1]
2