佚名通过本文主要向大家介绍了c语言编译器,编译器,gcc编译器,java编译器,gcc编译器官方下载等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
问题: IARfor430编译器中#define do{}while(0)问题
描述:

解决方案1:
描述:
IAR MSP430 C IARMSP430C
我在IAR 编译器中采用#define do{}while(0)定义了一个函数,但是编译时一直出现“unrecognized token ,expected a “”;“””
#define SPIInit() do { \
SPI_nss_cfg(1); \
SPI_nss_dat(1); \
SPI_mosi(1); \
SPI_sck(0); \
}while(0)
void InitSX1212 (void)
{
_SX1212_REG const *p;
unsigned char i;
SPIInit();
SetRFMode(RF_SLEEP);
p = RegistersCfg;
for(i=sizeof(RegistersCfg)/sizeof(_SX1212_REG); i>0; i--)
{
SpiWriteCfg(p->addr, p->val);
p++;
}
}

解决方案1:
编译器的问题,不要纠结,结尾多加个封号就好了