
在STM32F103芯片中,利用I2C读写EEPROM时,单字节写入,读回的数据和写入的一致;但是当利用页写入时,读回的数据和写入的数据不一致,这是什么原因导致的? |
STM32F103C8出現找不到'STM32100B_EVAL/stm32100b_eval.h' file not found
STM32的DCode bus是连接到bus matrix的吗?参考手册描述和图片是不符吗?
stm32f407无法配置定时器2为全部dma
STM32F103TBU6 封装是VFQFPN36 将PD0和PD1配置成CAN不成功是什么原因
串口DMA + 空闲中断收发 ?
F103RCT6芯片对AFIO->MAPR寄存器写入时出错
使用STM32捕获PWM时同时捕获2个通道时会出现捕获的频率值不准确的问题
WS2812B怎么显示任意字符 / 图案?
STM32F103RCT6 定位孔 镂空,会影响使用吗?
HAL库1.8.4在做破坏性测试的时候出现g_state永远为busy的情况导致串口通信发送卡死
既然是使用模拟I2C,很有可能是您的代码有问题。
1. 页地址对齐,不同容量的EEPROM的页写范围是不同的,起始地址不对容易造成回写故障。
2. 一页连续写完后注意写入时间参数,如果采样延时,要保证5ms后再进行下次操作。
我目前只利用页写入的方式写入2个字节而已,但是读回的数据都不正确,
页写入不过一次多写了几个数据,比方一次性写8个或16个数据后才发送 停止位。 建议你对着EEPROM手册
你确认下你的操作时序有没有问题。或者说代码方面有无忽略了小问题。
用逻辑分析仪抓取一下时序,对照手册检查一下应该可以发现问题。