简介
搭建一个用于驱动 STM32F103ZET6 GPIO点亮LED灯的任务;
电路原理图
LED电路原理图
芯片引脚连接LED驱动引脚原理图
创建一个点亮LED灯的Keil 5项目
创建STM32CubeMX项目
New Project -> 单击 -> 芯片搜索STM32F103ZET6->双击创建
初始化时钟
调试设置
一定要设置, 其他板我没遇到过,这块板在某一次使用之后就无法正常使用ST-Link烧录了, Keil报错Internal command error, 当我设置了这个之后才又恢复正常
初始化LED GPIO引脚
项目配置
设置项目名称、项目生成目录、生成MDK-ARM v5.32项目
代码生成方式配置
生成项目及代码
生成的目录结构
Drivers : 放置STM32F103ZET6硬件驱动引导库 CMSIS\STM32F1xx_HAL_Driver
Inc/Src : 分别放置硬件及用户相关代码头文件和源文件包含main.c函数
MDK-ARM: 放置Keil项目文件及STM32F103ZET6的启动文件startup_stm32f103xe.s
用户代码
双击MDK-ARM目录下的STM32ZF103ET6_Project.uvprojx打开项目
main.c添加代码
int main(void)
{...while(1){HAL_Delay(1000); // 延时1sHAL_GPIO_TogglePin(LED1_GPIO_Port, LED1_Pin); // 改变/反转引脚状态}...
}
最后就可以看到LED灯 和 数码管一闪一闪,因为LED跟八段数码管的驱动引脚是相同的。
Note:
Keil 中要设置
参考
BearPi Std 板从入门到放弃 - 引气入体篇(1)(由零创建工程到点亮LED)