SI4463初始化失败,SDO无反应

最近在调4463这颗芯片,结果调了一周还没有调出来,所以请各位指教:

si4463执行reset后,再执行power_up,发现NIRQ引脚正常拉低,之后询查CTS发现SDO一直为高电平,不管发什么命令不变,且只有2V,芯片是3V供电。

以下是代码的大致示意:

void main()

{

    reset();

    power_up();

    CheckCTS();

    ......

    CheckCTS();

    ........

    CheckCTS();

    while(1)

        {

            ..........

        }

}

void reset()

{

SDN=1;

DelayUs(400);

SDN=0;

DelayMs(5);

}

 

void power_up()

{       
  SendCommand(7,&command[0]);   //  0x02, 0x01, 0x00, 0x01, 0xC9, 0xC3, 0x80

}

 

void CheckCTS()
{
    uint8_t   CTSValue;
    do{
    CTSValue=SPIbyte_WRITE(CMD_CTS);   //0x44
        SPIbyte_WRITE(CTSValue);
        
    }
    while(CTSValue!=u8bitFF);

}    

我发现程序可以正常跑下去,但执行reset()和power_up()时表现正常,在执行checkCTS()时发送0x44也能读出0xFF,但之后发送0xFF后还是读出0xFF,我看一些例程询查CTS发送接收到的0xFF,会读出0x00,后面查看发现SDO引脚一直为高,不知道是为什么?
硬件已经检查,用过自己搭建的PCB和SI4463模块,都是一样的结果。SDN和SPI引脚接入良好,但SDO引脚没反应。请指教,谢谢

请解释SDO和SI4463

SI4463通讯失败记录
https://www.cnblogs.com/zhouhaocheng---yijianqinxin/p/13228341.html