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.

[参考译文] RTOS/TMDXLCDK6748:内部异常:IERR=0x1取指令异常 ti.sysbios.family.c64p.exception:第256行

Guru**** 2589245 points
Other Parts Discussed in Thread: SYSBIOS

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/633373/rtos-tmdxlcdk6748-internal-exception-ierr-0x1-instruction-fetch-exception-ti-sysbios-family-c64p-exception-line-256

器件型号:TMDXLCDK6748

工具/软件:TI-RTOS

最近、我的程序经常会使用"ti.sysbios.family.c64p.exception:line 256:e_exceptionMax:PC = 0xc0112df4、sp = 0xc0115110。" 运行了很长时间。

我已经检查了 Hwi 堆栈大小和任务堆栈大小。 两者都是可用的可用空间。  

我没有调试这种错误的经验。 有人能帮我吗? Thx

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好!

    请分享您正在使用的 SDK 版本?
    在什么情况下、您得到了该错误? 您使用的是哪种 SDK 驱动程序?
    此致、
    Yordan
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    很遗憾提到这一点,Yordan Kovachev。 我正在我的定制 C6746板上使用 Process SDK RTOS OMAPL138 LCDK 4.00.00.04。

    最近、我在 app.cfg 中添加了系统堆栈大小

    问题发生得更频繁。 甚至在我启动我的应用程序时也是如此。

    我想这是由内存问题引起的。 这是我的 app.cfg

    /*
    **创建堆。
    //
    var HeapMem = xdc.useModule('ti.sysbios.heaps.HeapMem');
    
    
    
    
    
    
    
    
    
    heapMem0Params.sectionName var heapMemParams = new HeapMem.Params ();heapMemParams.size = 0x20000;heapMemParams.sectionName ="systemHeapch";Program.global.heap0 = HeapMem.create (heapMemParams);var heapMemParams.Size = new HeapMemMemMemMemMemParams.Params;heapMem0Params.instance.name ="0962";"MyapMemParams.Params.Params"堆= Myap8;= MyapMemParams.Params"堆0962.Params"
    program.global.MyHeap = HeapMem.create (heapMem0Params);
    
    var heapMem1Params = new HeapMem.Params ();
    heapMem1Params.instance.name ="TcpHeapHeap ";
    heapMem1Params.size = 15232;
    heapMem1Params.sectionName ="TcpMemHeap (
    Program.global.tcpams = HeapMem.create);
    
    
    /*这是默认的内存堆。 */
    Memory.defaultHeapInstance = Program.global.heap0;
    Program.sectMap["sharedL2"]="DDR";
    Program.sectMap["systemHeap"]="DDR";
    Program.sectMap["MyHeap"]="DDR";
    Program.sectMap["TcpHeap"]="DDR";
    Program.sectMap[".sysmem"]="DDR";
    Program.sectMap[".args"]="DDR";
    Program.sectMap[".cio"] ="DDR";
    Program.sectMap[".far"]="DDR";
    Program.sectMap[".rodata"]="DDR";
    Program.sectMap[".neardata"]="DDR";
    Program.sectMap[".cppi"]="DDR";
    Program.sectMap[".init_array"]="DDR";
    Program.sectMap[".qmss"]="DDR";
    Program.sectMap[".cinit"]="DDR";
    Program.sectMap[".bss"]="DDR";
    Program.sectMap[".const"]="DDR";
    Program.sectMap[".text"]="DDR";
    Program.sectMap[".code"]="DDR";
    Program.sectMap[".switch"]="DDR";
    Program.sectMap[".data"]="DDR";
    Program.sectMap[".fardata"]="DDR";
    Program.sectMap[".args"]="DDR";
    Program.sectMap[".cio"]="DDR";
    Program.sectMap[".vecs"]="DDR";
    
    Program.sectMap["emacComm"] ="DDR"
    
    
    Program.sectMap[".far:taskStackSection"]="DDR";
    Program.sectMap[".stack"]="DDR";
    Program.sectMap[".far:IMAGEDATA"]={loadSegment:"DDR"、loadAlign:8};
    Program.sectMap[".far:NDK_OBJMEM"]={loadSegment:"DDR"、loadAlign:8};
    Program.sectMap[".far:NDK_PACKETMEM"]={loadSegment:"DDR"、loadSegAlign:128};
    Program.stack = 0x4000;
    

    我不熟悉低级内存问题。

    有人可以帮帮我吗?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我在调用其他 i2c 接口之前未调用 I2C_init()。 在我修复了该错误后。 直到现在才会发生错误。 我建议将其作为这一问题的答案。 感谢您回答我的问题。