极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 45617|回复: 6

uno r3上串口,IIC,SPI三种通讯方式分别能达到多快的最大速度?

[复制链接]
发表于 2013-9-13 19:49:04 来自手机 | 显示全部楼层 |阅读模式
外接16m晶震,串口115200波特率最大是115200bps,每秒大概14.4k bytes,
IIC的SCL最大16m/16=1mhz(根据芯片手册公式算),一个时钟周期传1bit,传8个bits后还要一个时钟周期让slave来ack,去除start和stop时间,每秒传1m/9=116.5k个有效数据bytes,当然实际速度应该还要低不少
SPI接口没研究,不知道最快能达到多少
如果用arduino连接带mjpg压缩的摄像头,30fps,每帧jpg图片3~5k,以目前的速度不知道能不能完成数据采集来自: Android客户端
回复

使用道具 举报

发表于 2013-9-13 20:44:50 | 显示全部楼层
应该不是很快吧
回复 支持 反对

使用道具 举报

发表于 2013-9-14 10:59:26 | 显示全部楼层
话说SPI标准被制定过很多次,最初好像是100kbps.不过现在我已经不知道它的上限是多少了,或者应该说已经没有人想为它规定上限了.
好多年前三洋公司宣传他的SPI NOR型闪存的时候说,在SCK端子的时钟为50MHz的情况得到400Mbps的数据读取速度.
至于现在是多少我就知道了,不过单从SPI接口速度来没有问题,现在的问题是你能让它工作在什么频率下
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-9-16 10:50:56 | 显示全部楼层
mega328p的串口貌似最快可以设置256000,Serial.begin(256000),正常收发,再设高就乱码了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-9-16 10:52:37 | 显示全部楼层
本帖最后由 jfo 于 2013-9-16 10:54 编辑
wing 发表于 2013-9-14 10:59
话说SPI标准被制定过很多次,最初好像是100kbps.不过现在我已经不知道它的上限是多少了,或者应该说已经没有人 ...


在mega328p上SPI速度能上到多少呢?
16M外部晶振,如果能上到10Mbps也够应付大部分应用了
回复 支持 反对

使用道具 举报

发表于 2013-9-17 09:44:51 | 显示全部楼层
假如使用经典的4线SPI,即SDI和SDO都只有一条线,那么每个时钟可以传送1位的数据
说到328,atmel说他的频率可以去到20M,那么实际上能OC到多少呢?
或者先别管心片性能的极限,反正接口不可能占据芯片的所有频率,那么这些频率怎么分配呢?
假设系统是工作在16M的频率下,接口时钟按二十分之一的比例分频,也就是接口的时钟是800K,每个时钟传送1位数据,大概就是 100K bytes 每秒 . 这个速度看起来已经满足 30fps,每帧j3k 的要求.

回复 支持 反对

使用道具 举报

发表于 2013-9-17 10:04:16 | 显示全部楼层
接下来的问题是接收到这些数据后,要把他放在什么地方?
内存是一个不错的选择,如果我没记错的话328有2K的内存,如果忽略写入内存的延时,和其他程序占用内存空间的话.这点可怜的空间大概会在开始接收数据后的50分之1秒被占满.
EEPROM,这东西被称为芯片上的硬盘,因为他在断电后数据也不会丢失.不过328中这个硬盘比内存还小,他只有1K,百分之一秒就被占满了
最后还有一个选择,就是Flash,也就是328存放程序的地方,他的总容量是32K.这是芯片上最大的存储体了.
看来最关键问题并不是接口的速度,而是要找一个容量大,速度快的外部存储器
回复 支持 反对

使用道具 举报

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

本版积分规则

Archiver|联系我们|极客工坊

GMT+8, 2026-6-9 15:50 , Processed in 0.037155 second(s), 20 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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