STM32CubeIDE体验
软件安装
1 - 安装jre环境
ST很多官方软件使用JAVA开发,如果电脑上没有安装jre,建议先安装jre。jre软件安装很简单,直接一直next就可以了。
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIyVGduV2YfNWawNCM38FdsYkRGZkRG9lcvx2bjxiNx8VZ6l2cskXRE1UeZNDWwg2MMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2X0hXZ0xCMx81dvRWYoNHLrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnLxAzN1MTN0gTM4ADOwkTMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
2 - 安装CubeMX
由于开发STM32开发需要使用HAL库,所以我们需要先安装一下STM32CubeMX。这个软件安装也比较简单,基本就是一直Next。
至此,软件就安装完毕了,我们还需要安装HAL库,不过ST服务器最近好像有些问题,直接通过STM32CubeMX安装HAL老是出错,所以我们使用另一种方法安装HAL库。那就是直接下载HAL库之后,解压到%HomePath%/STM32Cube/Repository目录下。
解压之后,刷新一下,STM32CubeMX就可以正常使用了。
3 - 安装STM32CubeIDE
这个软件也是一路Next就好了,下面贴出安装过程中的截图。
建立工程
1 - 打开软件
打开软件选择目录。
会生成新的工程,打开如下界面。
设置RCC时钟系统,设置为外部晶振模式。
开发板PE4连接到LED灯上,设置对应GPIO为输出模式。
设置时钟树。
工程输出设置。
配置完成后生成代码。
双击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 */
}
至此,代码就已经完成了。编译以下工程。
接下来,我们使用Stlink进入Debug模式,将代码烧录至STM32F103ZET6中。
双击STM32 MCU Debug,设置仿真细节。
至此代码已经能跑起来了。