你的浏览器版本过低,可能导致网站不能正常访问!为了你能正常使用网站功能,请使用这些浏览器。
lcdi 发表于 2015-5-14 10:04 看样子HAL库设计的还是不方便啊
create_ce 发表于 2014-11-4 13:51 解决了 HAL_StatusTypeDef EEPROM_WriteData(uint16_t MemAddress, uint8_t *pData, uint16_t Size) {
wtliu 发表于 2015-5-17 13:57 I2C的芯片都很慢,读写时序需要比较长。最可靠的方法就是一个字节一个字节第写。 ...
create_ce 发表于 2014-11-3 15:13 我写正常,就是读多字节的时候不太正常
STM32隐藏
5.18活动板子会不会是STM32L4呢
STM32 CUBE软件中找不到STM32L4系列单片机
Your UAT Feedback is needed within today.
应用
AAA
tiwen
BBBB
aaa
2222
看了大家在写的时候是一个字节一个字节的写,按照EEPROM的写要求,写数据需要5ms的延时,那么我写200个字节的硬件延时就1s了,我的方法是这样的,能正常写数据。初始化和读直接调用的库。每次跨页的时候才有一个5ms的写周期延时。
在这里和HAL库没有任何关系,HAL库为你实现了读写多个字符的操作,这个主要还是和EEPROM器件有关,在读的过程中,可以直接调用读方法读任意的字节,但是写的过程中EEPROM规定是一页一页的写的,比如你一页16字节,你从0地址开始写17个字节,第0个地址会被第17个字节替换,为了防止替换才需要换页操作了,在其他库的操作中也同样需要这样,只不过在写一个字节的操作可能换页判断会简单点。
I2C的芯片都很慢,读写时序需要比较长。最可靠的方法就是一个字节一个字节第写。
I2C总线的速度是慢,EEPROM读写最快也就400K,但是你要一个字节一个字节的写那就1K的速度都达不到了。建议查看下EEPROM的分页和页写延时。如果你一个字节一个字节写,要保证第一个字节写进去了然后再写第二个字节,那必须等5ms的延时,才能写下一个,但是处理好了分页操作之后,可以在写入N个字节之后再等待一个5ms的写操作延时。
我的读好像也不正常。你怎么解决的?
我现在按照你的程序,每次都32字节还是异常,每次读出来不一样,太奇怪了
读写也全都得不到HAL_OK,请大家帮忙分析,另外板子是自己做的。
谢谢