工具/软件:Code Composer Studio
您好!
我正在使用 MSP430G2332处理一个项目、并且不断收到消息"break at address "0xfffe"、没有可用的调试信息、或者在程序代码之外"。 我拥有我所需的所有软件和代码、因为它由 TI 在其中一个产品页面上提供。 在查看类似论坛后、我认为这很可能是 lnk_msp430g2332.cmd 中的存储器映射问题、因此我检查了与哪个地址0xFFFE 相关、这实际上是复位。 我没有看到任何问题、但我不熟悉编码微处理器、因此很可能缺少一些东西。 我粘贴了我在下面使用的 lnk.msp430g2332代码以及我的问题的屏幕截图。
/*==================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================== *
//版权所有(c) 2016,Texas Instruments Incorporated */
/*保留所有权利。 *
/**//
/*以源代码和二进制形式重新分发和使用,带或不带*/
/*如果符合以下条件,则允许进行修改*/
满足以下条件:*/
/**//
/*源代码的重新分发必须保留上述版权*/
/*注意、此条件列表和以下免责声明。 *
/**//
/*二进制形式的再发行必须复制上述版权*/
/*注意、*/中的此条件列表和以下免责声明
/*随分发提供的文件和/或其他材料。 *
/**//
/*德州仪器公司的名称和*/的名称均不相同
/*其贡献者可用于认可或推广衍生产品*/
/*来自此软件,未经特定的事先书面许可。 *
/**//
/*本软件由版权所有者和贡献者"按原样"提供*/
/*和任何明示或暗示的保证、包括但不限于*/
/*特定适销性和适用性的隐含保证*/
/*不承认目的。 在任何情况下、版权所有者或*/均不得
/*捐助者应对任何直接、间接、偶然、特殊、*/负责
/*示例性或必然的损害(包括但不限于*/
/*采购替代货物或服务;丧失使用、数据或利润;*
/*或业务中断)
/*无论是合同、严格责任还是侵权行为(包括疏忽或*/)
/*否则)因使用本软件而以任何方式产生,*/
/*即使被告知可能发生这种损害。 *
/*==================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================================== *
/********* /
/* lnk_msp430g2332.cmd -用于链接 MSP430G2332程序的链接器命令文件*
/**//
/*用法:lnk430 -o -m lnk.cmd */
/* cl430 z -o -m lnk.cmd */
/**//
/*------------------ *
/*这些链接器选项仅用于命令行链接。 对于 IDE 链接、*/
/*您应该在 Project Properties 中设置链接器选项*/
/*-c link using C conventions */
/*-stack 0x0100软件栈大小*
/*-heap 0x0100堆区域大小*/
/**//
/*------------------ *
/*版本:1.184 */
/*------------------ *
/ /
/*指定系统内存映射*/
/ /
存储器
{
SFR:origin = 0x0000、length = 0x0010
外设_8位:origin = 0x0010、length = 0x00F0
peripherals_16BIT:origin = 0x0100、length = 0x0100
RAM:origin = 0x0200,length = 0x0100
INFOA:origin = 0x10C0,length = 0x0040
INFOB:origin = 0x1080、length = 0x0040
INFOC:origin = 0x1040,length = 0x0040
INFOD:origin = 0x1000,length = 0x0040
闪存:origin = 0xF000,length = 0x0FE0
INT00:origin = 0xFFE0、length = 0x0002
INT01:origin = 0xFFE2,length = 0x0002
INT02:origin = 0xFFE4,length = 0x0002
INT03:origin = 0xFFE6,length = 0x0002
INT04:origin = 0xFFE8、length = 0x0002
INT05:origin = 0xFFEA,length = 0x0002
INT06:origin = 0xFFEC,length = 0x0002
INT07:origin = 0xFFEE,length = 0x0002
INT08:origin = 0xFFF0,length = 0x0002
INT09:origin = 0xFFF2,length = 0x0002
INT10:origin = 0xFFF4,length = 0x0002
INT11:origin = 0xFFF6、length = 0x0002
INT12:origin = 0xFFF8,length = 0x0002
INT13:origin = 0xFFFA,length = 0x0002
INT14:origin = 0xFFFC,length = 0x0002
复位:origin = 0xFFFE,length = 0x0002
}
/ /
/*指定段分配到内存中*/
/ /
部分
{
.bss:{}> RAM /*全局和静态变量*/
.data:{}>RAM /*全局和静态变量*/
.TI.noinit:{}>RAM /* for #pragma noinit */
.sysmem:{}> RAM /*动态内存分配区域*/
.stack:{}> RAM (高)/*软件系统堆栈*/
.text:{}> FLASH /*代码*/
.cinit:{}> FLASH /*初始化表*/
.const:{}> FLASH /*常量数据*/
.cio:{}>RAM /* C I/O 缓冲器*/
.pinit:{}> FLASH /* C++构造函数表*/
binit:{}> FLASH /*启动时初始化表*/
init_array:{}> FLASH /* C++构造函数表*/
.mspabi.exidx:{}> FLASH /* C++构造函数表*/
.mspabi.extab:{}> FLASH /* C++构造函数表*/
#ifdef __TI_Compiler_version
#if __TI_Compiler_version >=15009000
#ifndef __large_data_model__
.TI.ramfunc:{} load=flash,run=RAM,table (BINIT)
其他
.TI.ramfunc:{} load=flash | FLASH2、run=RAM、table (BINIT)
#endif
#endif
#endif
infoA:{}>INFOA /* MSP430 INFO 闪存段*/
infoB:{}>infoB
infoC:{}>infc.oC
infoD:{}> infod
/* MSP430中断矢量*/
.int00:{}>int00
.int01:{}>INT01
Port1:{*(.int02 )}> INT02 TYPE = VECT_INIT
端口2:{*(.int03 )}> INT03类型= VECT_INIT
USI:{*(.int04 )}> INT04类型= VECT_INIT
ADC10:{*(.int05 )}> INT05类型= VECT_INIT
.int06:{}>INT06
.int07:{}>INT07
TIMER0_A1:{*(.int08 )}> INT08 TYPE = VECT_INIT
TIMER0_A0:{*(.int09 )}> INT09 TYPE = VECT_INIT
WDT:{*(.INT10 )}> INT10类型= VECT_INIT
.int11:{}>int11
.int12:{}>int12
.int13:{}>int13
NMI:{*(.int14 )}> INT14类型= VECT_INIT
.reset:{}> reset /* MSP430 Reset vector */
}
/ /
/*包括外设内存映射*/
/ /
l msp430g2332.cmd