Cypress技术william hill官网
直播中

王建华

7年用户 350经验值
私信 关注
[问答]

SCB SPI和非SCB SPI模块具有不同的行为

嗨,大家好,
我们有不同的行为柏树SPI模块在不同的柏树CPU。当我们使用SPI从属非SCB(UDB?)基于CY8C4247LQI-BL43的版本2.70,我们接收来自瑞萨控制器的SPI帧,意味着缓冲区大小保持0,但是当我们更改为CYBL10563-56LQXI时,我们只能使用基于SCB的SPI模块3,并且不接收任何带有此组件的帧。我们使用模式从属和子模式摩托罗拉,SCLK模式CPHA=1,CPOL=0,过采样=8,RX/TX数据位=8,MSB第一,SS数1,活动Low,FIFO缓冲区大小为8字节。DATARATE是1kHz。
SCB SPI组件没有RX/TX中断吗?只有一个完成状态和各种FIFO状态和缓冲区大小?
有没有人知道模块为何如此不同?
多谢多谢
安德烈亚斯

以上来自于百度翻译


     以下为原文
  Hi all,
    We have a different behaviour of the Cypress SPI modules on different Cypress CPUs.
When we use the SPI Slave non SCB (UDB?) based, version 2.70 on a CY8C4247LQI-BL483 we do receive SPI frames
from a Renesas controller, means the buffersize remains 0,
but when we change to CYBL10563-56LQXI we can only use the SCB based SPI module version 3.0 and
do not receive any frames with this component.
We use mode Slave and submode Motorola, with SCLK mode CPHA=1 and CPOL=0, Oversampling=8,
RX/TX data bits=8, MSB First, Number of SS:1, Active Low, with a FIFO Buffer size of 8 bytes. The datarate is 1kHz.
    And the SCB SPI component has no rx/tx interrupt? Only an SPI_Done status and the various FIFO status and the buffer size?
    Has anyone an idea why the modules are so different?
    Thanks a lot and best regards
    Andreas

回帖(8)

王琳

2019-1-30 12:25:16
安德烈亚斯
将SCB SPI设置为字节模式、RX和Tx缓冲器,以及gt;16。那么你就要中断所有的中断了。
对不同成分的原因是与底层硬件SPI是建立从。USB与SCB有很大区别。
鲍勃

以上来自于百度翻译


     以下为原文
  Andreas,
    Set the SCB SPI to byte mode, Rx and Tx buffer to > 16. Then you have all interrupts you want.
    The reason for the different components is related to the underlying hardware the SPI is build from. USB differs from SCB dramatically.
     
    Bob
举报

王建华

2019-1-30 12:31:28
谢谢鲍伯,
我会试试这个。
是否需要在第120页的SCB数据表中描述准确的(或更大的)时序相关性?
如果拖尾(或/或另外)1或1/2个SCLK周期丢失,时钟和SELECT是不活动的,直接
在最后一位之后?
安德烈亚斯

以上来自于百度翻译


     以下为原文
  Thanks Bob,
    I will try this.
    Is it neccessary to have the exact (or a greater) Timing Correlation as described in the SCB Datasheet on page 120?
    What, if the trailing (or/or in addition) 1 or 1/2 SCLK period is missing and the clock and the select is inactive directly
    after the last bit?
    Andreas
举报

王琳

2019-1-30 12:49:56
对于奴隶,在SSEL和SCLIK之间需要100NS的定时,显然不需要保持。参见数据表,AC特性。我的组件是3.10,但是3的更改只在数据表中。尽管如此,更新。
鲍勃

以上来自于百度翻译


     以下为原文
  For the slave there is a 100ns timing between ssel and sclock needed, obviously no hold required. See datasheet, AC characteristics. My component is 3.10, but changes from 3.0 are in datasheet only. Nonetheless, update.
     
    Bob
举报

王建华

2019-1-30 12:57:22
我将SCB SPI的设置更改为字节模式、RX和Tx缓冲区为=32。
并实现中断,但只接收TX中断,没有RX中断和
缓冲区大小保持0。
当我切换到USB组件时,我接收到帧…
这真的很奇怪…
你有一个简单的例子,SCB组件被正确配置了吗?
作为奴隶有中断吗?
安德烈亚斯

以上来自于百度翻译


     以下为原文
  I changed the settings of the SCB SPI now to byte mode, Rx and Tx buffer to == 32.
    And implemented the interrupts, but only receive an tx interrupt, no rx interrupt and
    the buffer size remains 0.
    When I switch to the USB component, I receive the frames...
    This is really weird...
    Do you have an simple example with the SCB component correctly configured
    as a slave with interrupts?
    Andreas
举报

更多回帖

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