TI中文支持网
TI专业的中文技术问题搜集分享网站

AWR1642 SPI 通信

TI 工程师:

     最近在看SPI资料遇到一个疑问,使用两个1642 进行spi通信,看手册说明,作为master的1642 输出SPI的CLK,并且输出数据是才会有CLK,那么作为slaver的1642 怎么主动发送数据给作为master的1642呢? 时钟怎么提供?是否有寄存器可以设置clk一直使能?

Shine:

时钟还是由master提供,可以在master端执行一个空读/写操作来产生时钟。

user6149625:

回复 Shine:

我现在是用两个1642 进行spi通信,其中一个作为master发送数据0x55,通过示波器观察是正确的,但是作为salve的1642 始终无法读到传递的数据,我是在任务中调用spi_transfer函数,读到的数据始终是0xFF,请问该怎么查找问题,那个寄存器可以查看接收的数据?

Shine:

回复 user6149625:

可以通过SPIBUF寄存器查看是否有收到数据。请看一下TRM手册第23章节的说明。
www.ti.com/…/swru520c.pdf

user6149625:

回复 Shine:

1、执行一个空读/写操作 只能产生一次时钟,还是需要在任务中循环读?
2、如果作为slave的1642要发送数据给作为master的1642,是不是需要增加一个类似gpio中断,通知master开始读,然后,salve端再发送数据?还是master端 建立一个任务 一直读,来产生连续时钟,方便slave端发送数据?
3、还有一种,通过gpio中断,通知master和slave 进行重新配置,互换位置,这样原来作为slave的1642就变成master,可以主动上发数据;主从模式来回切换,这种是否可行?

赞(0)
未经允许不得转载:TI中文支持网 » AWR1642 SPI 通信
分享到: 更多 (0)