Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

MOTIX™ MCU Forum Discussions

huaqingren
Level 1
First like received First reply posted First question asked
Level 1

TLE9855QX作为slave spi时,MISO引脚输出电平不正常,空闲电平时高时低,导致主机SPI接收到的信号不正确

0 Likes
1 Solution
LinGuohui
Moderator
Moderator 25 replies posted 10 solutions authored First like received
Moderator

TLE9855作为SPI从机使用,按照你的描述来看还是通信时序的问题,你可以通过示波器或者逻辑分析仪抓下实际的波形,然后参照你的代码来定位问题。

View solution in original post

0 Likes
6 Replies
LinGuohui
Moderator
Moderator 25 replies posted 10 solutions authored First like received
Moderator

你好,

几个问题帮忙确认下:

1. SPI外设是否正确配置;

2. 使用的是infineon的开发板还是自己做的板子,有没有经过AB交叉验证。

 

0 Likes
huaqingren
Level 1
First like received First reply posted First question asked
Level 1

目前的情况是这样,主机的MOSI, CLK, CS信号接到了从机上,从机的MISO没有接到主机上,排除了主机对从机的影响。

主机发送的数据为 0x55,数据长度19个,从机根据主机的CS信号,触发发送19个数据给主机。现在是从机发送的第一个数据是最后一次赋值的数据(也就是数组最后一个数据),第二个数据才是数组的第一个数据,从机发送的数据出现偏移。

0 Likes
LinGuohui
Moderator
Moderator 25 replies posted 10 solutions authored First like received
Moderator

你好,

如上描述来看,应该是软件部分问题。SPI是全双工的,可能是slave写入Transmitter Buffer 位置不对,造成每次MASTER发起数据传输后,第一时间slave没有写入正确的数据。

 

 

0 Likes
huaqingren
Level 1
First like received First reply posted First question asked
Level 1

现在我改下从机要写入的数据,都会影响,字节偏移的位置,而且还会有空闲的时候为高电平的情况。

我现在的逻辑是:

主机每10ms触发第一个数据发送,同时使能CS,剩下的19个字节在发送中断中完成;数据接收在接收中断中完成;

从机根据CS信号外部中断,触发第一个字节的发送,剩下的18个字节在发送中断中完成;数据接收在接收中断中完成;

请帮忙看下这个逻辑有问题吗,感谢!

0 Likes
LinGuohui
Moderator
Moderator 25 replies posted 10 solutions authored First like received
Moderator

TLE9855作为SPI从机使用,按照你的描述来看还是通信时序的问题,你可以通过示波器或者逻辑分析仪抓下实际的波形,然后参照你的代码来定位问题。

0 Likes
huaqingren
Level 1
First like received First reply posted First question asked
Level 1

感谢,最后查出是因为主机从机中的SPI的中断优先级配置的不够高导致的信号接收有偏差。