Розрахунки резисторів підтяжки I2C


10

Я намагаюсь керувати цим LCD-дисплеєм I2C з мікроконтролером ATxmega16A4U .

Обидва пристрої вказані для роботи з тактовою частотою I2C до 400 кГц. Два пристрої - єдині пристрої на шині I2C.

Однак опрацювання розрахунків для меж резистора, що підтягується, дає деякі досить непарні значення.

Обчислення мінімального значення резистора I2C:

Rmin=Vcc0.43mA=966.7Ω

Дивлячись на таблиці даних uC, на сторінці 92 перераховано максимальну вхідну ємність 10 контактних пін.

Однак для РК-дисплея він містить на сторінці 8 щось, що називається Capacitive load represent by each bus lineCb, і вказане з максимальним значенням 400pF. Я припускаю, що я повинен просто додати це значення до вхідної ємності 10pF uC, але це здається дійсно високим і розрахунки непросто.

Наприклад, коли я намагаюся обчислити максимальне значення резистора підтягування для тактової частоти 400 кГц:

Rmax=300ns10pF+400pF=731.7Ω

Я неправильно інтерпретую таблицю з РК-екраном? Очевидно, що максимальне допустиме значення резистора не може бути меншим, ніж мінімально допустиме значення.

аналогічно, якщо я припускаю максимальну чисту ємність шини 400pF, я отримую:

Rmax=300ns400pF=750Ω

як і раніше під максимально допустимим значенням.

Відповіді:


11

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

1us400pF=2.5kΩ

РК-лист (майже напевно) означає максимальну ємність шини, а не ємність, яку він додає до шини. Це, ймовірно, додає близько 10pF. Ви можете перевірити LCR-метр або просто встановити його за допомогою резистора 2k і подивитися на час підйому.

Багато пристроїв не повністю відповідають офіційним характеристикам 400 кГц , тому найкраще звернутися до них, щоб зрозуміти умови, в яких може працювати 400 кГц (ємність шини, підключення / джерело струму тощо). Див. Розділ 6 далі (наприклад, див. примітка 4 на стор.47:

[4] Для забезпечення повного навантаження на шину на частоті 400 кГц потрібно 6 мА IOL при 0,6 В VOL. Запчастини, що не відповідають цій специфікації, можуть функціонувати, але не на 400 кГц і 400 пФ)

Далі ці таблиці дуже корисні, і дивіться, щоб погодитися з вашими розрахунками:

I2C Pullups


Так, я помічаю це щодо даних. сигнал 400 кГц повинен мати коротший час підйому, ніж сигнал 100 кГц: D
helloworld922,

1

Ваш розрахунок має сенс. Аналогічний розрахунок є в цій примітці щодо додатків TI (розділ 4.1) . Зауважте, що вони використовують V cc = 1,8 В для обчислення R хв .

Можливо, що C b - це максимальна ємність шини, з якою може працювати РКД, а не ємність, яку РК додає до шини. Ви можете перевірити ємність входів I 2 C, вимірявши їх постійну RC. Це забезпечило б перевірку чистоти порядку.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.