SPIM 读写操作问题

[复制链接]
1275|2
 楼主| gexingyouxian 发表于 2014-10-24 08:27 | 显示全部楼层 |阅读模式
void SPI_Write(unsigned char dig)
{
        PRT2DR |= CS;
        while(!(SPIM_1_bReadStatus() & SPIM_1_SPIM_TX_BUFFER_EMPTY)){};
        PRT2DR &= ~CS;                         // set slave select low
        SPIM_1_SendTxData(dig); // set message to transmit        
        while(!(SPIM_1_bReadStatus() & SPIM_1_SPIM_SPI_COMPLETE)){};
        PRT2DR |= CS;                        //
}

unsigned char SPI_Read(void)
{
        unsigned char ReceivedData;
        
        PRT2DR |= CS;
        
        PRT2DR &= ~CS;
        SPIM_1_SendTxData(0x00);  // 写伪数据,以便读到数据                                    
        while(!(SPIM_1_bReadStatus() &  SPIM_1_SPIM_RX_BUFFER_FULL));//RX Buffer register has received current data
        ReceivedData = SPIM_1_bReadRxData();               
        PRT2DR |= CS;
        
        return ReceivedData;
}
 楼主| gexingyouxian 发表于 2014-10-24 08:27 | 显示全部楼层
可以向SPI从设备写操作,但是死活都不能进行读操作,
请高手指点
dsll2010 发表于 2014-10-27 17:23 | 显示全部楼层
这个问题一眼看不出来,最好到官网上去建个case,会有人给你解决。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

197

主题

1530

帖子

2

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