CLA任务中无法对一个定义的变量进行赋值等操作

例如下面几句话,对定义的CntF32变量在任务中进行加一操作,每次任务执行都要加一

MMOV32 MR1, @_CntF32
MADDF32 MR2, MR1, #1.0
MMOV32 @_CntF32, MR2 

运行后通过ccs的expression观察这个变量,发现没有变化

 

后来发现是该变量存储位置指定问题,能够被CLA读写的变量,需要放在特殊的RAM区域,该变量定义后,还需要指定存储位置如下所示:

#pragma DATA_SECTION(CntF32, "Cla1ToCpuMsgRAM");

将变量指定在cla可读写他的区域中去,在编译运行就可以了。

posted @ 2022-02-11 16:12  艾诺洛格_泡尔斯伊  阅读(317)  评论(0编辑  收藏  举报