基础外设初始化配置步骤
本学习以stm32f103c8t6为主控芯片学习。配合DMK-Keil使用,因为cubeide我还没找到很好的教程,而且用了几次发现不会用,所以还是先学习hal库,等hal库学习完之后再用学习使用cubeide,两者使用应该大差不差,主要还是先会使用cubemx
新建工程
1在主界面选择File-->New Project 或者直接点击ACCEE TO MCU SELECTOR
搜索自己板子的芯片,就可以了,双击创造工程
接下来会到这个界面,
在右边这个芯片中
这种颜色表示不可配置引脚 电源专用引脚以黄色突出显示。其配置不能更改
这种颜色表示你配置了一个I/O口的功能,但是没有初始化相对应的外设功能 引脚处于no mode 状态
绿色表示配置成功
GPIO口的配置
这里只需要把我们的LED对应引脚设置为GPIO_Output即可
我们将PA1上接上一个led灯,将PA1设置为GPIO_Output。
时钟源设置
点到clock_configuration中配置时钟树
其实也就是32的时钟树框图让你配置 默认时钟是使用内部RC振荡器(HSI)
在配置时钟前需要将
RCC配置为外部晶振即crystal resonator
这里也可以将SYS中的debug改为Serial Wire这样就方便调试了。
之后再点到clock_configuration中配置时钟树
将途中所框的改为72,就配置完成了
工程管理
点到Project Manager
需要配置红色框框中的几个配置,分别为文件名,文件存放地址和选择IDE
我是配置成如图所示(IDE选择MDK_ARM就是keil编译器)
注意点:存储目录不可以有中文
接着点到code generator中
勾选红框中所选配置。每个外设都配置单独的.c和.h文件。这样方便我们管理和写代码。
生成代码
点击即可。
代开代码
我们将会看到我们的不少代码以及生成了,我们只需要填写关键代码即可。
我们找到while(1)
while (1)
{
/* USER CODE END WHILE */
HAL_Delay(500);
HAL_GPIO_TogglePin(GPIOA, GPIO_PIN_1);
/* USER CODE BEGIN 3 */
}
/* USER CODE END 3 */
}
将代码设置成这样。
注意!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
所有自己编写的代码请放在/* USER CODE BEGIN XXX */ /* USER CODE END XXX */之间
这样我们修改工程的时候你自己写的代码就不会被删除
各个注释的翻译解释
到此,STM32CubeMX的基本使用介绍完了。我们也成功使一颗led闪烁了