你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32F1系列读写自身FLASH快还是读写I2C总线上的EEPROM快?

[复制链接]
奏奏奏 提问时间:2018-6-5 09:39 /
本帖最后由 奏奏奏 于 2018-6-5 21:34 编辑

例如我要读取一个数据表格,
长度为800字节,
我要选择存在STM32自身的FLAH还是EEPROM上,
想问试过的伙伴哪个读写更快?
收藏 评论8 发布时间:2018-6-5 09:39

举报

8个回答
七哥 回答时间:2018-6-5 15:02:43
本帖最后由 toofree 于 2018-6-5 15:06 编辑

因为楼主要读取一个数据表格,因此这里只分析读取的,不管写入的。

必须是内部Flash快呀。
用内部Flash的话,800个字节,顶多跨一页,如果你存的合适的话,都不用跨页,一把连续读回来。读flash是用的ICODE指令,尽管中间可能会需要插入适当等待,SYSCLK时钟慢的时候是不需要等待的,读一个字节,那都是小于us级的。读800个字节,也许都不会超过1ms。
傲游截图20180605145653.png

傲游截图20180605145906.png

外部EEPROM慢。来个比较快的EEPROM AT24CM01,最快1M的时钟。每页256字节,800字节,需要跨3页,也就是中间至少需要两次停止。一次停止到下一次开始,需要最大5ms间隔,不算出地址和读命令,仅传输数据至少需要用时800*8*(1/1Mhz)=6.4ms,也就是一共需要16毫秒多。

傲游截图20180605143752.png

傲游截图20180605150231.png


评分

参与人数 1蝴蝶豆 +4 收起 理由
zero99 + 4

查看全部评分

Inc_brza 回答时间:2018-6-5 09:48:05
毫无疑问,Flash

评分

参与人数 1蝴蝶豆 +2 收起 理由
zero99 + 2

查看全部评分

MrJiu 回答时间:2018-6-5 09:48:32
都差不多,因为不管是flash还是eeprom,写一页都需要5ms或者10ms时间等待。。。当然了,flash有一个好处,就是有的一页是1k或者2k,那么只需要一次就写完,问题来了,这时候占用的ram也是比较大的!!!而eeprom有8,16等等,需要的ram少,但是需要写入的次数多。。。所以选择什么,自己更具实际情况来就好了!!!

评分

参与人数 1蝴蝶豆 +3 收起 理由
zero99 + 3

查看全部评分

疯de_恒 回答时间:2018-6-5 09:49:18
读肯定是自身的flash快啊,外部IIC太慢了。

评分

参与人数 1蝴蝶豆 +2 收起 理由
zero99 + 2

查看全部评分

疯de_恒 回答时间:2018-6-5 09:50:14
MrJiu 发表于 2018-6-5 09:48
都差不多,因为不管是flash还是eeprom,写一页都需要5ms或者10ms时间等待。。。当然了,flash有一个好处, ...

他说的是外部I2C的E2PROM
wudianjun2001 回答时间:2018-6-5 10:09:43
应该是内部的快,外部串行总线的话,速度还是受限制的

评分

参与人数 1蝴蝶豆 +2 收起 理由
zero99 + 2

查看全部评分

MrJiu 回答时间:2018-6-5 11:31:36
す疯Ⅱ恒す 发表于 2018-6-5 09:50
他说的是外部I2C的E2PROM

我这里就是包括了外部的eeprom。。。我说的时间并不是指写入时间,而是写入完后,需要等待的时候,无法连续写入的。。。至于I2C的速度相对于等待时间来说,小意思啦!!!
电子星辰 回答时间:2018-6-5 11:33:16
应该是内部FLASH更快,不过具体到项目中就要考虑很多了,真的有必要为了快那么多选择消耗芯片擦写次数吗?等等。。。

评分

参与人数 1蝴蝶豆 +3 收起 理由
zero99 + 3

查看全部评分

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新和工艺
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版