一、安装STM32CubeMX
官网地址:下载链接 具体过程可参考博客:STM32CubeMX安装教程
二、配置STM32CubeMX
打开STM32CubeMX,选择Help下的Manager embedded software packages ![在这里插入图片描述](https://img-blog.csdnimg.cn/c52787c1549445b9baea0add835b0a8b.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA57ay5oiA6KKr6aiZMzLokKw=,size_20,color_FFFFFF,t_70,g_se,x_16) 芯片选择STM32F1 选择INstall Now,此过程需要联网 ![在这里插入图片描述](https://img-blog.csdnimg.cn/59cb66a510044d1cb1816ecd70d3ae60.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA57ay5oiA6KKr6aiZMzLokKw=,size_20,color_FFFFFF,t_70,g_se,x_16)
三、创建工程
点击File选项下的New project ![在这里插入图片描述](https://img-blog.csdnimg.cn/124742e8c8964c22b74726d7f871c338.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA57ay5oiA6KKr6aiZMzLokKw=,size_20,color_FFFFFF,t_70,g_se,x_16)
选择芯片 在Part Number处输入自己的芯片型号,笔者的为STM32F103C8。 ![在这里插入图片描述](https://img-blog.csdnimg.cn/66b42402f7ca4c9381cd8c3e7d2222a8.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA57ay5oiA6KKr6aiZMzLokKw=,size_20,color_FFFFFF,t_70,g_se,x_16)
- 选择system core下的sys ,将debug设置为serial wire
![在这里插入图片描述](https://img-blog.csdnimg.cn/91916db9aa6d4c08863644e83b12d6a5.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA57ay5oiA6KKr6aiZMzLokKw=,size_20,color_FFFFFF,t_70,g_se,x_16) - 选择RCC,将High Speed Clock 设置为 Crystal/Ceramic Resonator
![在这里插入图片描述](https://img-blog.csdnimg.cn/889d8fb5f03a468d83d57300cbdeed6a.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA57ay5oiA6KKr6aiZMzLokKw=,size_20,color_FFFFFF,t_70,g_se,x_16) - 选择Clock Configuration
![在这里插入图片描述](https://img-blog.csdnimg.cn/1ac7e32665cc498c9d59c40b8c2aea80.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA57ay5oiA6KKr6aiZMzLokKw=,size_20,color_FFFFFF,t_70,g_se,x_16)
四、配置GPIO
选择GPIO,一次将B5、B15、A5设置为GPIO_Output ![在这里插入图片描述](https://img-blog.csdnimg.cn/d68cef2f587c4aa196c488a2baa53111.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA57ay5oiA6KKr6aiZMzLokKw=,size_20,color_FFFFFF,t_70,g_se,x_16) ![在这里插入图片描述](https://img-blog.csdnimg.cn/6e67dd0de7fe4c35aa206e59ff81cebb.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA57ay5oiA6KKr6aiZMzLokKw=,size_20,color_FFFFFF,t_70,g_se,x_16) 笔者此处只示例一个,后续的自行添加!、
五、添加至Keil5
在project Manager下的Project中设置工程名称和工程路径,并且选择编译软件,由于我们使用Kei5,选择MDK-ARM ![在这里插入图片描述](https://img-blog.csdnimg.cn/6d6f3fbf22c74bd4a236633c6cb56b14.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA57ay5oiA6KKr6aiZMzLokKw=,size_20,color_FFFFFF,t_70,g_se,x_16)
在Code Generate中选择第一个,然后Generate Code。 会有提示,选择open project 选择Keil5打开 打开Application/User/Core中的main文件 ![在这里插入图片描述](https://img-blog.csdnimg.cn/115326ab8e614bfb976cd2042cc3aed5.png?x-oss-process=image/watermark,type_ZHJvaWRzYW5zZmFsbGJhY2s,shadow_50,text_Q1NETiBA57ay5oiA6KKr6aiZMzLokKw=,size_9,color_FFFFFF,t_70,g_se,x_16) 找到while循环中的代码并在其中添加以下代码
HAL_GPIO_WritePin(GPIOB, GPIO_PIN_5, GPIO_PIN_RESET);
HAL_Delay(1000);
HAL_GPIO_WritePin(GPIOB, GPIO_PIN_5, GPIO_PIN_SET);
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_5, GPIO_PIN_RESET);
HAL_Delay(1000);
HAL_GPIO_WritePin(GPIOA, GPIO_PIN_5, GPIO_PIN_SET);
HAL_GPIO_WritePin(GPIOB, GPIO_PIN_15, GPIO_PIN_RESET);
HAL_Delay(1000);
HAL_GPIO_WritePin(GPIOB, GPIO_PIN_15, GPIO_PIN_SET);
编译代码,对其进行烧录,烧录过程可参考博客: STM32F103寄存器方式点亮LED流水灯 效果如下 ![请添加图片描述](https://img-blog.csdnimg.cn/149925c976114db5ab9fe23e1994715f.gif)
七、参考文章
STM32CubeMX安装教程 STM32实现LED闪烁——基于HAL库
|