完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我们在内部做了一些测试。
使用块传输,我们只能在USB上每秒获得大约500000字节,在Linux中使用LIUBSB。这对12位SAR的每秒250000个样本有效。 使用同步传输与libu***,我们可以得到1100000字节每秒的USB使用libu***的Linux。(你对谷歌有很多针对libu***。得到的同步传输的例子)这出作品大约每秒550000个样本来自12位SAR。 使用内置的SPI,可以每秒约1200000个样本(没有DMA)关闭的装置。我们使用的是18 MHz的时钟,我们才发现是一个没有任何16位传输,根据数据表的高速。 我们目前看到约1us数据包之间的SPI。我们将尝试DMA。的dmawizard拒绝承认SPI设备(我猜是因为它udbbased),所以我们偷的spimexample项目。 我会很快更新这个帖子的结果。 有什么建议吗? |
|
相关推荐
15个回答
|
|
我认为传输缓冲区和ADCL样本缓冲区必须在int()的函数的{}函数之外,以将其从堆栈中取出来。
堆栈通常无法处理那么多数据。 如果你看一下ADCYDMAYVDAC01示例程序,在Meal.C中,你可能想重新排列初始化代码的顺序,以匹配它们初始化的顺序。 尝试一个传输,然后你可以做回收,但使用一个以上的缓冲区。 按照现在的方式,你的数据会在你的处理器到达之前被覆盖。 |
|
|
|
参见下面的SAR时钟速率和16个时钟/转换的应用
SAR时钟讨论HTTP//CyPress?COM/?APP =论坛和ID ID=2233和;RID=108973 问候,Dana。 |
|
|
|
对于1MSPS,您需要使用DMA。运行18MHz的ADC并不意味着PSOC的其余部分不能运行得更快(54兆赫是好的)。DMA可以全速运行。
对于SPI,它取决于您使用的特性,请查看其组件数据表。 |
|
|
|
我不清楚。从SAR到记忆是没有问题的。
问题是我们需要12位分辨率。这意味着2字节。SAR DMA工作正常。每秒2兆字节的DMA进入SRAM工作良好。那里没有问题。留在设备上很容易。 这个问题使得PSOC的数据在每秒1兆字节的远程计算机上得到。(每秒2兆字节)。 我们能够从全速USB获得适当的速度,每秒1.1兆字节(每秒550000个采样),这是我们需要的速度的55%。我们需要从PSoC每秒2兆字节来获得所需的数据速率。 通过DMA,我们能够获得SPI每秒大约1.2兆字节的数据传输。运行速度比规格稍快,但看起来我们可能会侥幸逃脱。(生产量极低,我们可以手动选择设备)。我们不确定来自FTDI的SPI到USB设备是否会处理这个问题,因为如果在流中使用DMA,来自CyPress的SPI块永远不会断言SS之间的字节。这可能是个问题,可能不是。 看起来,我们可以使用2个SPI单元并以每秒2兆字节的组合速率传输数据,将SPI传输到USB高速设备,这应该是可行的。我们将不得不重新组合我们传送到的计算机中的数据包,但在这一点上,它是一个双核心或四核2GHz的机器,所以不应该是个问题。 太糟糕的高速USB在PSoC设备上是不可用的。(我知道高速PSoC是塞浦路斯的供品之一,而不是在美国家庭)。 |
|
|
|
PSOC5中的SPI主机可以用一个高达18MHz的SCLK运行,这意味着您可以每秒传输18/8=2.25兆字节,而没有超出规格。
当FiFununs为空时,只能由SPI主机断言从属选择。 |
|
|
|
接近了。在数据页的第32页,它说如果你在16位模式下,最大时钟速率是16MHz。
SPI的问题是,在12位模式下,写入16位寄存器来发送数据。(我跟踪API代码来证明这一点) DMA引擎不能写入16位寄存器。它只能写入8位寄存器。 |
|
|
|
|
|
|
|
|
|
|
|
DMA可以支持8、16和32位的传输。
|
|
|
|
|
|
|
|
大家好。我需要一点帮助。
我需要至少10000个样本,使用1MSPS ADC(8或10位),然后我必须将这些样本与阈值进行比较,如果有任何样本超出这个阈值,我必须使用UART或USB将样本发送到计算机。 我用PSoC 4做了一个这样的项目,但是它只有4K的SRAM,我只能对1200个样本进行采样。该项目是附加的。 我最近购买了CY8CKIT-059 PSoC®5LP原型套件,试图解决这个问题,因为它有更多的SRAM,但项目没有很好地工作。 任何人都可以帮助我不幸的是,我不知道如何使用DMA。 CE95257ADC和UAR.CyWrk.CaseV011Zip 1.2兆字节 |
|
|
|
|
|
|
|
转到您的PSoC创建者,文件菜单-gt;示例项目。
看Device家族下& PSoC 5LP 第二个示例项目是ADCJDMAYVDAC。 它显示了如何设置DMA的DeltasigMA ADC。 在那个例子中有一个DMA的设置。紧跟着它,因为你不能通过DMA向导从ADC建立DMA。它缺少这个选项。 此外,示例ADCX萨拉棱镜项目中也有SAR ADC DMA。 还要查看其他DMA项目,并使用向导来设置从寄存器到缓冲区的传输。这应该给你一个框架,使你的DMA变成内存。 |
|
|
|
还有一件事。
由于必须将10000个样本存储到内存中,所以可以传输的最大样本数是4095个(不是4096个!)因此,您必须将DMA从一个缓冲区链接到另一个缓冲区。 这是可以做到的。开始传送300个字节,但仅在说,每秒1000个样本。一旦奏效,就要更快,更好。一步一步。 |
|
|
|
你好。我用DMA做了一个项目,但它不起作用,我不知道为什么,你能看一下吗?
Acdl DMAYUARTAR1MSP-0.0.CYWRK.SARVEVE021.ZIP 565 K |
|
|
|
只有小组成员才能发言,加入小组>>
752个成员聚集在这个小组
加入小组2075 浏览 1 评论
1829 浏览 1 评论
3643 浏览 1 评论
请问可以直接使用来自FX2LP固件的端点向主机FIFO写入数据吗?
1766 浏览 6 评论
1517 浏览 1 评论
CY8C4025LQI在程序中调用函数,通过示波器观察SCL引脚波形,无法将pin0.4(SCL)下拉是什么原因导致?
514浏览 2评论
CYUSB3065焊接到USB3.0 TYPE-B口的焊接触点就无法使用是什么原因导致的?
365浏览 2评论
CX3连接Camera修改分辨率之后,播放器无法播出camera的画面怎么解决?
413浏览 2评论
360浏览 2评论
使用stm32+cyw43438 wifi驱动whd,WHD驱动固件加载失败的原因?
866浏览 2评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-28 13:18 , Processed in 1.217160 second(s), Total 105, Slave 88 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号