单片机/MCUwilliam hill官网
直播中

chenwn1994

9年用户 9经验值
擅长:可编程逻辑 电源/新能源 MEMS/传感技术 测量仪表 模拟技术 存储技术 处理器/DSP 控制/MCU
私信 关注
[问答]

关于RFM69H的RSSI读取功能

RFM69H读取RSSI的时候始终为固定值且是错误值,应该是在什么时候读取?
供应商示例代码如下,为什么是0x24?
u8 RFM69H_ReadRSSI(void)
{
  u16 temp=0xff;
  if((SPIRead(0x24)&0x02)==0x02)
  {
    temp=SPIRead(0x24);
    temp=0xff-temp;
    temp>>=1;
    temp&=0xff;
  }
  return (u8)temp;
}


u8 SPIRead(u8 adr)
{
  u8 tmp;
  SPICmd8bit(adr);                                         //Send address first
  tmp = SPIRead8bit();  
  nCS=1;
  return(tmp);
}


u8 SPIRead8bit(void)
{
u8 RdPara = 0;
u8 bitcnt;
  nCS=0;
  MOSI=1;                                                 //Read one byte data from FIFO, MOSI hold to High
  for(bitcnt=8; bitcnt!=0; bitcnt--)
  {
    SCK=0;
    RdPara <<= 1;
    SCK=1;
    if(MISO)
      RdPara |= 0x01;
    else
      RdPara |= 0x00;
  }
  SCK=0;
  return(RdPara);
}

已退回1积分

更多回帖

发帖
×
20
完善资料,
赚取积分