OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5136|回复: 4

2个stm32之间需要传输大量的数据 求最优方法

[复制链接]

233

主题

961

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1816
金钱
1816
注册时间
2011-10-9
在线时间
230 小时
发表于 2013-7-11 16:14:54 | 显示全部楼层 |阅读模式
  stm32 cpu1  生成完数据后    需要传送给 cpu2 然后cpu2写入内存

数据量很大  大约 16Mbit.

要求最快速度传输完成。串口是肯定不够速度了

目前想到的方法1

自己定一个协议 
cs  sck  d0-d7    并口的spi协议传输  

但是貌似速度还是不理想

最好当然是 cpu1直接写 内存   就是  cpu1 cpu2共享1片sram  但是貌似不能实现 应该会冲突吧? 
   

正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

530

主题

11万

帖子

34

精华

管理员

Rank: 12Rank: 12Rank: 12

积分
165540
金钱
165540
注册时间
2010-12-1
在线时间
2117 小时
发表于 2013-7-11 17:18:16 | 显示全部楼层
这么多的数据传输量,为什么要用2个CPU啊...
我是开源电子网www.openedv.com站长,有关站务问题请与我联系。
正点原子STM32开发板购买店铺http://openedv.taobao.com
正点原子官方微信公众平台,点击这里关注“正点原子”
回复 支持 反对

使用道具 举报

2

主题

1447

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
2258
金钱
2258
注册时间
2010-12-16
在线时间
206 小时
发表于 2013-7-11 22:09:01 | 显示全部楼层
1.比较在意这16Mbit需要多少时间生成,多少空间存储.

2.如果是流,那找一个比流速率更高的接口传输就可以了.

3.这个世界有"双接口RAM"这种东西,但比较偏门,你懂的.还有一种"FIFO"的东西.
技术讨论请发帖 , 需要我回复请点左下的 < 回复 > 让系统通知我 . 本人不通过其他方式返回任何参数.
回复 支持 反对

使用道具 举报

233

主题

961

帖子

0

精华

金牌会员

Rank: 6Rank: 6

积分
1816
金钱
1816
注册时间
2011-10-9
在线时间
230 小时
 楼主| 发表于 2013-7-11 22:41:19 | 显示全部楼层
这个数据生成大约5秒 

cpu1生成数据后 分给各个从cpu 

cpu1的数据 和其他cpu的数据各自放外挂sram

由于要在同一时间根据不同数据操作外设 所以1个外设要1个cpu控制
n个外设要n个cpu才能保证实时
16mbit 就是2mbyte的数据最好在5秒内传输完成 因为主cpu一共要给16个从cpuu传输数据
就传数据就要1分多

还有个方法就是传数据描述 从cpu再根据描述生成数据
但是要每一个cpu都要外接字库 而且要保证字库的一致性
生成的数据是200个256x256中文字的点阵信息










回复 支持 反对

使用道具 举报

2

主题

1447

帖子

1

精华

金牌会员

Rank: 6Rank: 6

积分
2258
金钱
2258
注册时间
2010-12-16
在线时间
206 小时
发表于 2013-7-14 04:37:58 | 显示全部楼层
SPI吧,不要用软件并行,这样费CPU.

STM32有2个SPI,开18MHz时钟,DMA,一个管8个,每个用时不到1s.两个接口等效0.5s.

如果想内存级别的交换数据,还是用FPGA做背板好.
技术讨论请发帖 , 需要我回复请点左下的 < 回复 > 让系统通知我 . 本人不通过其他方式返回任何参数.
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-7-18 00:28

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表