OpenEdv-开源电子网

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

新手求助:关于AT24C02 读写的问题

[复制链接]

1

主题

3

帖子

0

精华

新手入门

积分
7
金钱
7
注册时间
2026-1-28
在线时间
1 小时
发表于 2 小时前 | 显示全部楼层 |阅读模式
1金钱
我用STM32F103C8C6 读写报错  IC 芯片型号为TSE2 用341A识别为  AT34C02   无论我怎么写。只能读写到 00--7F  还有80--FF 就是能读,写不了   我用这个网上找的  void AT24C02C_Unlock(void){
    I2C_Start();
    I2C_SendByte(0xA0);
    I2C_WaitAck();
    I2C_SendByte(0xC0);
    I2C_WaitAck();
    I2C_SendByte(0x00);
    I2C_WaitAck();
    I2C_Stop();
    delay_ms(5);
}

也没用  ,但这个IC 别人能用能正常。求教下还要加点什么才能正常读写?

回复

使用道具 举报

1

主题

3

帖子

0

精华

新手入门

积分
7
金钱
7
注册时间
2026-1-28
在线时间
1 小时
 楼主| 发表于 2 小时前 | 显示全部楼层
加了0X31  00 也没用
回复

使用道具 举报

0

主题

106

帖子

0

精华

高级会员

Rank: 4

积分
540
金钱
540
注册时间
2026-1-29
在线时间
36 小时
发表于 2 小时前 | 显示全部楼层
根据你的描述,TSE2芯片被识别为AT34C02且仅能部分写入,结合STM32F103C8C6的特性,以下是可能的解决方案:

一、检查芯片型号兼容性
确认TSE2与AT34C02的兼容性:若TSE2与AT34C02的指令集或通信协议存在差异,需参考TSE2的数据手册调整读写时序或指令。
二、优化I2C通信配置
调整I2C时序参数:在STM32的I2C初始化代码中,适当增加时钟拉伸(Clock Stretching)或延长ACK等待时间,确保与TSE2的速率匹配。
验证I2C地址:确认I2C从机地址是否正确(如0xA0可能对应不同芯片的写地址)。尝试通过逻辑分析仪抓取波形,确认地址帧是否被正确响应。
三、完善解锁流程
你提供的AT24C02C_Unlock函数可能不完全适用于TSE2。建议参考TSE2的数据手册,重新设计解锁 sequence。
四、排查硬件问题
检查接线与上拉电阻:确保I2C的SCL/SDA线连接正确,且上拉电阻(通常4.7kΩ)焊接无误。可尝试替换电阻或测量总线电压。
电源稳定性:使用示波器监测VCC,确保读写过程中无电压跌落。
五、调试工具辅助
使用逻辑分析仪:抓取I2C通信波形,重点观察起始信号、地址帧、数据帧及ACK信号是否符合预期。
分步测试:先单独测试读操作,再逐步增加写操作,定位具体失败环节。
若上述方法仍无效,建议联系TSE2供应商获取技术支持,或尝试替换为已知兼容的EEPROM型号(如AT24C系列)进行交叉验证。
回复

使用道具 举报

1

主题

3

帖子

0

精华

新手入门

积分
7
金钱
7
注册时间
2026-1-28
在线时间
1 小时
 楼主| 发表于 2 小时前 | 显示全部楼层
1有检查下 是同样的参数。数据手册上说这芯片有锁前半容量的写操作 .后面可读写。实际上操作也是的。可解锁的操作找不到了。。但是我怎么改都解不了我找到AT34C02的也解不了。是不是要 哪个地方需要其它代码。或哪个引脚要高电平触发。才行。所以求教 。
回复

使用道具 举报

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

本版积分规则



关闭

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

正点原子公众号

如发现本坛存在违规或侵权内容, 请点击这里发送邮件举报 (或致电020-38271790)。请提供侵权说明和联系方式。我们将及时审核依法处理,感谢配合。

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

GMT+8, 2026-8-3 14:20

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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