创建工程&点亮LED
前言
之前学习了使用官方固件函数库来进行项目开发,但是效率还是比较低,也有很多不方便之处,现在决定学习一下使用CubeMX以及hal库进行开发。
使用CubeMX创建项目
启动界面
创建新项目
connect to http server连不上去可以不管他点cancel
选择自己芯片的型号
我用的是STM32f103C8T6,直接在左上角输入型号
如果你还没想好用什么芯片,可以根据自己的需要在左侧选择选择IO口数量,Flash大小,Ram大小等等来选择合适的芯片型号
配置管脚功能
配置时钟
选择外部晶振为时钟源
在Clock Configuration处将HCLK改成48
配置SYS
配置SWD仿真下载管脚,选择左侧SYS分栏,勾选debug serial wire。右侧两个管脚会自动选择相应功能
配置USART
选择USART1分栏,模式选择异步模式,勾选下面RS232硬件流控制
配置IO
配置的一些引脚,想看看推挽输出和开漏输出有什么区别
创建工程文件
点亮LED
打开工程文件:
添加启动文件
如果遇到卡死的情况参考用cube5.5生成代码后用keil5打开,然后添加自己的文件夹,keil出现卡死[已解决]
写用户代码并编译
/* Infinite loop */
/* USER CODE BEGIN WHILE */
while (1)
{
/* USER CODE END WHILE */
HAL_GPIO_WritePin(LED0_GPIO_Port,LED0_Pin,GPIO_PIN_RESET);
HAL_Delay(500);
HAL_GPIO_WritePin(LED0_GPIO_Port,LED0_Pin,GPIO_PIN_SET);
HAL_Delay(500);
/* USER CODE BEGIN 3 */
}
/* USER CODE END 3 */
下载
我使用的是Jlink
点setting,Port选择SW
最后点击DOWNLOAD下载程序