0

我打算使用 PIC18F26K83 并与使用 SMBus 1.1 版的智能电池进行通信。所以从 PIC 的数据表中它说我需要从 RxyI2C 寄存器中为 SMBus 选择适当的输入阈值。位 0 和 1 用于选择该阈值,但没有 SMBus 版本 1.1 的信息(见下文)。

TH<1:0>:I2C 输入阈值选择位

11 = SMBus 3.0 (1.35 V) 输入阈值

10 = SMBus 2.0 (2.1 V) 输入阈值

01 = I2C 特定输入阈值

00 = 标准 GPIO 输入上拉,通过 INLVLxy 寄存器使能

在互联网上,我找不到 SMBus v1.1 的输入阈值。所以我的问题是:

SMBus v1.1 的输入阈值电压是多少?或者我应该如何设置相关位才能使用 RxyI2C 寄存器中的 SMBus v1.1?

4

1 回答 1

1

IC PIC18F26K83的数据表。声明 IC 支持 SMBus v2.0 和 v3.0。比较 SMBus v2.0 和 v1.1,在电压方面存在一些差异,但 SMBus v1.1 和 v2.0 上的电气差异应该足够接近,可以一起工作。至于向后兼容,请注意 SMBus v1.1 的上拉电阻。SMBus v2.0 的推荐上拉电阻接近标准 I2C,因此不适用于 SMBus v1.1。

因此,在 SMBus 2.0 配置中使用具有与 SMBus v1.1 兼容的上拉电阻的微控制器应该可以正常工作。

跟随您链接到我用来实现 SMBus v1.1 的文档。

智能电池数据

每个 SMBus 版本的 SMBus 数据表

ReadThis <- 实现 SMBus 接口

于 2019-04-08T07:46:49.937 回答