stm32F407开发环境配置

通过ST官方提供的STM32CubeMX和STM32CubeIDE来作为开发配置工具和开发工具,非常方便,会大大降低学习难度,强烈推荐使用 STM32CubeIDE就是魔改的Eclipse,相当于在eclipse的基础上增加了一个Plugin,可以通过这个工具图形化配置时钟、GPIO接口等

一、安装

安装太简单了,就不细写了,一路next就行,就几个需要注意的地方

  1. eclipse是基于Java的,电脑上需要安装好jre或者JDK;
  2. 安装完毕之后,通过STM32CubeMX,下载相应的芯片HAL库,我的开发板是stm32f407zgt6,下载相应的库

二、配置

新建项目,需要针对开发板芯片进行对应的配置,这里稍微复杂一点,做个记录

基本配置(SYS)

Debug:配置为:Series Wire

时钟配置(RCC)

启用外部高速时钟,我这个开发板外部使用的是要给8M晶振

  1. HSE(外部高速时钟):Crystal/Ceramic Resonator
  2. LSE(外部低速时钟):可以不启用,或者同HSE
  3. 启用外部时钟:Input frequency:设置为8M
  4. PLL Source设置为HSE
  5. System Clock设置为:PLLCLK(Enable css)
  6. HCLK设置为168M,最高主频,这里只需要填写对应主频即可,系统会自动计算/M,*N,/P等数据
  7. ABP1,ABP2预分频分别设置为4,2
  8. 如果设置的参数有问题,最右边的频率数据会显示红色

GPIO配置(GPIO)

通过图形化的引脚配置,鼠标电子芯片图形上对应的引脚,设置相应模式即可

Project Manager配置

  1. Project配置:填写项目名称、项目位置,以及开发IDE工具(IDE开发工具的选择,决定了生成代码的结构和配置文件,我使用的是STM32CubeIDE,在Toolchain/IDE选择STM32CubeIDE,如果是其他工具,选择对应的选项)
  2. Code generator:勾选copy only the ...(复制必要的开发库文件)和Generate peri...(自动生成c和h头文件)

三、下载程序

通过串口下载的是hex二进制文件,但是STM32CubeIDE默认生成的是elf文件,因此需要配置IDE。

生成hex文件

  1. 项目右键-->Properties-->C/C++ build-->Settings-->Tool settings-->MCU Post build outputs-->勾选Convert to intel hex file
  2. 生成hex文件:Project--> build project
  3. 找到hex文件:项目目录-->Debug-->项目名称.hex

烧录程序

根据开发板卖家推荐的串口烧录程序:flymcu

  1. 安装串口转USB的驱动:CH340驱动,去wch官方网站下载,安装驱动的时候,需要插上开发板(开发板连接usb ttl这个usb接口)
  2. 配置flymcu:
    1. 选择com端口,CH340驱动安装完毕后,可以在系统设备管理器中,查看com是哪个端口,我的系统显示为com3
    2. 配置波特率(bps)为:76800
    3. 选择STMISP,勾选校验编程后执行
    4. 勾选编程前重装文件
    5. 取消勾选编程到flash时写选项字节
    6. 选择DTR低电平复位,RTS高电平进Bootloader
    7. 注意:以上选项选择一个,写入程序时,就会报错,务必注意
  3. 选择需要烧录的hex文件后,点击开始编程即开始烧录,flymcu的右边log会显示烧录进度和日志。

四、注意

  1. STM32CubeIDE已经包含了STM32CubeMX的图形化配置功能,其实安装一个即可;
  2. GPIO的引脚配置,下次根据实际例程来配置;
  3. 时钟配置,其实只需要配置几个地方即可,无需配置主频分频,按照上面的步骤就行了
  4. 代码写在main.c的提示位置,后面再次更改配置的时候,系统会保护写的代码,否则写的代码就被擦除了
  5. 我是通过开发板上的串口转usb端口来下载程序,板载2个usb接口,使用usb ttl接口,不能使用usb otg接口

results matching ""

    No results matching ""

    results matching ""

      No results matching ""