| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 嵌入式 -> CLion配置STM32开发环境(JLink GDB Server) -> 正文阅读 |
|
[嵌入式]CLion配置STM32开发环境(JLink GDB Server) |
Hi,我是嘉赫。 终于忍受不了Keil了,需要换一个Windows和Mac通用的STM32开发环境。 其实早就受不了Keil了,虽然各路大佬都有很多其他IDE的环境配置,但是总觉得差强人意。现在终于发掘出一个能让自己满意的环境。 本文要介绍的是基于CLion、STM32CubeMX、Jlink的STM32开发环境,为什么要强调JLink这个调试器呢,因为目前来看,无论是市面上在售的各种调试器,还是各路神仙自制的DAPLink,都难以和JLink的简单而强大相媲美。JLink仍然是最优秀的调试器之一。 JetBrain系的CLion集大成于一身,功能强大,插件丰富,当然好看也是选择的重点之一。STM32CubeMX也是简单易用,生成HAL工程非常便捷。所以这套环境完美适合各路颜狗、懒狗、菜狗。 在写这篇文章的时候正在配置Mac上的开发环境,所以环境都是基于Mac的,Windows实际上没什么差异,需要的宝宝自己研究研究,仅供参考。软件版本差异不大的都适用,不用专门找我的版本。
软件安装省略,都没什么坑,只说一嘴gcc。gcc可以选pkg安装也可以选tar包,tar包不需要安装,只要解压出来放在一个好找的位置就行,但是没有签名,系统可能报运行警告,百度一下关了就行。不管怎样都要知道路径在哪,pkg装完在user目录。 随后将gcc-arm扔进环境变量PATH,不然一会儿CMake找不着,在用户目录下创建文本文件
首先CLion是原生支持STM32CubeMX的,在创建CLion工程时直接选择STM32CubeMX就好。 创建好空白工程后开始使用STM32CubeMX开始配置HAL工程。只需要点击右侧的链接打开STM32CudeMX。需要注意的是,在第一次配置好STM32CubeMX工程并生成代码前不要尝试做后面的配置,会让你质疑人生的。 这里我就配置一个简单的STM32F103VET6闪烁的工程做个测试,在生成Code时注意工程名和路径都要和刚刚创建的CLion工程保持完全一致,工具链要选SW4STM32不然后面CMake会懵逼。 最后点击右上角生成Code即可,在生成结束后弹出的窗口中不要打开工程,CLion里面会自动解析。此时解析成功与否还不重要,因为还没有配置工具链,所以失败了也不要慌。 打开首选项(Preference)的Build, Execution, Deployment里的Toolchains配置一个新的工具链,GCC和G++填入上面的ARM GCC路径,选择对应的可执行文件。注意Make和GDB不要选择ARM GCC里的,后面可能出问题,用默认的就好。 此时就差一步了,就是接入JLink。刚创建好的工程默认使用的是OpenOCD,我们要换成JLink GDB Server。打开运行、调试配置页面,新建一个配置,选择Embedded GDB Server,照着下图配置。 这里面的参数大致一看就知道是什么意思,其他JLink GDB Server的参数看看文档吧,这几个就够了。JLink GDB Server是通过socket通信的,在本地创建了一个TCP服务器,默认用2331端口。所以是 然后就可以在main.c里面写点测试代码了,这里修改下CLion的Inspections,把死循环的检测去掉,嵌入式开发里死循环很正常。 这样配置就完成了,接上板子试一下。 这篇文章借鉴了稚晖君的配置流程,加入了JLink GDB Server的配置,并且移到了mac上。 另外我们学校的edu邮箱账号居然我毕业了还保留着,正好白嫖JetBrain全家桶,如果停了还可以白嫖女朋友的,美滋滋。 晚安各位。 |
|
嵌入式 最新文章 |
基于高精度单片机开发红外测温仪方案 |
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年11日历 | -2024/11/26 4:23:58- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |