完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
嗨,大家好,
我们有不同的行为柏树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个回答
|
|
安德烈亚斯
将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 |
|
|
|
谢谢鲍伯,
我会试试这个。 是否需要在第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 |
|
|
|
对于奴隶,在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 |
|
|
|
我将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 |
|
|
|
下面是这个例子。
鲍勃 Cyrkk.Access 01.Zip 27.5 K 以上来自于百度翻译 以下为原文 Here is the example. Bob
|
|
|
|
当在SCP SPI上使用中断时,需要选择适当的中断源。您可能想要激活“RX FIFO非空”,以及外部中断,这应该在接收到第一个字节之后触发。(对于外部中断,将FIFO级别设置为8,否则需要内部缓冲处理)
以上来自于百度翻译 以下为原文 When using an interrupt on the SCP SPI, you need to select the proper interrupt source. You probably want to activate 'RX FIFO not empty', together with external interrupts, which should be triggered after the first byte has been received. (for external interrupts set the FIFO level to 8, otherwise internal buffer handling is needed) |
|
|
|
嗨,鲍伯,
感谢这个例子,但是USB组件至少接收了一些日期——不是按正确的顺序,而是至少接收到一些东西。问题是SCB组件。我们使用的控制器只支持这个SCB SPI组件,并且不接收由同一主机发送的单个字节。真的很奇怪,很混乱。当我有两个SCB SPI组件在不同的柏树EVE板,一个作为主人,另一个作为奴隶一切都很好,但如果我改变主人没有任何工作。已经尝试了一个ARDUIO作为主机同样的结果-没有字节接收,而USB SPI组件(USB正确吗?在使用这个表达式的地方,也从ARDUNO接收数据,但也不正确,我发送8次0xBB,SCB SPI组件接收八次0x77… 以上来自于百度翻译 以下为原文 Hi Bob, thanks for the example, but the USB component is at least receiving some date - not in the correct order, but receiving something at least. The problem is the SCB component. The controller we use just supports this SCB SPI component and does not receive a single byte sent bythe same master. Its really weird and confusing. When I have two SCB SPI components on different Cypress Eval Boards one as master and the other as slave everything is fine, but if I change the master nothing works. Have tried an Arduino as master as well with the same result - no bytes receiving, while the USB SPI component (is USB correct? You where using this expression) receives data as well from the arduino, but not correct as well, I send 8 times a 0xBB and the SCB SPI component receives eight times a 0x77... |
|
|
|
将项目减少到最安全的SPI通信主/从。然后发布您的完整项目,以便我们都可以查看您的所有设置。要做到这一点,使用C造饰者和GT;文件-GT;创建工作区束(最小)并附加结果文件。
鲍勃 以上来自于百度翻译 以下为原文 Reduce the project(s) to the barest SPI communication master/slave. Then post your complete project, so that we all can have a look at all of your settings. To do so, use Creator->File->Create Workspace Bundle (minimal) and attach the resulting file. Bob |
|
|
|
只有小组成员才能发言,加入小组>>
754个成员聚集在这个小组
加入小组2100 浏览 1 评论
1846 浏览 1 评论
3664 浏览 1 评论
请问可以直接使用来自FX2LP固件的端点向主机FIFO写入数据吗?
1782 浏览 6 评论
1532 浏览 1 评论
CY8C4025LQI在程序中调用函数,通过示波器观察SCL引脚波形,无法将pin0.4(SCL)下拉是什么原因导致?
560浏览 2评论
CYUSB3065焊接到USB3.0 TYPE-B口的焊接触点就无法使用是什么原因导致的?
410浏览 2评论
CX3连接Camera修改分辨率之后,播放器无法播出camera的画面怎么解决?
433浏览 2评论
379浏览 2评论
使用stm32+cyw43438 wifi驱动whd,WHD驱动固件加载失败的原因?
905浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-19 18:48 , Processed in 0.984061 second(s), Total 90, Slave 74 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号