这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 活动中心 » 板卡试用 » “跳动的心”-第二篇-使用CUBEMX搭建开发环境详解

共3条 1/1 1 跳转至

“跳动的心”-第二篇-使用CUBEMX搭建开发环境详解

菜鸟
2018-09-18 14:58:43     打赏


下面为大家介绍使用HAL库的版本,HAL库是ST公司新推出的一个基于硬件抽象层编程的库,而且推出了STM32CUBEMX软件方便编程,使用起来非常方便。

下面为大家介绍STM32CUBEMX这个软件。(搭配有详细视频讲解STM32CUBEMX软件,从获取到安装,再到搭建开发环境)。

STM32Cube 是一个全面的软件平台,包括了ST产品的每个系列。平台包括了STM32Cube 硬件抽象层(一个STM32抽象层嵌入式软件,确保在STM32系列最大化的便携性)和一套的中间件组件(RTOS, USB, FatFs, TCP/IP,  Graphics, 等等).

l 直观的STM32微控制器的选择和时钟树配置

l 微控制器图形化配置外围设备和中间件的功能模式和初始化参数

l C代码生成项目覆盖STM32微控制器的初始化符合IAR™,Keil的™和GCC编译器。

对于新的产品设计,我们强烈推荐使用STM32Cube来加速你的开发过程,并为以后的产品平台移植打下良好的基础。

软件的安装在这里就不介绍了,在我们EEPW论坛有详细的帖子,大家可以去看:STM32CubeMX介绍,下载与安装:http://forum.eepw.com.cn/thread/293058/1

1.新建工程

打开STM32cubeMX软件,点击New Project

图片14.png

然后出现

图片15.png

在弹出来的对话框中可以选择基于芯片创建工程还是基于特定开发板创建工程,因为我们用的是Nucleo系列stm32F410RBT6板卡,所以我们来根据板卡型号选择。

图片16.png

此处,我们选择Board Selector,并进一步选择我使用的开发板NUCLEO-F401RB

图片17.png

双击该开发板选项,会提示是否采用默认模式初始化所有外设,我选择YES,如图

图片18.png

图中可见,已经完成了初步的配置,并且用不同的颜色进行标识。在左边树状图中,如果该外设能够正常使用,则为绿色,比如本例中的USART2,如果是部分冲突,则会以黄色警告图标的方式进行提醒,比如图片36.png,此处的ADC1。将鼠标移至黄色叹号处,可以看到所示文字。告诉开发人员,ADC1PA5以及USART2的当前配置冲突了,因为我们现在将PA5配置为输出、USART2配置为异步串行通信了。点开ADC1前面的加号,则能更清晰看到具体冲突的ADC通道,

其他的也都同理。由于本例使用了默认配置进行初始化,我们需要做的工作就少了许多。

二、项目设置

 

与很多软件一样,STM32CubeMX也可以进行工程的设置,通过菜单Project->Settings便可进所示工程设置对话框。

图片22.png

点击Code Generator,进行进一步配置,

图片23.png

如果后续不需要新增其他外设,建议Copy necessary,如果后续需要新增其他外设又可能不再用STM32CubeMX,建议Copy all,如果不太会复制到其他地方或者大家的库都放在同一个路径,可以选用Reference,比较节约硬盘空间。

3.配置外设

我们的项目需要用的两个定时器和一个ADC端口,其中一个定时器定时测心率,一个定时器用来PWM输出,ADC用来采集传感器的数据。接下来我们开始配置。

RCC设置,我们使用默认设置。

定时器设置


TIM5设置

TIM5设置

TIM5设置图片27.png

TIM9设置图片28.png

ADC设置图片29.png

时钟配置,时钟配置采用图形配置,直观简单。各个外设时钟一目了然。

图片30.png

功能外设配置

图片31.png

ADC

图片32.png

TIM5

图片33.png

TIM9

图片34.png

这些数值都可以在程序中继续改,大家可以通过调试,跳出来最合适的值。

最后生成工程代码

图片35.png

楼主小哥哥贴心的录制了配套视频,看文字犯困的萌新,可以观看视频学习

使用CUBEMX搭建环境




关键词: 跳动的心     搭建     开发     环境     CUBEMX     第二    

管理员
2018-09-19 09:17:29     打赏
2楼

  谢谢楼主分享


菜鸟
2018-10-27 21:18:26     打赏
3楼

能简单介绍一下“Keil”的用法么?


共3条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]