打印

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

[复制链接]
3761|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

使用特权

评论回复
地板
dirtwillfly| | 2018-10-25 21:32 | 只看该作者
搂住用的什么型号的mcu?用的什么开发环境?
ccs和iar应该没有这个错误提示

使用特权

评论回复
5
愤怒的小蜗牛|  楼主 | 2018-10-26 12:33 | 只看该作者
msp430f149开发板,开发平台是IAR

使用特权

评论回复
6
愤怒的小蜗牛|  楼主 | 2018-10-26 12:33 | 只看该作者
dirtwillfly 发表于 2018-10-25 21:32
搂住用的什么型号的mcu?用的什么开发环境?
ccs和iar应该没有这个错误提示 ...


msp430f149开发板,开发平台是IAR

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

6

帖子

0

粉丝