对于一个STM32工程,如何知道需要初始化哪些东西?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了对于一个STM32工程,如何知道需要初始化哪些东西?相关的知识,希望对你有一定的参考价值。

参考技术A 首先,stm32的时钟是根据需要开启的,所以当你要操作IO口的时候就得开启时钟RCC_APB2PeriphClockCmd
然后你得配置IO口的速率(GPIO_InitStructure.GPIO_Speed),输出或输入的模式(GPIO_InitStructure.GPIO_Mode
),以及用到的引脚(
GPIO_InitStructure.GPIO_Pin
=
GPIO_LED_ALL;

当然这只是配置IO口方面,当你要建立工程进行流水灯操作时,还得配置系统时钟,要不系统怎么工作呢,对于最简单的流水灯实验只要这些配置就够了,因为延时函数可以自己写当时间要求不那么严格可以不用定时器
当你要用到定时器时在配置定时器,用到中断时再配置中断,,等等等
至于具体的各个部分怎么配置那就自己找资料和实验了
参考技术B 首先,stm32的时钟是根据需要开启的,所以当你要操作IO口的时候就得开启时钟RCC_APB2PeriphClockCmd
然后你得配置IO口的速率(GPIO_InitStructure.GPIO_Speed),输出或输入的模式(GPIO_InitStructure.GPIO_Mode
),以及用到的引脚(
GPIO_InitStructure.GPIO_Pin
=
GPIO_LED_ALL;
参考技术C 这个是初始化GPIO,你需要用什么东西就配置什么,但是一般RCC和GPIO是都需要去配置的,怎么说呢,芯片运行什么总是从GPIO体现出来的吧,时钟RCC相当于一切的能源,这个必须要。其他的,例如你要使用STM32的SPI,IIC,FSMC等等,你就要配置相应的GPIO,RCC,以及SPI,IIC,FSMC配置等等。

使用STM32CubeMX生成STM32工程

使用STM32CubeMX生成STM32工程

引言

随着技术发展的越来越成熟,单片机开发已经出现越来越多好用的开发软件了。STM32CubeMX是一种图形工具,通过分步过程可以非常轻松地配置STM32微控制器和微处理生成相应的初始化C代码。可以对STM32开发提供很大的便捷。本文将介绍如何使用STM32CubeMX生成一个简单的STM32工程,为以后的开发奠定基础。

介绍

STM32CubeMX是被广泛使用的。它集成了芯片选型、引脚分配和功能配置,中间件配置,时钟配置,初始代码和项目的功能。

使用流程

  1. 首先创建一个新建一个ioc文件工程。

    点击ACCESS TO MCU SELECTOR

  2. 选取到对应的芯片(这里选用STM32C8T6)
    ![ ](https://img-blog.csdnimg.cn/ec67ffe825e749a2b49e9bb6430af4ef.png

  3. RCC选取外部时钟

  4. 选择Debug(不选不能烧录和调试)

  5. 选择时钟源
    若要使用RTOS的话,sys这里就不可以选取SysTick,要更换成其他定时器,这里我选用了TIM1,如果不跑操作系统那么也可以直接选择SysTick。

  6. 在GPIO中选择自己使用的引脚。

  7. 选择串口,设置里面的参数

  8. 选择FreeRTOS(不跑FreeRTO可以直接省略这步,初学者建议省略)
    里面的参数选择自己用的,注意FreeRTOSConfig.h里面的信息都可以在这里配置。

    添加任务

  9. 设置系统时钟

  10. 填写生成的工程信息(工程名称,存放位置等)

    值得注意的是,MDK的最小版本千万不要选错

  11. 生成代码

  12. 成功的话会出现提示

  13. 我们进入代码,可以看到我们配置的内容代码都已经帮我们生成。

  14. 进入Keil 5后,不要忘了配置debug,不然会烧录失败。

  15. 我们编译一下,可以看到编译成功,下面我们就可以进行我们的后续开发了。

以上是关于对于一个STM32工程,如何知道需要初始化哪些东西?的主要内容,如果未能解决你的问题,请参考以下文章

MDK524a新建STM32工程--标准外设库V3.5

一份标准的STM32工程模板都需要哪些文件?(B站江科大自化协)

STM32基本定时器

使用STM32CubeMX生成STM32工程

使用STM32CubeMX生成STM32工程

STM32配置最简单的PWM波 需要设置哪些东西?