我定义了一个结构体CpuToClaDataDef,用于CPU给CLA传递数据
#pragma DATA_SECTION(CpuToClaData,"CpuToCla1MsgRAM")
CpuToClaDataDef CpuToClaData;
CpuToClaDataDef 的定义如下
typedef struct
{
struct
{
float sintheta;
float costheta;
}PLL;
struct
{
int Ua;
int Ub;
int Uc;
int Ia;
int Ib;
int Ic;
}Grid;
struct
{
int nKp;
int nKi;
int nIdFB,nIqFB;
int nIdRef, nIqRef;
}CurrCtrl;
struct
{
int UdcRef;
int UdcFB;
int nUKp;
int nUKi;
}DcBus;
struct
{
int MODE;
int STATUS;
float test;
}PFCCTRL;
}CpuToClaDataDef;
如上,我用了一个test,然后在cla task里用回传的数据把test送回,结果根本就不是我赋给CpuToClaData.PFCCTRL.test的值,
把test定义的位置调整到结构体的开头处定义,就没问题了
求大侠指教
下面是我CpuToClaData的map:
CpuToCla1MsgRAM* 1 00001500 0000001e UNINITIALIZED
00001500 0000001e CLA_shared_data.obj (CpuToCla1MsgRAM)
相信我的语法是没有问题的