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.

请问:28035用汇编写的cla的task1内的程序可以运行,但其调用的 CNTL_2P2Z_CLA函数(库中汇编程序)内部程序不能运行,谢谢!

28035用汇编写的cla的task1内的程序可以运行,但其调用的 CNTL_2P2Z_CLA函数(库中汇编程序)内部程序不能运行,谢谢!

  • 补充一下:
    在cpu运行的main.c文件中定义:
    #pragma DATA_SECTION(test_cla1, "Cla1ToCpuMsgRAM");
    volatile long test_cla1;
    ;----------------------------------------
    在cla运行的task1中:

    .ref _test_cla1
    ;==============================
    .sect "Cla1Prog:_Cla1Task1"
    .align 2
    .global _Cla1Task1

    _Cla1Task1:

    MMOVIZ MR0,#0 ;语句1
    MMOVXI MR0,#123 ;语句2
    MMOV16 @_test_cla1, MR0 ;语句3

    CNTL_2P2Z_CLA 1

    _Cla1Task1End:

    在task1中执行以下赋值(test_cla1)是可以运行的,但是CNTL_2P2Z_CLA函数(标准库中的)无法运行,
    通过把上述语句1-3移到CNTL_2P2Z_CLA函数中,发现test_cla1的值仍然为初始值,不是123。
    请问这是什么问题,谢谢!
  • 请大家帮忙看看,是哪个问题没注意到,谢谢
  • 建议在任务中放置一个断点。一旦断点停止了CLA,您就可以单步执行任务来调试问题所在。
    用CLA hands-on-workshop可能对你有所帮助:training.ti.com/control-law-accelerator-cla-hands-workshop
    以及CLA常见问题:e2e.ti.com/.../786227
  • 谢谢您!

    我先看一下您发的链接,有问题再向您请教