Расчеты резистора I2C

10

Я пытаюсь управлять этим ЖК-дисплеем I2C с помощью микроконтроллера ATxmega16A4U .

Оба устройства указаны для работы с тактовыми частотами I2C до 400 кГц. Эти два устройства являются единственными устройствами на шине I2C.

Однако разработка расчетов для границ нагрузочного резистора дает довольно странные значения.

Расчет минимального значения нагрузочного резистора I2C:

рмяNзнак равноВсс-0,43мAзнак равно966,7Ω

Глядя на таблицы данных по ОК, на стр. 92 приведена максимальная входная емкость контактов 10 пФ.

Однако для ЖК-дисплея на стр. 8 имеется то, что называется Capacitive load represent by each bus lineCb, и указано максимальное значение 400 пФ. Я предполагаю, что я должен просто добавить это значение к входной емкости 10 пФ, но это кажется очень высоким, и вычисления не оправдывают ожидания.

Например, когда я пытаюсь вычислить максимальное значение подтягивающего резистора для тактовой частоты 400 кГц:

рмaИксзнак равно300Ns10пF+400пFзнак равно731,7Ω

Я неправильно истолковываю таблицу данных ЖКД? Очевидно, что максимально допустимое значение подтягивающего резистора не может быть меньше минимально допустимого значения.

аналогично, если я принимаю максимальную чистую емкость шины 400 пФ, я получаю:

рмaИксзнак равно300Ns400пFзнак равно750Ω

по-прежнему под максимально допустимым значением.

helloworld922
источник

Ответы:

11

В таблице данных Atmel есть опечатка, время нарастания для случая 100 кГц должно быть 1000 нс, а не 100 нс (оно не должно быть ниже, чем для случая 400 кГц 300 нс), тогда вы получите:

1Us400пFзнак равно2.5КΩ

Таблица данных LCD (почти наверняка) означает максимальную емкость шины, а не емкость, которую она добавляет к шине. Это, вероятно, добавляет около 10 пФ. Вы можете проверить с помощью LCR-метра или просто настроить его с помощью резистора 2К и посмотреть время нарастания.

Многие устройства не полностью соответствуют официальным характеристикам 400 кГц , поэтому лучше обратиться к ним для понимания условий, в которых может работать 400 кГц (емкость шины, подтягивание / источник тока и т. Д.). См., В частности, раздел 6 (например, см. примечание 4 на стр.47:

[4] Для полной нагрузки шины на частоте 400 кГц требуется 6 мА ИОЛ при напряжении 0,6 В. Части, не соответствующие этой спецификации, могут функционировать, но только при частоте 400 кГц и 400 пФ)

Далее, эти таблицы довольно полезны, и, похоже, согласны с вашими расчетами:

I2C Pullups

Оли Глейзер
источник
Да, я заметил это в таблице. сигнал 400 кГц должен иметь более короткое время нарастания, чем сигнал 100 кГц: D
helloworld922
1

Ваш расчет имеет смысл. В этом примечании к приложению TI есть аналогичный расчет (раздел 4.1) . Обратите внимание, что они используют V cc = 1,8 В для расчета R мин .

Возможно, что C b - это максимальная емкость шины, с которой может работать ЖК-дисплей, а не емкость, которую ЖК-дисплей добавляет к шине. Вы можете проверить емкость входов I 2 C, измерив их постоянную RC. Это обеспечило бы проверку нормального порядка.

Ник Алексеев
источник