mepc :00000cfc
mcause:00000004
mtval :200049bb
typedef union { /* PRQA S 0750 */ /* MD_MSR_18.4 */
/* There might be a loss of up to 3 bytes. */
vuint8 b[ ((kXcpMaxCTO + 3) & 0xFFC) ];
vuint16 w[ ((kXcpMaxCTO + 3) & 0xFFC) / 2 ];
vuint32 dw[ ((kXcpMaxCTO + 3) & 0xFFC) / 4 ];
} tXcpCto;
vuint8 dd=CRO_SET_MTA_EXT;
uint32_t dsd=&pCmd->dw[1];
volatile vuint32 dr =(vuint32)pCmd->dw[1];
// vuint32 cd = ApplXcpGetPointer(CRO_SET_MTA_EXT,CRO_SET_MTA_ADDR);
// XcpSetMta((dr),CRO_SET_MTA_EXT);
xcp.Mta = (unsigned char*)dr;
原因在于xcp.Mta = (unsigned char*)dr;这个代码里,pCmd->dw[1]=0x20000084,
想咨询下CH32的字节对齐有没有什么编译器可以优化的?