1. 关于J-link调试
自CoIDE 1.2.5支持J-link后,很多用户因为J-link的license和jflash脚本的限制,用不起来,所以CoIDE 1.3.0修改了J-link调试的部分,直接用GDB命令下载代码到芯片中,而不用JFlash的下载方式,程序在进入调试后自动下载。
也是考虑到license的问题,目前的版本移除了J-link直接下载和擦除的功能,下一版本会考虑重新加上这两个功能并避开license的限制。
点此了解如何在CoIDE 1.3.0中使用J-link。
2. 关于Include Paths
CoIDE 1.3.0增加了这个功能:
CoIDE编译时,会自动搜寻工程下面的文件夹,包括Linked Folder文件夹。如果该文件夹下有.h文件,就自动添加到工程的Include Paths里。
所以之前的工程在CoIDE 1.3.0 中编译可能出现找不到头文件的情况。
此时你可以手动添加头文件路径到build.xml中的Include Paths,或修改Linked Folder的名字,或修改头文件包含语句(如将#include “grib/grlib.h”改为#include “grlib.h”)。
由于架构调整,可能需要用户新建工程,或者重复打开才能使用以前的工程。
3. 关于打开MDK工程
通过Open Project,选择以.uvproj为后缀的文件,打开,即可转换MDK工程为CoIDE工程。
现在这个功能还有一些限制,比如只支持一种配置模式,只能打开在MDK下打开过的工程(编译需要.dep文件),涉及到编译器的文件需要用户手动修改(MDK和CoIDE的编译器不同,与编译器相关的文件在转换时没有被拷贝)等。
但这只是一个尝试和开始,我们可以期待这个功能将来越做越好。如果用户在使用中有任何问题和建议,欢迎联系CooCox!
4. 关于RAM调试
CoIDE 1.3.0在build.xml文件中增加了Flash调试和RAM调试的选项。
Flash调试是默认的,RAM调试则还需一些额外的设置。不同芯片设置方法也可能不同。
例如:
1)STM32F10X系列芯片
在cmsis_boot文件夹,system_stm32f10x.c文件,SystemInit()函数中,有这样的语句
#ifdef VECT_TAB_SRAM
SCB->VTOR = SRAM_BASE | VECT_TAB_OFFSET; /* Vector Table Relocation in Internal SRAM. */
#else
SCB->VTOR = FLASH_BASE | VECT_TAB_OFFSET; /* Vector Table Relocation in Internal FLASH. */
#endif
所以只需打开build.xml文件,选择Debug in RAM,并在Defined Symbols中添加VECT_TAB_SRAM宏即可。
2)LPC17xx系列芯片
在cmsis_boot文件夹,system_LPC17xx.c文件,SystemInit()函数中,有这样的语句
#if (__RAM_MODE__==1)
SCB->VTOR = 0x10000000 & 0x3FFFFF80;
#else
SCB->VTOR = 0x00000000 & 0x3FFFFF80;
#endif
所以只需选择Debug in RAM,并在system_LPC17xx.c文件中加入语句
#define __RAM_MODE__ 1即可。
3)找不到如1)2)中语句的芯片如LM3S系列
选择Debug in RAM后,在cmsis_boot文件夹,system_lm3s.c文件,SystemInit()函数中,添加语句
SCB->VTOR = 0x20000000 | 0x0; /* Vector Table Relocation in Internal SRAM. */
由于VTOR定义在core_cm3.h文件中,还需添加头文件包含语句#include "core_cm3.h"。
CoIDE 1.3.0在线用户手册英文版已更新,点此查看。
中文版用户手册及PDF版用户手册也即将更新,敬请关注。
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |