taobaofarmer 发表于 2016-5-20 21:53

STM8S+W500怎么总是读失败呢?

用STM8S的SPI接口控制W5500,硬件是没有问题的,硬件复位W5500之后,写入IP地址、掩码。。。之后,能PING通
说明参数已经成功写入了,问题是读W5500总是死机,下面贴出读代码

void SPI_Send_Byte(u8 wByte)
{
    volatile u8 i;
   
    SPI->DR = wByte;                           //写1个字节数据
    while((SPI->SR & SPI_FLAG_TXE) == 0x00);   //等待发送完毕
      
    while((SPI->SR & SPI_FLAG_RXNE) == 0x00);    //等待收到一个字节数据
    i = SPI->DR;
}

void SPI_Send_Short(u16 wShort)
{
    SPI_Send_Byte((u8)(wShort >>8));
    SPI_Send_Byte((u8)(wShort));
}

//读W5500指定通用寄存器的1个字节数据
u8 Read_W5500_CommonReg_1Byte(u16 reg)
{
    u8 i;

    W5500_SELECT();
    {
        SPI_Send_Short(reg);
        SPI_Send_Byte(COMMON_R | RWB_READ | FDM1);
      
      SPI_Send_Byte(0x00);//发送读数据脉冲
      
      //等待收到数据
      while(SPI_GetFlagStatus(SPI_FLAG_RXNE) == 0x00);   //?????????总是死在改处
        i = SPI->DR;
    }
    W5500_DESELECT();
       
    return i;
}

上面的代码,程序怎么老是死在?????????处呢,我用这个函数读VERR,就是读W5500的版本信息,最简单的读取动作都读不出来?

bridgexia 发表于 2017-3-30 15:53

楼主还在吗,我最近也在弄stm8和5500

szlive 发表于 2018-6-24 17:31

huguang0218 发表于 2018-7-11 10:45

STM32F103+W5500比较好用,已经量产!产品稳定可靠!

xinyipcb 发表于 2018-8-28 00:35

很好的文档,收下了。

taobaofarmer 发表于 2019-3-2 14:10

我已经放弃W5500了

零三翟邢止胃 发表于 2019-3-13 13:27

如果实在不行,就找卖家提供技术支持,目前有家代理商炜世科技的提供技术支持。
页: [1]
查看完整版本: STM8S+W500怎么总是读失败呢?