[MSP430] 各位大佬,这个错误怎么改 expression must be a modifiable lvalue

[复制链接]
146|5
 楼主 | 2018-10-25 19:57 | 显示全部楼层 ||阅读模式
#define  SI4463_SDI      (P2IN & BIT3)
#define  SI_SDI_LOW      P2IN &=~BIT3
#define  SI_SDI_HIGH     P2IN |= BIT3

u8 SPI_ExchangeByte(u8 TxData)
{         
    u8 i,ret=0;       
    for(i=0;i<8;i++)
    {         
      if(TxData&0x80)
              SI_SDI_HIGH;      //RF_SDI=1;expression must be a modifiable lvalue
      else
              SI_SDI_LOW;      //RF_SDI=0;expression must be a modifiable lvalue
      TxData<<=1;           
      ret<<=1;
      //if(SI4463_SDI)
      //ret|=1;
      SI_SCK_HIGH; //RF_SCK_HIGH(); //上升沿,采样          ??数据手册时钟上升沿时输出,下降沿输出(前面写命令的时候就有下降沿所以有数据)
      delay_us(10);
      if(SI4463_SDI)
          ret|=1;
      SI_SCK_LOW;  //RF_SCK_LOW(); //下降沿,锁存   
      delay_us(10);      
    }       
    return ret;       
                                            
}
 楼主 | 2018-10-25 19:59 | 显示全部楼层
这个是i/o初始化
   P2DIR &= ~BIT3;   //输入  SDI(MISO)
   P2SEL &= ~BIT3;  //一般IO
 楼主 | 2018-10-25 20:08 | 显示全部楼层
我主要是为了让SPI_Exchange_Byte()中的ret每经过一次循环当前位 置1
| 2018-10-25 21:32 | 显示全部楼层
搂住用的什么型号的mcu?用的什么开发环境?
ccs和iar应该没有这个错误提示
 楼主 | 2018-10-26 12:33 | 显示全部楼层
msp430f149开发板,开发平台是IAR
 楼主 | 2018-10-26 12:33 | 显示全部楼层
dirtwillfly 发表于 2018-10-25 21:32
搂住用的什么型号的mcu?用的什么开发环境?
ccs和iar应该没有这个错误提示 ...


msp430f149开发板,开发平台是IAR
扫描二维码,随时随地手机跟帖
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复

您需要登录后才可以回帖
登录 | 注册
高级模式
我要创建版块 申请成为版主

论坛热帖

快速回复 返回顶部 返回列表