gghhz 发表于 2011-10-31 17:11:23

lpc2119+SC16IS752做SPI扩展串口问题

uint8 SPI_Read_752(uint8 reg,uint8 channel)                   //reg为寄存器地址,channel为通道号    {
      uint8 Comm752,receive_buf;
      uint8 readdata;
       reg=(reg<<3)|0x80;                                                 //0x80,是否就是读命令?
      if(channel==2)    reg=reg|0x02;                                 //加入通道号
      Comm752=reg;
      IO0CLR |= 1<<12;                                                   //片选激活
      SPI_Send_752(Comm752,1);                                    //发送命令字
      SPI_Read(receive_buf,1);                                           //读取数据
      readdata=receive_buf;                                          
      IO0SET |= 1<<12;                                                    //片选关闭
      return readdata;                                                      //返回数据
       }
///////////////////////////////////////////////////////////////////////////////////
void SPI_Read(uint8 *p,uint8 num)
{
uint8 i;
for(i=0;i<num;i++)
{
SPI_Send(0xff,1);                                          //发送空数据
while(0==(S0PTSR&0X80));                               //等待发送完成
*p = S0PDR;
   }
}

MCU用得是LPC2119 ARM7

现在时发送数据没有问题,但是接收不到数据,SPI发送空数据,产生时钟以便接收,那发送寄存器和接收寄存器为同一个,改如何协调,同样SC16IS752也为收发同一寄存器,不知道该如何来处理,求高手指教啊

gghhz 发表于 2011-11-3 10:21:46

高手救命啊

gghhz 发表于 2011-11-4 17:02:16

这么久了,那位高手出来拉咱一把啊

hbchf 发表于 2012-5-9 16:32:51

关注之中!
页: [1]
查看完整版本: lpc2119+SC16IS752做SPI扩展串口问题