TI论坛
直播中

刘欢

7年用户 237经验值
私信 关注

请问TM4C123GH6PGE SSI接收数据时没有出现时钟波形是为什么?怎么解决?

本帖最后由 一只耳朵怪 于 2018-6-7 14:16 编辑

使用该芯片的SSI模块接收文件,函数为
r = SSIDataGetNonBlocking(SSI1_Base,&num[0]);
使用示波器观察SSICLK引脚,发现其在执行发送函数时,有时钟波形出现,而执行如上的接收函数时,没有时钟波形出现
但debug发现num【0】的值已经被修改为0,整数r的值也变为1;
而当前编程需要在接收阶段也有波形输出。
这是为什么?或者我可能出错的地方在哪里?求各位指教。

回帖(2)

李平

2018-6-7 06:04:58
SPI程序在执行的过程中,发送和接收两个过程是同时的。它是通过移位寄存器的操作方式,在把数据移出的同时,slave模块的数据也被移进来了。
所以说SPI数据交互函数一般都是先调用发送函数,接着就调用接收。你可以单步调试,然后看看相应的发送和接收的缓存寄存器的数值。
确定一下数据有没有正确的发出和接收。


谢谢
                                                                         



BR,
KEN
举报

刘欢

2018-6-7 06:12:32
引用: lining870815844 发表于 2018-6-7 06:04
SPI程序在执行的过程中,发送和接收两个过程是同时的。它是通过移位寄存器的操作方式,在把数据移出的同时,slave模块的数据也被移进来了。
所以说SPI数据交互函数一般都是先调用发送函数,接着就调用接收。你可以单步调试,然后看看相应的发送和接收的缓存寄存器的数值。
确定一下数据有没有正确的发出和接收。

的确是所说的问题。已解决。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分