打印
[STM8]

SPI读回的数据全是0,这是什么问题啊?

[复制链接]
3077|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
qaabq|  楼主 | 2013-10-20 14:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在用模拟SPI和Si4432通讯的时候,从Si4432中读回的数据全是0,这是什么原因啊?
unsigned char spi_byte(unsigned char data)
{
        unsigned char i;
        for (i = 0; i < 8; i++)// 控制SCK 和 SDI,发射一个字节的命令,同事读取1个字节的数据
        {                                       // 没有包括nSEL的控制
                if (data & 0x80)
                        SDI = 1;
                else
                        SDI = 0;
                       
                data <<= 1;
                SCK = 1;
               
                if (SDO)
                        data |= 0x01;
                else
                        data &= 0xfe;
                       
                SCK = 0;
        }
        return (data);
}

SCK = 0;
nSEL = 0;
spi_byte(0x7f);
for(i = 0;i<10;i++)       
{
         rx_buf[i] = spi_byte(0xFF);
}
nSEL = 1;
沙发
zeluo| | 2013-10-20 17:34 | 只看该作者
不是很懂这一块   楼主   帮你顶一个   看看别人的意见如何

使用特权

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

本版积分规则

1

主题

1

帖子

1

粉丝