使用STMCubeMX生成代码实现点亮流水灯
一、安装STM32cubeMX
-
安装地址: 下载好之后打开,点击Next 同意协议,继续Next
-
勾选第一个就好,点击Next 选择一个安装路径,点击确定,之后Next 点击Next 之后点击安装,安装完成如下图 安装完成之后还没完,打开STM32CubeMX,点击Help(这里可能会打不开,如果打不开等一下就好) 勾选依赖包并install now 开始在线安装,等待完成就好
二、用STM32CubeMX初始化代码
-
输入芯片型号,这里我用的STM32F103C8,然后点击最右侧的start project 点击System Core,再点击SYS,在debug选项中选择Serial Wire 把PLLCLK右边选上 将hse设为Crystal/Ceramic Resonator 点击相应的引脚设置输出寄存器,选择output那一项。我一共选了三个,分别是PA0,PB9,PC15 点击project manager,填写路径和项目名,将IDE改为MDK-ARM 进入code generate界面,选择生成初始化.c/.h文件,后面点击generate code,之后等待一下 点击Open就可以从keil中打开项目了
三、修改代码并点亮流水灯
-
打开项目之后,打开main.c文件,找到while函数在里面添加实现功能的代码
HAL_GPIO_WritePin(GPIOA,GPIO_PIN_0,GPIO_PIN_RESET);//PA0亮灯 HAL_Delay(500);//延时0.5s HAL_GPIO_WritePin(GPIOA,GPIO_PIN_0,GPIO_PIN_SET);//PA0熄灯 HAL_Delay(500);//延时0.5s HAL_GPIO_WritePin(GPIOB,GPIO_PIN_9,GPIO_PIN_RESET);//PB9亮灯 HAL_Delay(500);//延时0.5s HAL_GPIO_WritePin(GPIOB,GPIO_PIN_9,GPIO_PIN_SET);//PB9熄灯 HAL_Delay(500);//延时0.5s HAL_GPIO_WritePin(GPIOC,GPIO_PIN_15,GPIO_PIN_RESET);//PC15亮灯 HAL_Delay(500);//延时0.5s HAL_GPIO_WritePin(GPIOC,GPIO_PIN_15,GPIO_PIN_SET);//PC15熄灯 HAL_Delay(500);//延时0.5s
-
注意:烧录运行,串口烧录要断电之后把boot0置0才能正常运行。
四、运行结果
-
信号波形图 流水灯运行结果
STMCubeMX生成代码实现点亮流水灯
STMCubeMX生成代码实现点亮流水灯五、总结
使用STMCubeMX生成代码编程比自己写代码会方便很多,只需要自己写一个while函数中的内容就够了。同时也有一些微小的诧异比如将BOOT0置零。
