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.
最近在做高低温测试的时候会出现芯片重启的问题,我想获取芯片复位的原因,试过了读取CpuSysRegs.RESC复位寄存器的值,但是获取到的都是0,还尝试了使用了读取BROM_STATUS 0x0000 0002这个地址里面的值,打印出来的值也是0,有前辈能够回答和解决这个问题吗?这是我的定义及两种使用的方法
#define BOOTSTATUS 0x00000000
Uint32 *BOOTSTAT;
Uint32 bootstatus_prf;
Int main()
{
BOOTSTAT = (Uint32 *)BOOTSTATUS;
bootstatus_prf = *BOOTSTAT;
Task_Handle task;
}
if(CpuSysRegs.RESC.bit.DCON == 1)
{
LogPrint("RESET_STA_DCON\n");
}
if(CpuSysRegs.RESC.bit.NMIWDRSn == 1)
{
LogPrint("RESET_STA_NMIWDRSn\n");
}
if(CpuSysRegs.RESC.bit.POR == 1)
{
LogPrint("RESET_STA_POR\n");
}
if(CpuSysRegs.RESC.bit.SCCRESETn == 1)
{
LogPrint("RESET_STA_SCCRESETn\n");
}
if(CpuSysRegs.RESC.bit.WDRSn == 1)
{
LogPrint("RESET_STA_WDRSn\n");
}
if(CpuSysRegs.RESC.bit.XRSn == 1)
{
LogPrint("RESET_STA_XRSn\n");
}
if(CpuSysRegs.RESC.bit.XRSn_pin_status == 1)
{
LogPrint("RESET_STA_XRSn_pin_status\n");
}
您好
请参考以下建议进行尝试:
检查复位寄存器读取方法:
确认复位寄存器是否受限制:
检查电源和时钟稳定性:
使用外部复位监控器: