This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

spi 从机接收程序,仿真调试时程序会跳出到 dbg_.h文件的void __DebugBreak(unsigned char operation, void *operands)程序,请问是什么原因?

Other Parts Discussed in Thread: MSP430FR5739

你好!spi 从机接收程序,仿真调试时程序会跳出到 dbg_.h文件的void __DebugBreak(unsigned char operation, void *operands)程序,请问是什么原因?谢谢!

      注:1、原例程增加一个数组,放在SPI数据接收程序,取消这个数组赋值这句时,程序是正常。

             2、中断程序与void __DebugBreak如下。

unsigned char data[30];

#if defined(__TI_COMPILER_VERSION__) || defined(__IAR_SYSTEMS_ICC__)
#pragma vector=USCI_A0_VECTOR
__interrupt void USCI_A0_ISR(void)
#elif defined(__GNUC__)
void __attribute__ ((interrupt(USCI_A0_VECTOR))) USCI_A0_ISR (void)
#else
#error Compiler not supported!
#endif
{
while (!(UCA0IFG&UCTXIFG)); // USCI_A0 TX buffer ready?
UCA0TXBUF =UCA0RXBUF; // Echo received data
data[i] =UCA0RXBUF;  //data[i] =UCA0RXBUF&0xff;
i++;
if(i==30)
{
i=29;
}
}

/* Low-level generic debugger break point. */
/* Copyright 2003-2010 IAR Systems AB. */

#include "__dbg_.h"

#pragma optimize = none
#pragma cspy_support = basic
#pragma language=extended
_DLIB_DEBUG_BREAK_FUNCTION_ATTRIBUTE
void __DebugBreak(unsigned char operation, void *operands)
{
/* Debugger breaks here */
}