| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 嵌入式 -> 【软件入门】CLion入门(配合CubeMX食用) -> 正文阅读 |
|
[嵌入式]【软件入门】CLion入门(配合CubeMX食用) |
CLion入门(配合CubeMX食用)这篇文章将实现用CLion+STM32CubeMX+HAL库简单点一个灯,如果想了解更多的CLion小技巧,请见请见【软件入门】CLion小技巧(持续更新)_芜湖_的博客-CSDN博客 文章目录1.前言在正点原子和学校教学中都是教我们使用Keil进行代码编写,但是估计用过Keil的用户都会觉得这个软件的界面实在是太老了,看上去实在不是特别的舒服。之前学python接触了PyCharm这款编译器,发现JetBrains家编译器很全,也包括C的编译器CLion。搜一下发现还真有大佬将CLion配置用于STM32开发,因此就学着配了一下。 对了,假如你和笔者一样是学生,可以通过学信网的验证报告申请免费的JetBrains全家桶。 关于CLion的配置,可以参考稚晖君大佬的文章,笔者就是跟着文章配的,第一次配的有问题,不过第二次重新配就没啥毛病了。如果大家在配的过程中发生了某些不知名的问题,删了重新配一下试试就行。链接: 配置CLion用于STM32开发【优雅の嵌入式开发】 - 知乎 (zhihu.com) 大家在配环境的时候最好把下载的东西放到一个大文件夹里,这样方便找,如下图所示: 如果实在自己配不好,留言把压缩包发给你也行。 关于STM32CubeMX的使用可以参照笔者之前的博客: 【软件入门】STM32CubeMX快速入门_芜湖_的博客-CSDN博客_stm32cubemx 2.点灯2.1.新建CLion工程打开CLion,新建一个项目: 选择STM32CubeMX,在合适的位置创建工程test: 注意要记住创建的位置和工程名,位置是E:\programme\STM32\2022.07\07.13\t,工程名是test。点击创建: 默认配置的是STM32F030F4Px,但是没关系,我们还可以自己改。点击蓝色字: 2.2.CubeMX配置2.2.1.芯片首先更换我们使用的芯片。点击左上角STM32F030F4Px那里: 进入选芯片的界面,我们使用的硬件平台是正点原子mini板,选择STM32F103RCT6: 接下来就是常规的CubeMX配置了。左侧可以更换两种显示方式,一种是按类别,一种是按A-Z显示,笔者选择的是A-Z: 2.2.2.SYS在SYS中要选择Debug,如果不选的话则只可以烧录一次。或者严谨地说,也可以烧录,但是比较麻烦,为了少点麻烦最好选上。笔者使用的是ST-Link,选择如下: 在SDIO中选择Disable即可: ST-Link虽然有两大排线,但是其实只用其中4根即可,一个VCC,一个GND,另外两个如图中所示:SWCLK和SWDIO。 2.2.3.RCCHSE选择Crystal/Ceramic Resonnatorm,使用外部晶振: 然后点击上方的Clock Configuration,进行如下时钟源配置: 2.2.4.LED以PA8为例(LED0),点击PA8,选择GPIO_Output: 点击左侧GPIO,然后点击PA8的这一行表格: 在下方就可以进行配置了。进行如下配置: 第一行是IO口输出高电平,这是为了让LED灭,具体原因查看mini板原理图即可; 第二行是模式,设置为推挽输出; 第三行是选择上拉/下拉,这里选上拉,原因同样查看原理图; 第四行是速度,在标准库里是具体到多少MHZ,如50MHZ、10MHZ,而在HAL库中是LOW、MEDIUM、HIGH三种,这里选低就可以。 还可以取个名字,如LED0: LED1配置同理。配置好后如下所示: 此时左边会有警告,这些都可以暂时不管: 2.2.5.生成工程点击Project Manager进行如下配置: 第一行是工程名,要和之前我们在创建CLion时配置的一样,这里是test; 第二行是地址,地址也必须和之前配置的一样; 第五行是IDE选择和版本号选择,我们选择SW4STM32这一选项。 读者可以结合刚刚CLion配置的界面对照一下进行理解: 然后在左侧点击Code Generater,笔者是这样配置的: 第一个框中是二选一(第一行不能选): 第一行是将HAL库的所有.C和.H都复制到所建工程中,这样体积大,但不需要后续再加。这里禁止选择; 第二行是只复制所需要的.C和.H,这样体积小,但后续需要再加; 第三行是不复制文件,直接从软件包存放位置导入.C和.H,这样体积更小,但是复制到别的电脑上的话可能会有麻烦。 第二个框中是多选: 第一行是每个外设生成一对.c、.h文件作为外设初始化; 第二行是重新生成时备份以前生成的文件; 第三行是重新生成时保留用户代码; 第四行是当没有重新生成时,删除以前生成的文件。 读者可以自己决定。 配置完后即可在右上角点击生成代码: 他会提示警告,说这个工程已经存在了: 直接Yes就行,我们就是需要覆盖原先自动生成的文件。 然后不需要打开,点击Close即可,因为CLion已经打开好了: 2.3.在CLion中添加相关代码点灯回到CLion,会让你选择配置文件,这里先不选,一会再配,跳过即可: 点击Core-Src,打开main.c: [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6pIxaaZW-1657726742399)(…/…/Typora图像保存/image-20220713231519734.png)] 在相应的位置添加点灯代码:
2.4.配置并烧录在右上角选择编辑配置: 点击“+”,选择OpenOCD: 笔者使用的是ST-Link,进行如下配置: 其中: 名称填写自己能看懂的即可,无硬性要求; 可执行文件与目标相同; GDB无需修改; 面板配置文件需要自己创建,在工程路径下创建一个文本文档,名称无所谓,最好英文且能看懂,把下面几行复制进去:
保存后将后缀改为.cfg文件,然后填入到面板配置文件即可。 配置好后如下所示: 点击小锤子进行编译: 可以看到,也生成了.obj文件,我们也可以通过串口进行烧录。为了方便我们还是直接点击小三角使用ST-Link进行烧录: 出现这部分红色文字说明烧录完成,右下角也显示已下载固件。点灯成功: |
|
嵌入式 最新文章 |
基于高精度单片机开发红外测温仪方案 |
89C51单片机与DAC0832 |
基于51单片机宠物自动投料喂食器控制系统仿 |
《痞子衡嵌入式半月刊》 第 68 期 |
多思计组实验实验七 简单模型机实验 |
CSC7720 |
启明智显分享| ESP32学习笔记参考--PWM(脉冲 |
STM32初探 |
STM32 总结 |
【STM32】CubeMX例程四---定时器中断(附工 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 | -2024/12/28 17:16:56- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |
数据统计 |