请教一下,百度百科上的spi是不是说错了?

[复制链接]
1571|4
 楼主| zgjzgjkyo 发表于 2016-1-26 21:57 | 显示全部楼层 |阅读模式
百度百科上的spi是这样说的。
(1)SDO – 主设备数据输出,从设备数据输入;
(2)SDI – 主设备数据输入,从设备数据输出;
(3)SCLK – 时钟信号,由主设备产生;
(4)CS – 从设备使能信号,由主设备控制。

但我看C51模拟spi口时,全是sdi输出的啊?

/*********************************************
          模拟SPI接口I/O定义
*********************************************/
sbit    spi_do=P1^2;
sbit    spi_di=P1^3;  
sbit    spi_clk=P1^1;
sbit    spi_cs=P1^0;

/*********************************************
         向SPI器件写入一个字节数据
*********************************************/
void spi_write(unsigned char spi_dat)  
{      
    unsigned  char  i;      
    for  (i=0;i<8;i++)      
    {      
        spi_clk=0;      
        if((spi_dat & 0x80)==0x80)      
            spi_di=1;
        else      
            spi_di=0;
            spi_clk=1;      
            spi_dat=(spi_dat<<1);      
    }  
}

而且也有人说过
SDI是MOSI,指主器件数据输出,从器件数据输入。
SDO是MISO,指主器件数据输入,从器件数据输出。

所以百度百科上的spi是不是说错了?



dirtwillfly 发表于 2016-1-27 11:29 | 显示全部楼层
这个一般是针对mcu自身的spi接口来说的。当配置成主器件和从器件时,spi通讯的输出输入是不同的
zhaoyu2005 发表于 2016-1-27 15:27 | 显示全部楼层
这个命名容易混淆,还是MOSI MISO 没歧义
NE5532 发表于 2016-1-27 15:41 | 显示全部楼层
只有MOSI和MISO才是完整正确的描述,SDO和SDI里的S,可能是Slave,也可能是Serial,这个度娘也真的分不清,需要自己看数据手册。
 楼主| zgjzgjkyo 发表于 2016-2-6 22:13 | 显示全部楼层
zhaoyu2005 发表于 2016-1-27 15:27
这个命名容易混淆,还是MOSI MISO 没歧义

对!我不再信那什么sdi和sdo了,坑死人。还是按自己来的好。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

53

主题

213

帖子

4

粉丝
快速回复 在线客服 返回列表 返回顶部