你好,我准备将从串口接收到的命令通过spi发送给从机,同时接收从机返回的数据。命令共有6位,如果我串口中断接收到一位,spi发送一位,这样正常运行。如果我想等串口接收完6位后,再用spi发送,spi接收中断只在第六位接收完成后进去一次,我直接用线将spi发送接收口连在一起,也是同样效果。
通过示波器抓取波形分析,发送的数据与时钟对应关系正常,6个数据都已成功发送。问题是spi接收中断只进去了一次,这是为什么?
官方SDK ,我下载了3个不同版本,这spi中断也是醉了,延时程式可以这样写吗?我猜TI工程师打盹了,请看下图
Butterfly:
你这是用的哪个版本,去看下
baotong an:
回复 Butterfly:
板子我有两块,黑色的XMSP432和红色msp432。 SDK我试了两种,sdk_1_20_00和sdk_1_40_00.同样的代码,都是黑色板子能运行,红色板子运行不了。挺奇怪的。
baotong an:
回复 Butterfly:
经过代码分析,发现在main中或定时中断中,采用for循环连续发送,第一次发送进入中断,然后就不出来了。中断标志位可能没有清除。但我试着多次运行清除语句,也没有用。
以下是中断清除