正点原子linux使用eclipse,Eclipse+GCC开发环境针对STM32F103ZE的开发模板,完美实现C++编程及JTAG调试...

博主分享了如何使用Eclipse替代MDK进行STM32开发,主要原因是MDK代码提示不智能且不支持C++11。文中详细介绍了所需的工具和环境配置步骤,包括设置GCC编译选项、链接器脚本、移植实验代码等。还解决了SRAM调试时SP初始化错误的问题,并提供了C/C++库的支持。项目已更新并托管在CSDN,欢迎贡献和讨论。
摘要由CSDN通过智能技术生成

模板地址:https://code.csdn.net/zvvzxzko2006/eclipse_stm32_template

环境搭建需要的工具:

http://pan.baidu.com/s/1eQrY08M

为什么不用MDK?因为mdk代码提示不智能,因为mdk的编译器不支持c++11,因为MDK正版贵的要死..

其实主要就是前两点,由于我习惯用VisualStudio写C++程序,突然用MDK实在感觉很不爽。

工具安装参照这几篇来

http://blog.csdn.net/at91rm9200/article/details/22853621

http://blog.csdn.net/at91rm9200/article/details/23245001

http://blog.csdn.net/at91rm9200/article/details/23334661

这位大神太无私了!

关于调试,我之前使用的GDBServer版本太低,导致无法正常连接。安装新版的就可以了。

最后说一下我的模板里都干了什么:

1.设置好gcc的编译,链接选项

2.提供了链接器脚本

3.移植了原子的实验一,也就是跑马灯实验

其他实验,你可以直接复制到项目中,但是不要忘记修改GCC编译器选项中的包含路径。

有问题后面跟帖。

====================================================================================

更新了一下项目模板,这次用git clone后直接eclipse切换工作区到模板目录中即可。不用再设置其他东西,直接c++编译 然后JLink调试即可。

编译过程也许会弹出一个错误,没关系,点击OK然后重新build就行了。

====================================================================================

更新了项目管理 DEBUG/RELEASE

其中,Debug模式使用内部RAM调试运行,当使用RAM调试运行时,不要忘记切换开发板BOOT的2个短接帽B0  B1 连接到3.3V

Release模式使用正常的Flash运行开发板     使用Flash运行时,不要忘记检查开发板BOOT的2个短接帽B0 B1 连接到GND

有问题,后面跟帖

====================================================================================

更新了C / C++ 部分库支持

C库:malloc  free  memcpy memset strlen strcpy strcmp itoa

C++库 : new delete

代码托管到CSDN平台上了,有兴趣的欢迎来贡献c / c++ 标准库的stm32实现

有问题,后面跟帖

====================================================================================

已更新ucos成功移植

这次更新是基于原子ucos实验1led交叉闪烁实验。移植到gcc编译环境由于汇编语法不同,主要修改了移植步骤的汇编部分。

需要的可git

========================================================================================

更新修复SRAM调试时出现的SP初始化错误

1.初始化时SP无法自动按照向量表设置的初始值进行初始化,导致运行在SRAM中的程序被堆栈破坏

2.通过重写入口点程序,在堆栈操作之前就修复SP值解决问题。

欢迎关注

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值