[其他ST产品] STM32CubeIDE的MCU开发

[复制链接]
5639|60
 楼主| 键盘手没手 发表于 2023-12-25 16:52 | 显示全部楼层
1表示下载程序(.elf文件),2表示Debug程序。 58878658942cec18a1.png 图37 下载与调试
 楼主| 键盘手没手 发表于 2023-12-25 16:53 | 显示全部楼层
   下载程序成功。 89381658942e5e7c5e.png 图38 程序下载
 楼主| 键盘手没手 发表于 2023-12-25 16:53 | 显示全部楼层
  Debug程序成功,程序运行暂停在main函数内的第一条语句。 30813658942fa91779.png 图39 程序debug
 楼主| 键盘手没手 发表于 2023-12-25 16:54 | 显示全部楼层
全速运行程序后,从板卡上可以看到led0(红色)开始闪烁/led1(绿色)常亮,这是因为我们在STM32CubeIDE的.ioc中配置了这两个IO(默认低电平,低电平常亮),但是应用程序中只针对led0做了翻转功能,所以现象就是红灯闪烁、绿灯常亮。 90905658943229ccb3.png 图40 LED0灭、LED1亮
 楼主| 键盘手没手 发表于 2023-12-25 16:54 | 显示全部楼层
6230965894333eda94.png 图41 LED0亮、LED1亮
 楼主| 键盘手没手 发表于 2023-12-25 16:54 | 显示全部楼层
6331465894341ee3cd.png 图42 STM32CubeMX中GPIO的默认状态
 楼主| 键盘手没手 发表于 2023-12-25 16:54 | 显示全部楼层
测试串口中断回环功能。 2531965894354216ee.png 图43 串口中断回环测试
 楼主| 键盘手没手 发表于 2023-12-25 16:55 | 显示全部楼层
5 STM32CubeIDE软件使用遇到的问题记录
5.1 设置tab键与空格键的关系(tab == 4 spaces)
Window ——> Preferences
General ——> Editors ——> Text Editors
选中"Insert spaces for tabs"
选中"Show whitespace characters(configure visibility)"
在(configure visibility)中可以根据使用习惯显示or不显示space/enter等
 楼主| 键盘手没手 发表于 2023-12-25 16:55 | 显示全部楼层
C/C++ ——> Code Style ——> Formatter
点击"Formatter"页面中的"New..."新建格式
在"Profile name"中输入"spaces_4_tab"
点击"OK"
在弹出的Profile 'spaces_4_tab'页面中,在"Tab policy”中将"Tabs only"改为"Spaces only"
点击"Apply" ——> "OK"
 楼主| 键盘手没手 发表于 2023-12-25 16:55 | 显示全部楼层
点击"Apply” ——> "Apply and Close"
 楼主| 键盘手没手 发表于 2023-12-25 16:55 | 显示全部楼层
可以在.c和.h文件中使用Tab键进行4个spaces的快捷操作
 楼主| 键盘手没手 发表于 2023-12-25 19:07 | 显示全部楼层
5.2 STM32CubeIDE在无联网的情况下加载设置MCU Packages
Help ——> Manage Embedded Software Packages
点击"From Local..."
 楼主| 键盘手没手 发表于 2023-12-25 19:07 | 显示全部楼层
此时需要提前准备好在官网下载的STM32系列的配置包
网页上搜索"STM32Cube MCU & MPU Packages - Products"
进入ST官网配置包页面后,选择"Product selector",下载需要的MCU配置包
这里以STM32CubeF1为例
下载Patch_CubeF1和STM32CubeF1,实际加载使用的为STM32CubeF1,从官网上看到当前下载的STM32CubeF1版本为1.8.0
 楼主| 键盘手没手 发表于 2023-12-25 19:07 | 显示全部楼层
选中刚刚准备好的STM32CubeF1包,注意该包的版本为1.8.0,等待软件加载配置包
 楼主| 键盘手没手 发表于 2023-12-25 19:07 | 显示全部楼层
加载完成后可在Embedded Software Packages Manager页面的STM32F1下看到安装的配置包及其版本
 楼主| 键盘手没手 发表于 2023-12-25 19:07 | 显示全部楼层
5.3 报错“The Firmware Package (STM32Cube FW_F1 V1.8.5) or one of its dependencies required by the Project is not available in your STM32CubeMX Repository”
 楼主| 键盘手没手 发表于 2023-12-25 19:07 | 显示全部楼层
方法1
在.ioc中,找到ProjectManager下的Project,可以看到Frimware Package Name and Version默认按照最新的版本(当前最新的版本为"STM32Cube_FW_F1 V1.8.5")进行使用,此处将"Use latest available"取消,同时将"STM32Cube_FW_F1 V1.8.5调整为STM32Cube_FW_F1 V1.8.0"即可正常
 楼主| 键盘手没手 发表于 2023-12-25 19:08 | 显示全部楼层
方法2
新建STM32工程时,输入完Project Name之后,注意不要点击"Finish",点击"Next"
这里会进入Firmware Library Package Setup页面,这里可以进行配置包的选择,默认为最新的"V1.8.5",手动切换为"V1.8.0"后,点击"Finish"即可
 楼主| 键盘手没手 发表于 2023-12-25 19:08 | 显示全部楼层
5.4 需要使用.hex文件或.bin文件进行单独烧写
        STM32CubeIDE软件默认编译后不会生成.hex或者.bin文件,需要对软件进行设置

Project ——> Properties
C/C++ Build ——> Settings
MCU Post build output ——> 选中"Convert to binary file (-O binary)"和"Convert to Intel Hex filr (-O ihex)" ——> Apply ——> Apply and Close
重新编译,可以在工程路径的Debug文件夹中找到对应的bin文件和hex文件
 楼主| 键盘手没手 发表于 2023-12-25 19:08 | 显示全部楼层
6 STM32CubeIDE使用小结
使用STM32CubeMX的图形化界面生成和修改底层驱动,可操作性更强、入门难度更小、开发效率更高,我们只需要将重心放在应用程序的开发上即可;
STM32CubeIDE软件是免费软件,无需**,程序运行大小不受影响,对于我们进行STM32嵌入式开发的成本更低。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 在线客服 返回列表 返回顶部