发新帖我要提问
123
返回列表
打印
[其他ST产品]

STM32CubeIDE的MCU开发

[复制链接]
楼主: 键盘手没手
手机看帖
扫描二维码
随时随地手机跟帖
41
键盘手没手|  楼主 | 2023-12-25 16:52 | 只看该作者 |只看大图 回帖奖励 |倒序浏览
1表示下载程序(.elf文件),2表示Debug程序。 图37 下载与调试

使用特权

评论回复
42
键盘手没手|  楼主 | 2023-12-25 16:53 | 只看该作者
   下载程序成功。 图38 程序下载

使用特权

评论回复
43
键盘手没手|  楼主 | 2023-12-25 16:53 | 只看该作者
  Debug程序成功,程序运行暂停在main函数内的第一条语句。 图39 程序debug

使用特权

评论回复
44
键盘手没手|  楼主 | 2023-12-25 16:54 | 只看该作者
全速运行程序后,从板卡上可以看到led0(红色)开始闪烁/led1(绿色)常亮,这是因为我们在STM32CubeIDE的.ioc中配置了这两个IO(默认低电平,低电平常亮),但是应用程序中只针对led0做了翻转功能,所以现象就是红灯闪烁、绿灯常亮。 图40 LED0灭、LED1亮

使用特权

评论回复
45
键盘手没手|  楼主 | 2023-12-25 16:54 | 只看该作者
图41 LED0亮、LED1亮

使用特权

评论回复
46
键盘手没手|  楼主 | 2023-12-25 16:54 | 只看该作者
图42 STM32CubeMX中GPIO的默认状态

使用特权

评论回复
47
键盘手没手|  楼主 | 2023-12-25 16:54 | 只看该作者
测试串口中断回环功能。 图43 串口中断回环测试

使用特权

评论回复
48
键盘手没手|  楼主 | 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等

使用特权

评论回复
49
键盘手没手|  楼主 | 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"

使用特权

评论回复
50
键盘手没手|  楼主 | 2023-12-25 16:55 | 只看该作者
点击"Apply” ——> "Apply and Close"

使用特权

评论回复
51
键盘手没手|  楼主 | 2023-12-25 16:55 | 只看该作者
可以在.c和.h文件中使用Tab键进行4个spaces的快捷操作

使用特权

评论回复
52
键盘手没手|  楼主 | 2023-12-25 19:07 | 只看该作者
5.2 STM32CubeIDE在无联网的情况下加载设置MCU Packages
Help ——> Manage Embedded Software Packages
点击"From Local..."

使用特权

评论回复
53
键盘手没手|  楼主 | 2023-12-25 19:07 | 只看该作者
此时需要提前准备好在官网下载的STM32系列的配置包
网页上搜索"STM32Cube MCU & MPU Packages - Products"
进入ST官网配置包页面后,选择"Product selector",下载需要的MCU配置包
这里以STM32CubeF1为例
下载Patch_CubeF1和STM32CubeF1,实际加载使用的为STM32CubeF1,从官网上看到当前下载的STM32CubeF1版本为1.8.0

使用特权

评论回复
54
键盘手没手|  楼主 | 2023-12-25 19:07 | 只看该作者
选中刚刚准备好的STM32CubeF1包,注意该包的版本为1.8.0,等待软件加载配置包

使用特权

评论回复
55
键盘手没手|  楼主 | 2023-12-25 19:07 | 只看该作者
加载完成后可在Embedded Software Packages Manager页面的STM32F1下看到安装的配置包及其版本

使用特权

评论回复
56
键盘手没手|  楼主 | 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”

使用特权

评论回复
57
键盘手没手|  楼主 | 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"即可正常

使用特权

评论回复
58
键盘手没手|  楼主 | 2023-12-25 19:08 | 只看该作者
方法2
新建STM32工程时,输入完Project Name之后,注意不要点击"Finish",点击"Next"
这里会进入Firmware Library Package Setup页面,这里可以进行配置包的选择,默认为最新的"V1.8.5",手动切换为"V1.8.0"后,点击"Finish"即可

使用特权

评论回复
59
键盘手没手|  楼主 | 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文件

使用特权

评论回复
60
键盘手没手|  楼主 | 2023-12-25 19:08 | 只看该作者
6 STM32CubeIDE使用小结
使用STM32CubeMX的图形化界面生成和修改底层驱动,可操作性更强、入门难度更小、开发效率更高,我们只需要将重心放在应用程序的开发上即可;
STM32CubeIDE软件是免费软件,无需**,程序运行大小不受影响,对于我们进行STM32嵌入式开发的成本更低。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则