memleak

导航

记录STM32与雷达通信模块调试的若干问题(基于HAL库)(二)系统的初步搭建

上一次完成了硬件的选型和VSCode下编程环境的基础配置,这一篇文章将连接硬件,并编写控制程序。

一、连接硬件

将最小系统插上面包板,使用跳线连接以下端子:

  • (stm32)SWCLK<------>(stlink)SWCLK
  • (stm32)SWDIO<------>(stlink)SWDIO
  • (stm32)电源<------>(stlink)电源
  • (stm32)USART1_Rx<------>(LD2413)OT1
  • (stm32)USART1_Tx<------>(LD2413)Rx
  • (stm32)USART2_Rx<------>(E32)Tx
  • (stm32)USART2_Tx<------>(E32)Rx
  • (stm32)GPIO_PB0<------>(E32)M0
  • (stm32)GPIO_PB1<------>(E32)M1
  • (stm32)GPIO_PA0(EXIT0)<------>3V3
    雷达模块和无线模块的电源另外引入。

上电后看到所有模块的提示灯均亮起,证明供电正常。

二、项目创建

  1. 安装固件库
    点击顶部的Help,选择connection&update,修改固件库的下载路径,自动更新可以改成Manual手动,因为体积不小,选择OK后还是在Help菜单中找到Manage embedded software packages,找到STM32cube MCU packages,找到你使用的型号下载固件库。
    image
    image

  2. 选择芯片
    回到首页,选择ACCESS TO MCU SELECTOR,选择开发使用的芯片,比如你用的是STM32F103C8T6,点击StartProject开始配置。
    image
    image

  3. 设置引脚
    项目我预先设置好了,这里仅作展示。首先点击左侧System Core,点击SYS,在Debug下拉菜单中选择Serial Wire,即之前连接的SWD,TimeBase选择SysTick系统时钟。
    image
    然后选择RCC,HSE和LSE均选择晶振(Crystal Resonator)。
    image
    点击Connectivity找到STM32的通信端口,配置USART1:Asynchronous异步,硬件流控制Disable,Parameters中设置波特率,数据位,校验位,停止位,如果要使用中断收发的话,需要在下方NVIC中打开全局中断,因为打算用USART1接收雷达数据,连续的数据流,所以配置了DMA,UART1_Rx绑定了DMA通道5,无法更改,考虑雷达是每隔一段时间就上传数据(循环),模式要选择Circular。USART2可以配置DMA发送(STM32->无线模块),其他与USART1一致。
    image
    image
    点击NVIC嵌套相量中断控制,里面显示了所有能启用的中断,这里已经勾选了USART1、2的全局中断,EXIT0外部中断用于暂停DMA传输,直接点击右边的芯片引脚PA0选择EXIT0,在。GPIO里同样可以看到所有已使用的引脚,用于控制E32模式的PB0,PB1引脚设置输出模式为推挽,其他可不做修改。
    image

  4. 设置时钟
    点击上方的Clock Configuration,找到HSE端的Input,默认为8MHz不用改,因为最小系统上使用的也是8MHz晶振,锁相环PLL的倍频设置为9倍,这样能达到系统最大工作频率72MHz,然后APB1总线的分频设置为2,最高36MHz,时钟部分设置完毕。
    image

  5. 项目管理
    点击Project Manager,项目名称和路径自行设置,ToolChain/IDE一栏选择STM32CubeIDE,这样生成的文件可以用EIDE打开,main函数是否生成可自行选择,下面还有多线程支持和固件包,固件包安装好后会自动选择路径,这里无需更改。
    image
    左侧切换到Code Generator,第一栏勾选第二个,只复制必要的库文件到项目,第二栏Generated File勾选134项,第二项是重新生成代码时会备份上一次生成的代码,这里用不到,后面的设置都可以不用动。点击上方的GENERATE CODE即自动生成项目文件。
    image
    至此stm32项目的创建步骤完成,接下来就是代码的编写,内容较多,将放在下一章中叙述。

posted on 2025-02-06 20:12  行星齿轮  阅读(201)  评论(0)    收藏  举报