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

STM32F103 用普通IO口驱动24C02问题?

[复制链接]
qazplm3218 提问时间:2019-5-31 09:13 /
以下24C02的驱动好像不稳定,不更换24C02时,读写都正确,但是更换一个24C02,数据就读写不正确,在把之前的正常的24C02重新焊上去,也读写不正确,我已确认过24C02肯定是没问题的,硬件也没问题,请高手看看到底是那个出现了问题?驱动程序是我在当时AVR单片机移植过来的。
驱动程序请看附件。。






at24c02.pdf

下载

49.63 KB, 下载次数: 10, 下载积分: ST金币 -1

收藏 评论10 发布时间:2019-5-31 09:13

举报

10个回答
七哥 回答时间:2019-5-31 09:50:42
本帖最后由 toofree 于 2019-5-31 09:54 编辑

如果24C02没问题的,硬件也没问题,那就还是程序问题。
IO必须用OD模式,不需要切换方向,只需要输出1即可从输入寄存器读回实际IO的输入状态。注意IO的默认输出状态是0还是1,默认配置为全输入状态;如果要输出的话,首先全输出1,然后再按照I2C的流程来;如果只挂一个I2C设备的话,不涉及I2C总线锁死的问题。

评分

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

查看全部评分

CC4 回答时间:2019-5-31 10:45:16
toofree 发表于 2019-5-31 09:50
如果24C02没问题的,硬件也没问题,那就还是程序问题。
IO必须用OD模式,不需要切换方向,只需要输出1即可 ...

为什么不用切换方向呢??我记得IIC通信时,SDA方向很重要呀

评分

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

查看全部评分

七哥 回答时间:2019-5-31 11:50:58
select326 发表于 2019-5-31 10:45
为什么不用切换方向呢??我记得IIC通信时,SDA方向很重要呀

不需要再解释了吧,这句话看到句号那里了吗?
qazplm3218 回答时间:2019-5-31 12:47:34
toofree 发表于 2019-5-31 09:50
如果24C02没问题的,硬件也没问题,那就还是程序问题。
IO必须用OD模式,不需要切换方向,只需要输出1即可 ...

我的程序就是没有切换IO口方向的,直接读回输入寄存器实际IO的输入状态。如果加了IO口切换方向后,读写都不能成功
CC4 回答时间:2019-6-4 10:40:27
我还很菜,没有理解。看原子的程序中,就有方向切换的代码。那就没有问题。否则就不能成功。。。
qazplm3218 回答时间:2019-6-4 11:02:05
select326 发表于 2019-6-4 10:40
我还很菜,没有理解。看原子的程序中,就有方向切换的代码。那就没有问题。否则就不能成功。。。 ...

你好,程序能发我看看吗??
废鱼 回答时间:2019-6-4 11:11:00
楼主用模拟I2C即可,实在确定不了的问题使用示波器或者逻辑分析仪进行数据分析。要学会使用工具判断是程序问题,还是焊接问题。

评分

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

查看全部评分

edmundlee 回答时间:2019-6-4 13:03:40
本帖最后由 edmundlee 于 2019-6-4 13:08 编辑

用模拟I2C时, 有两种方法
1, SDA 配置为OD 外加上拉电阻, 无需切换IO方向
2, SDA 配置为PP 外加上拉电阻, 接收时需要切换IO方向

而楼主是属于错误的第三种方法
你说之前用的24C02是可以的, 那可以告诉你的, 它(之前的24C02)之所以行, 是因为它在读取ACK时,它把一输出为高的IO硬生生的把它拉低,这种情况等同于两个输出的IO, 一个输出高另一个输出低, 接一块, 结果是高是低那是看运气吧

评分

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

查看全部评分

五哥1 回答时间:2019-6-4 15:59:44
本帖最后由 五哥1 于 2019-6-4 16:01 编辑

建议用现成原子的程序测试下,然后再这个基础上改。 尤其是那个检测24c02是否工作的程序。

评分

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

查看全部评分

qazplm3218 回答时间:2019-6-5 13:23:30
edmundlee 发表于 2019-6-4 13:03
用模拟I2C时, 有两种方法
1, SDA 配置为OD 外加上拉电阻, 无需切换IO方向
2, SDA 配置为PP 外加上拉电阻 ...

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