打印
[牛人杂谈]

请问NUC970的I2C的Software Mode怎么使用?

[复制链接]
1451|4
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
duo点|  楼主 | 2021-6-10 10:04 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
各位大佬好, 最近在使用NUC970芯片, 使用官方提供的BSP中I2C代码测试, 功能是完全正常的. 查看数据手册, 发现有支持Software Mode I2C, 所以想尝试下使用这个模式编写I2C功能,但是失败了, 想问下各位大佬是否有成功的可否分享下!
下面有几点疑惑请各位大佬帮忙解答下:
1.在软模式下,操作I2Cn Software Mode Register(I2Cn_SWR)寄存器中的SDW,SCW是否和使用IO口模拟I2C一样, 通过操作这两个位产生START, STOP, READ等指令?
2.在软模式下, I2Cn Control and Status Register(I2Cn_CSR)寄存器中的状态位是否可以正常使用 ?

使用特权

评论回复
沙发
一刀一级| | 2021-6-10 10:06 | 只看该作者

软件模式没有什么特别作用,与直接控制gpio差不多。

使用特权

评论回复
板凳
huangcunxiake| | 2021-6-10 22:25 | 只看该作者
是GPIO模拟吧

使用特权

评论回复
地板
twjiang| | 2021-6-11 09:14 | 只看该作者
“软模式”I2C由软件控制 SCR, SDR, EN? (TRM手册没有说第三个寄存器,应该是遗漏)三个寄存器来实现的。任何时候,软件都可以读取或写入SCL, SDA的输入端(input port);但是它们(SCL, SDA)的输出开启(output enable)只有在 I2C_EN=0的情况下才能被软件控制。

使用特权

评论回复
5
zhamatu| | 2021-6-11 10:44 | 只看该作者
软模式和硬件其实是有区别的,前者我认为还是相当于io模拟。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

427

主题

1594

帖子

1

粉丝