有人能不能提供在 CLA 中运行带有复制表的程序所需的行。
有两个任务。 任务1和任务8
这两个函数的映射如下。
UNION {
.Cla1Task1 : LOAD = FLASHE PAGE = 0, table (_task1_copy_table)
.Cla1Task8 : LOAD = FLASHE PAGE = 0, table (_task8_copy_table)
}run = RAML3 PAGE = 0
.ovly > FLASHE PAGE = 0
然后我执行以下操作
EALLOW;
Cla1Regs.MPISRCSEL1.bit.PERINT1SEL = CLA_INT1_NONE;
memcpy(&cla1Funcs_runstart, &cla1Funcs_loadstart, (Uint32) &cla1Funcs_loadsize);
Cla1Regs.MMEMCFG.all = CLA_PROG_ENABLE | CLARAM0_ENABLE | CLARAM1_ENABLE | CLARAM2_ENABLE | CLA_RAM1CPUE;
Cla1Regs.MCTL.bit.IACKE = 1;
Cla1Regs.MIER.all = 0x00FF;
EDIS;
copy_in(&task8_copy_table);
EALLOW;
Cla1Regs.MVECT8 = (Uint16) ((Uint32) &Cla1Task8 - (Uint32) &Cla1Prog_Start);
EDIS;
Cla1ForceTask8andWait();
copy_in(&task1_copy_table);
EALLOW;
Cla1Regs.MVECT1 = (Uint16) ((Uint32) &Cla1Task1 - (Uint32) &Cla1Prog_Start);
EDIS;
但没有发生任何情况。 任务不运行。 这里出了什么问题。
有人能至少在这里提供必要的步骤吗?
请注意、如果没有这个复制表、CLA 运行正常。 由于程序 RAM 限制、我不得不加入复制表。