我的学习之路_stm32f103c8t6_Day3

212 阅读2分钟

stm32CubeMx 的介绍

HELP

stm32cubemx_help.png

Pintout & Configuration

stm32cubemx_SysDebug.png

上图中的 Serial Wire 是要选择的不能默认(调试使用 J-link)

clock

stm32cubemx_Clock.png

时钟配置怎么说呢,就是看硬件配置

代码生成前选项

stm32cubemx_ProjectOutSet.png

  1. 工程设置

    1. Project Name:工程名称
    2. Project Location:工程存放路径
    3. Application Struture:应用程序结构
      1.   Basic:是基础的结构,一般不包含中间件(RTOS、文件系统、USB设备等)。
      2.   Advanced:相反就是包含中间件,一般针对相对复杂一点的工程。
    4. Toolchain Folder Location:工具链文件夹路径
    5. Toolchain/IDE:工具链选择
  2. 堆栈设置 主要是堆和栈大小的设置。缺省值:Heap堆为0x200,Stack栈为0x400.

  3. MCU和固件包选择(默认即可)

stm32cubemx_ProjectCodeOutSet.png

  1. 固件包拷贝设置

    1. Copy all used libraries into the project folder 将所有使用过的库复制到项目文件夹中。
    2. Copy only the necessary library files 只复制必要的库文件。
    3. Add necessary library files as reference in the toolchain project configuration file 将库包作为绝对路径加载到工程中使用
  2. 生成文件设置

    1. Generate peripheral initialization as a pair of’.c/.h’ files per peripheral 每个外设生成独立的’.c/.h’文件
      •   不勾:所有初始化代码都生成在main.c
      •   勾选:初始化代码生成在对应的外设文件。 如UART初始化代码生成在uart.c中。
    2. Backup previously generated files when re-generating 在重新生成时备份以前生成的文件重新生成代码时,会在相关目录中生成一个Backup文件夹,将之前源文件拷贝到其中。
    3. Keep User Code when re-generating 在重新生成时保留用户代码
      • 比如:我在main.c中添加了一段代码,重新生成时,会在main.c中保留你之前自己添加的这段代码。
      • 注意:前提是这段代码写在规定的位置。也就是BEGIN和END之间。否则同样会删除。
    4. Delete previously generated files when not re-generated 删除以前生成,但现在没有生成的文件
      • 比如:之前生成了spi.c,现在重新配置没有spi.c,则会删除之前的spi.c文件。
  3. HAL设置

    1. Set all free pins as analog (to optimize the power consumption) 将所有空闲引脚设置为模拟(以优化功耗)这个做低功耗产品时这个选项有必要勾选。
    2. Enable Full Assert 使能所有断言
  4. 模板设置

stm32cubemx_AdvancedSetting.png

  • 驱动选择用什么库设置
  • 函数使用的是静态类型还是全局类型