请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
器件型号:TM4C123GH6PM 工具/软件:Code Composer Studio
我特意创建了一个0除法错误来调用用法故障处理程序、但当我打印结果时、它会打印错误。 而不是执行我的故障处理程序。 我将 startup_ccs.c 文件中的用法故障处理程序从默认值更改为自定义值。 我应该如何处理故障、以便将其转至我的处理程序?
内部
main (空)
{
volatile uint32_t ui32Loop;
main (空)
{
volatile uint32_t ui32Loop;
SysCtlClockSet (SYSCTL_SYSDIV_2_5 | SYSCTL_USE_PLL | SYSCTL_OSC_MAIN| SYSCTL_XTAL_16MHz);
ConfigureUART();
uint32_t a、b、c、d、val;
uint32_t status,e,f,g,h, K、Faultstatus;
float num;
A = 5;
b = 8;
C = 10;
D = 12;
FlashAllUserRegisterSet (a、b、c、d);
SysCtlDelay (1000);
FlashUserSave();
SysCtlDelay (1000);
UARTprintf ("set\n");
SysCtlDelay (1000);
状态= FlashAllUserRegisterGet (&e、&f、&g、&h);
UARTprintf ("%d\n"、status);
if (status =0){
UARTprintf ("print\n");
UARTprintf ("%d\n",f);
UARTprintf ("%d\n"e);
UARTprintf ("%d\n"g);
UARTprintf ("%d\n",h);
}
FAULTSTATUS = HWREG (NVIC_FAULT_STAT);
UARTprintf ("NVIC_FAULT_STAT =>%d \n"、faultstatus);
k = UARTCharGet (UART0_BASE);
num =(float) k;
Val =((float) 5)/num;
FAULTSTATUS = HWREG (NVIC_FAULT_STAT);
UARTprintf ("NVIC_FAULT_STAT =>%d \n"、faultstatus);
UARTprintf ("%f\n"、val);
}
ConfigureUART();
uint32_t a、b、c、d、val;
uint32_t status,e,f,g,h, K、Faultstatus;
float num;
A = 5;
b = 8;
C = 10;
D = 12;
FlashAllUserRegisterSet (a、b、c、d);
SysCtlDelay (1000);
FlashUserSave();
SysCtlDelay (1000);
UARTprintf ("set\n");
SysCtlDelay (1000);
状态= FlashAllUserRegisterGet (&e、&f、&g、&h);
UARTprintf ("%d\n"、status);
if (status =0){
UARTprintf ("print\n");
UARTprintf ("%d\n",f);
UARTprintf ("%d\n"e);
UARTprintf ("%d\n"g);
UARTprintf ("%d\n",h);
}
FAULTSTATUS = HWREG (NVIC_FAULT_STAT);
UARTprintf ("NVIC_FAULT_STAT =>%d \n"、faultstatus);
k = UARTCharGet (UART0_BASE);
num =(float) k;
Val =((float) 5)/num;
FAULTSTATUS = HWREG (NVIC_FAULT_STAT);
UARTprintf ("NVIC_FAULT_STAT =>%d \n"、faultstatus);
UARTprintf ("%f\n"、val);
}