第一个STM32工程
STM32作为一款高性能单片机,使用非常广泛。在这里,我以常见的点灯来创建我们的第一个32工程。
一、了解STM32
STM32是由意法半导体(STMicroelectronics)集团以ARM公司的Cortex®-M系列为内核推出的32位单片机系列,具有性能高,功耗低,开发简单等特点。其整个产品分布如下图
二、安装开发工具
在这里我推荐使用STM32CubeMX和KEIL5来开发STM32的程序。STM32CubeMX可以在ST官网下载(也可以在这里直接点击下载),KEIL5可以在ARM官网下载(也可以直接在这里点击下载)。当然,你也可以选择使用IAR或者STM32CubeIDE等来进行开发。
STM32CubeMX是由ST官方推出的一个图形化编程的软件,具有使用简单,代码可移植性强等特点,可以减少开发人员很大一部分他的重复操作,其实用的是官方的HAL库和LL库,我们主要使用的是HAL库。
三、配置工程
我们首先打开我们之前安装好的STM32CubeMX,新建一个cubremx的工程
然后选择芯片型号,这里以stm32f103c8t6为例
选好芯片型号后我们就可以开始对stm32来进行一些硬件层面的配置了,首先我们要设置好时钟和调试模式
在RCC的High Speed Clock(HSE)里面我们选择Crytal/Ceramic Resonator
设置好时钟源后再把主频设为170MHz
然后我们再设置好下载方式
设置好系统的时钟和下载方式以后就开始初始化我们的GPIO口,在右侧的芯片图中点击我们的灯所接的单片机引脚(以PA8为例),我们以PA*然后配置为GPIO_Output
然后再在Project Manage中设置好工程信息(注意工程一定要保存在全英文路径下),在Toolchain/IDE中选择MDK-ARM,最后直接点击GENERATE CODE来生成我们的KEIL工程,点击Open Project就可以直接打开
在main函数的while循环里面添加下面的代码
HAL_GPIO_TogglePin(GPIOA,GPIO_PIN_8);
HAL_Delay(500);
编译、下载后我们就可以看到灯在一直闪了。
我作为一个学生,是第一写博客,写的不好还请见谅。