winnie 发表于 2009-4-25 16:53:15

MSSP在SPI方式下全双工工作,下面的程序对不对?

// SPI 初始化
voidspi_init()
{
PIR1=0;               // 清除SPI中断标志
SSPCON=0x30;            // SSP模块使能,SCK SDO SDI SS为SPI专用;CKP空闲高电平;主控时钟频率f/4
SSPSTAT=0xc0;         // SSP主控,输出数据的末尾采样输入数据;在SCK的下降沿发送数据
TRISC=0x10;
}
// 同时发送和接收数据
void tx_rx()
{
SSPBUF=TxData;
do{;}while(SSPIF==0);   //发送数据,A--B
SSPIF=0;
;------------------------------------------------------------------------
                                       
do{;}while(SSPIF==0);   //                               发送完后转接收数据,下面的程序能不能用?
SSPIF=0;
RxData=SSPBUF;            //接收数据, B--A   
   
}

winnie 发表于 2009-4-25 16:53:25

MSSP在SPI主模式下发送数据的同时也就在接收数据!
页: [1]
查看完整版本: MSSP在SPI方式下全双工工作,下面的程序对不对?