-
安装相关开发工具
-
Keil MDK 工具下载
略, 自行体会 -
Keil 芯片支持包下载
Keil 包 网址 https://www.keil.com/pack
此处下载的是STM32L4xx的支持包
https://www.keil.com/pack/Keil.STM32L4xx_DFP.2.6.2.pack -
STM32CubeMX 下载与包下载
i. 下载(需要使用用户)
网址:
https://www.st.com/zh/development-tools/stm32cubemx.html
拉到底下 “获取软件” 部分下载 STM32CubeMX-Win 进行下载;ii. 包下载(需要使用用户)
打开安装好的STM32CubeMX软件, 点击右边 Install or Remove embedded software packs releases
下载自己的芯片支持
-
-
使用 STM32CubeMX 创建一个开发板的 Keil 项目
-
简介我的开发板上的硬件与芯片的引脚映射信息
a. 开发板 : Bearpi Std(小熊派标准板)
b. 主芯片: STM32L431RCT6 (80MHz)
c. 用户灯 : PC13 \ 推挽输出即可 \ 高电平点亮 -
配置一个点亮LED的项目
i. 打开STM32CubeMX 软件, 创建一个新项目, 芯片选择STM32L431RCT6
ii. 初始化时钟
遵循医嘱 RCC 设置为内部时钟
设定80MHz 时钟 并 Enter (回车)进行设置
配置项目的LED使用引脚为输出
-
设置GPIO的标签, 这样生成的代码就会将标签访问LED的GPIO了
生成代码
- 编译和下载程序到你的开发板中
1) 打开 STM32CubeMX生成的Keil项目
在生成项目目录下的MDK-ARM目录下又 BearPi_LED.uvprojx文件双击打开
2) 进行简单编译
3) 添加用户代码
在main函数的while 循环中添加你的代码块, 注意在注释 BEGIN开始的位置添加,这样使用STM32CubeMX重新生成代码的时候会保留块内代码
/*** @brief The application entry point.* @retval int*/
int main(void)
{/* USER CODE BEGIN 1 *//* USER CODE END 1 *//* MCU Configuration--------------------------------------------------------*//* Reset of all peripherals, Initializes the Flash interface and the Systick. */HAL_Init();/* USER CODE BEGIN Init *//* USER CODE END Init *//* Configure the system clock */SystemClock_Config();/* USER CODE BEGIN SysInit *//* USER CODE END SysInit *//* Initialize all configured peripherals */MX_GPIO_Init();/* USER CODE BEGIN 2 *//* USER CODE END 2 *//* Infinite loop *//* USER CODE BEGIN WHILE */while (1){/* USER CODE END WHILE *//* USER CODE BEGIN 3 */HAL_GPIO_TogglePin(USER_LED_GPIO_Port, USER_LED_Pin);HAL_Delay(1000); // delay 1s }/* USER CODE END 3 */
}