第一个STM32CubeIDE项目

  • Post author:
  • Post category:其他


使用STM32CubeIDE的第一个项目

今天开始做一个STM32CubeIDE的第一个项目,首先需要说明的:

  • STM32CubeIDE是一个免费的软件



开始第一个项目

在文件菜单中选择NEW -> STM32 Project

在这里插入图片描述

这里注意,我又使用WIndows下载了STM32CubeIDE,因为MAC总在要下载工具的地方停止。

可以在Part Number栏直接输入自己的MCU型号。我想在项目中添加从某宝卖得STM32F103C8T6,添加和编译等都没有碰到问题,在ST-LINK这一关出现了问题,总是说校验没有通过,但这个ST-LINK已经在Keil MDK中使用,any way,好在前几天从网上购买了STM32的正品NUCLEO-F103RB, 在这里派上了用场。在最上面的Board Selector中选择这个板子。

板子选择好了,没有在时钟选择上遇到麻烦,进入了工作画面。在这里,出现下面的选项时,我没有选择Yes

在这里插入图片描述

可以看到,这个画面和过去看到的STM32CubeMX很相似:

在这里插入图片描述



添加代码

在主程序中添加简单的代码,增加一个delay_us和一个delay_ms程序,在主循环中添加下面的程序:

while (1)
  {   
	 delay_ms(500);       
	 GPIOB->ODR=0;      //全部输出0
	 GPIOA->ODR=0;  
	 GPIOC->ODR=0;
	 GPIOD->ODR=0;
	 delay_ms(100);
	 GPIOB->ODR=0xffffffff;  //全部输出1 
	 GPIOA->ODR=0xffffffff;   
	 GPIOC->ODR=0xffffffff;
	 GPIOD->ODR=0xffffffff;
}

然后编译,运行,可以看到板子上的灯在闪亮了。一个程序就此完成了。Keil如何是好。下面要做的是从网上去采购一个正版的ST-LINK。

需要多说几句,用NUCLEO-103RB可以编辑外部应用,就是可以使用ST-LINK给其他的板子编程,我选择了这个选项,为STM32F103C8T6编译没有问题,但下载程序还是说校验没有通过,可使用KEIL MDK却可以下载程序。还是不清除是为啥。不知道中国STM32是不是有技术支持没有。

还是多说两句吧,这个STM32CubeIDE的确比较好用,但是不是对于中国的ST-Linker-V2的产品可能还是不能很好的支持。使用某宝的ST-Link-V2产品:

在这里插入图片描述

编译时总是出错,显示:

Starting Server with the following options:

Persistent Mode : Disabled

Logging Level : 1

Listen Port Number : 61234

Status Refresh Delay : 15s

Verbose Mode : Disabled

SWD Debug : Enabled

Vendor = 0x55

Error in initializing ST-LINK device.

Reason: ST-LINK: Could not verify ST device! Abort connection.

无法编译下载。好像也没有可以生成HEX文件的地方。继续为大家找原因。有知道的朋友请告知。

今天在网上看到有网友发的用一个命令来实现elf文件转换成hex后缀的程序,程序名:

arm-none-eabi-objcopy.exe,程序大小为:765 kB。执行这个文件可以生成hex的文件,然后用STM32 ST-LINK Utility下载程序可以操作了。这样就可以用STM32CubeIDE为STM32系列的MCU编程了。



版权声明:本文为weixin_44481398原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。