STM32CubeIDE体验

STM32CubeIDE体验

软件安装

1 - 安装jre环境

  ST很多官方软件使用JAVA开发,如果电脑上没有安装jre,建议先安装jre。jre软件安装很简单,直接一直next就可以了。
 
STM32CubeIDE体验_第1张图片

STM32CubeIDE体验_第2张图片
STM32CubeIDE体验_第3张图片
 

2 - 安装CubeMX

  由于开发STM32开发需要使用HAL库,所以我们需要先安装一下STM32CubeMX。这个软件安装也比较简单,基本就是一直Next。
cubemx_1
STM32CubeIDE体验_第4张图片
STM32CubeIDE体验_第5张图片
STM32CubeIDE体验_第6张图片
STM32CubeIDE体验_第7张图片
STM32CubeIDE体验_第8张图片
STM32CubeIDE体验_第9张图片
STM32CubeIDE体验_第10张图片
STM32CubeIDE体验_第11张图片
 
  至此,软件就安装完毕了,我们还需要安装HAL库,不过ST服务器最近好像有些问题,直接通过STM32CubeMX安装HAL老是出错,所以我们使用另一种方法安装HAL库。那就是直接下载HAL库之后,解压到%HomePath%/STM32Cube/Repository目录下。
 
STM32CubeIDE体验_第12张图片
STM32CubeIDE体验_第13张图片
STM32CubeIDE体验_第14张图片
 
 
  解压之后,刷新一下,STM32CubeMX就可以正常使用了。
 
STM32CubeIDE体验_第15张图片
 

3 - 安装STM32CubeIDE

  这个软件也是一路Next就好了,下面贴出安装过程中的截图。
 
cubeide_0
STM32CubeIDE体验_第16张图片
STM32CubeIDE体验_第17张图片
STM32CubeIDE体验_第18张图片
STM32CubeIDE体验_第19张图片
STM32CubeIDE体验_第20张图片
STM32CubeIDE体验_第21张图片
STM32CubeIDE体验_第22张图片

建立工程

1 - 打开软件

  打开软件选择目录。
 
STM32CubeIDE体验_第23张图片
STM32CubeIDE体验_第24张图片
STM32CubeIDE体验_第25张图片
STM32CubeIDE体验_第26张图片
STM32CubeIDE体验_第27张图片
STM32CubeIDE体验_第28张图片
  会生成新的工程,打开如下界面。
STM32CubeIDE体验_第29张图片
  设置RCC时钟系统,设置为外部晶振模式。
STM32CubeIDE体验_第30张图片
  开发板PE4连接到LED灯上,设置对应GPIO为输出模式。
STM32CubeIDE体验_第31张图片
  设置时钟树。
STM32CubeIDE体验_第32张图片
  工程输出设置。
STM32CubeIDE体验_第33张图片

  配置完成后生成代码。STM32CubeIDE体验_第34张图片
  双击main.c打开文件,GPIO之类的都已经初始化OK。以下截取部分核心代码。

int main(void)
{
  HAL_Init();
  
  SystemClock_Config();

  MX_GPIO_Init();
  
  while (1)
  {
  }
}


static void MX_GPIO_Init(void)
{
	GPIO_InitTypeDef GPIO_InitStruct = {0};
	
	/* GPIO Ports Clock Enable */
	__HAL_RCC_GPIOE_CLK_ENABLE();
	__HAL_RCC_GPIOC_CLK_ENABLE();
	
	/*Configure GPIO pin Output Level */
	HAL_GPIO_WritePin(LED1_GPIO_Port, LED1_Pin, GPIO_PIN_RESET);
	
	/*Configure GPIO pin : LED1_Pin */
	GPIO_InitStruct.Pin = LED1_Pin;
	GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
	GPIO_InitStruct.Pull = GPIO_PULLUP;
	GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
	HAL_GPIO_Init(LED1_GPIO_Port, &GPIO_InitStruct);
}

 
  我们在main.c的while循环中增加LED闪烁的部分。

while (1)
{
	/* USER CODE END WHILE */
	HAL_GPIO_TogglePin(LED1_GPIO_Port, LED1_Pin);
	HAL_Delay(500);
	/* USER CODE BEGIN 3 */
}

 
  至此,代码就已经完成了。编译以下工程。
STM32CubeIDE体验_第35张图片
接下来,我们使用Stlink进入Debug模式,将代码烧录至STM32F103ZET6中。
STM32CubeIDE体验_第36张图片
  双击STM32 MCU Debug,设置仿真细节。
STM32CubeIDE体验_第37张图片
STM32CubeIDE体验_第38张图片
STM32CubeIDE体验_第39张图片
STM32CubeIDE体验_第40张图片
 
  至此代码已经能跑起来了。

你可能感兴趣的:(电子技术)