完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
你好,
我试图得到一个SPILAVE通过DMA将数据传输到数组。 每个突发应该是2字节,传输计数=2。每个突发需要新请求。 不幸的是,只有第一个数据被传输,第二个数据留在SPRX缓冲区中。 SimMaster似乎正在工作。用OCSI测试,而RxBuffor不是空的Iputt似乎正在工作。 有人知道发生了什么事吗? 附加的是工作空间束。 哈迪 设计01.CyWrk.CaseVo.02.Zip 1.4兆字节 |
|
相关推荐
13个回答
|
|
我猜想:DMA比传入的SPI传输快。所以,你看到的是,一旦第一个字节在RX缓冲器中,DMA就开始传输。然后,它传送两个字节,但只有一个是有意义的(因为SPI没有收到更多)。然后,DMA完成,并且只有第二字节将被放置在RX缓冲器中。
|
|
|
|
也许我的理解是错误的,但是DMA传输只会出现在有请求的时候吗?
DMAYRXChank= DMAY11dMnI化(DMAIRXXSyByTeSePiSurb Burd,DMAYRXXSXRESUSTESTPARYBY突发, Hi16(DMA-RxSysSrCl基),Hi16(DMAIRXXS-SDSTHYBASE); 使用DMAIRXXSIXRestestuPiSurb=1U 因此,只有当Rxbuffer不是空的时候,DMA才会被触发,然后传输数据,Rxbuffer空,然后等待下一个2字节的数据, |
|
|
|
您可以从PSOC创建者工作空间中的PSoC5的示例项目中获取一些信息。
文件-gt;示例项目。设备家族PSoC 5LP,关键字SPI Slave,Project SPISSH示例。它使用DMA传输项目,并为SPI块提供完整的源代码和配置信息。 它只运行在2MHz时钟的项目,但我不认为这是一个问题。 |
|
|
|
事实上,我从SPIS示例中修改了我的项目,从原始代码DMA循环到1字节的突发数据PSoc creator.in。
在我的项目中,DMA应该传输2字节,用于2传输计数和结束(触发DMADONSOL标志)。但是如前所述,工作不正常。 有什么想法吗? |
|
|
|
好吧,我也要看看你的项目并不能看到你做了一件非常不寻常的。
只有一件事-但这不应在这种情况下,是旗帜”cy_dma_disable_td”允许终止运行,你不使用DMA。 为了更进一步:希望你有一个逻辑分析仪。检查一下你是否真的得到两NRQ信号传输的SPI从成分看问题所在。 鲍勃 |
|
|
|
|
|
|
|
|
|
|
|
每个请求执行一个突发。当您定义DMA来传输每个突发2字节时,它将每个请求传输2字节。DMA不关心RX FIFO中是否有数据,它只会读取。
|
|
|
|
|
|
|
|
你能试试造物主3.1 SP2吗?在那里的SPI主机有一个修复看起来像是你的问题(“当数据位被设置大于8位时”更新状态寄存器FIFO源信号。——连接到状态寄存器的FIFO信号是从错误的地方取出来的。这会导致在出现中断时发送不正确的数据。
(编辑:跳过)我忘了你在使用SPI奴隶。也许我需要一些咖啡,或者睡觉。 |
|
|
|
一个猜想:你是否尝试将每个突发的字节设置为1,然后将信道上的突发计数设置为2?这就是AN51705中的例子(以及AN6102)。
|
|
|
|
仍然没有雪茄..我设置的spi触发Rx FIFO满后(8bytes)和触发DMA继续直到所有8字节传输(提高DMA完成中断)。…数据稀少还是错误的,
我注意到的是,接收高级先出全中断触发每次程序启动,即使FIFO为空。 已经更新了组件,仍然存在同样的问题 |
|
|
|
当我看时,你的DMA触发器被设置为“电平”,可能设置为边沿触发?
我很警惕如何使用DMA传输一个16位寄存器(因为这是你在SPI中所拥有的)。它必须从同一个内存位置传输两次,但需要传输2个连续字节,然后从相同的地址重新启动。他们这样做似乎是设置“每个突发字节”到1和“爆裂计数”到2。 |
|
|
|
只有小组成员才能发言,加入小组>>
754个成员聚集在这个小组
加入小组2110 浏览 1 评论
1858 浏览 1 评论
3673 浏览 1 评论
请问可以直接使用来自FX2LP固件的端点向主机FIFO写入数据吗?
1791 浏览 6 评论
1540 浏览 1 评论
CY8C4025LQI在程序中调用函数,通过示波器观察SCL引脚波形,无法将pin0.4(SCL)下拉是什么原因导致?
576浏览 2评论
CYUSB3065焊接到USB3.0 TYPE-B口的焊接触点就无法使用是什么原因导致的?
430浏览 2评论
CX3连接Camera修改分辨率之后,播放器无法播出camera的画面怎么解决?
440浏览 2评论
390浏览 2评论
使用stm32+cyw43438 wifi驱动whd,WHD驱动固件加载失败的原因?
950浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-28 08:55 , Processed in 1.335455 second(s), Total 101, Slave 85 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号