Π ΠΌΠΈΡΠ΅ Π²ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌΡΡ ΡΠΈΡΡΠ΅ΠΌ ΠΈ ΡΠΈΡΡΠΎΠ²ΠΎΠΉ ΡΠ»Π΅ΠΊΡΡΠΎΠ½ΠΈΠΊΠΈ ΡΠ»ΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π±ΠΎΠ»Π΅Π΅ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΠΉ ΡΡΠ°Π½Π΄Π°ΡΡ ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½ΡΠΌΠΈ, ΡΠ΅ΠΌ I2C (Inter-Integrated Circuit). ΠΡΠΎΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΡΠΎΡΠΎΠΊΠΎΠ», ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ°Π½Π½ΡΠΉ Π΅ΡΠ΅ Π² 1982 Π³ΠΎΠ΄Ρ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠ΅ΠΉ Philips, ΡΡΠ°Π» "Π½Π΅ΡΠ²Π½ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ" Π΄Π»Ρ ΠΌΠΈΠ»Π»ΠΈΠΎΠ½ΠΎΠ² ΡΡΡΡΠΎΠΉΡΡΠ², ΡΠ²ΡΠ·ΡΠ²Π°Ρ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ Ρ Π΄Π°ΡΡΠΈΠΊΠ°ΠΌΠΈ, EEPROM-ΠΏΠ°ΠΌΡΡΡΡ ΠΈ Π΄ΠΈΡΠΏΠ»Π΅ΡΠΌΠΈ. ΠΡΡ ΠΌΠ°Π³ΠΈΡ ΡΡΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΡΡΡΠΎΠΈΡΡΡ Π½Π° Π΄Π²ΡΡ ΡΡΠ½Π΄Π°ΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΡΡ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΡ Π»ΠΈΠ½ΠΈΡΡ : SDA (Serial Data) ΠΈ SCL (Serial Clock).
ΠΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΡΠΈΠ·ΠΈΠΊΠΈ ΡΠ°Π±ΠΎΡΡ ΡΡΠΈΡ Π»ΠΈΠ½ΠΈΠΉ ΠΊΡΠΈΡΠΈΡΠ΅ΡΠΊΠΈ Π²Π°ΠΆΠ½ΠΎ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π»Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΊΠΎΠ΄Π° Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΎΠ², Π½ΠΎ ΠΈ Π΄Π»Ρ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ ΡΡΠ°ΡΡΠΈΡΠΎΠ²ΠΊΠΈ ΠΏΠ΅ΡΠ°ΡΠ½ΡΡ ΠΏΠ»Π°Ρ. ΠΡΠΈΠ±ΠΊΠΈ Π½Π° ΡΡΠΎΠ²Π½Π΅ "ΠΆΠ΅Π»Π΅Π·Π°", ΡΠ°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ ΠΏΠΎΠ΄ΡΡΠ³ΠΈΠ²Π°ΡΡΠΈΡ ΡΠ΅Π·ΠΈΡΡΠΎΡΠΎΠ² ΠΈΠ»ΠΈ Π½Π΅ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½Π°Ρ Π΅ΠΌΠΊΠΎΡΡΡ ΡΠΈΠ½Ρ, ΠΌΠΎΠ³ΡΡ ΠΏΡΠ΅Π²ΡΠ°ΡΠΈΡΡ Π½Π°Π΄Π΅ΠΆΠ½ΡΠΉ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» Π² ΠΈΡΡΠΎΡΠ½ΠΈΠΊ ΠΏΠΎΡΡΠΎΡΠ½Π½ΡΡ ΡΠ±ΠΎΠ΅Π² ΠΈ Π·Π°Π²ΠΈΡΠ°Π½ΠΈΠΉ ΡΠΈΡΡΠ΅ΠΌΡ. ΠΠ°Π²Π°ΠΉΡΠ΅ ΡΠ°Π·Π±Π΅ΡΠ΅ΠΌΡΡ, ΠΊΠ°ΠΊ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΏΠΎ ΡΡΠΈΠΌ ΠΊΠ°Π½Π°Π»Π°ΠΌ.
Π ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ UART, Π³Π΄Π΅ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ·Π΅Π» ΠΈΠΌΠ΅Π΅Ρ ΡΠ²ΠΎΠΈ Π»ΠΈΠ½ΠΈΠΈ ΠΏΡΠΈΠ΅ΠΌΠ° ΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ, Π·Π΄Π΅ΡΡ Π²ΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π° Π²ΠΈΡΡΡ Π½Π° ΠΎΠ±ΡΠΈΡ ΠΏΡΠΎΠ²ΠΎΠ΄Π°Ρ . ΠΡΠΎ ΡΠΎΠ·Π΄Π°Π΅Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠ΅ ΡΡΠ»ΠΎΠ²ΠΈΡ Π΄Π»Ρ Π°ΡΠ±ΠΈΡΡΠ°ΠΆΠ° ΠΈ ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·Π°ΡΠΈΠΈ. ΠΠ»ΡΡΠ΅Π²ΠΎΠΉ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΠΎ, ΡΡΠΎ Π½ΠΈ ΠΎΠ΄Π½ΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΠΆΠ΅ΡΡΠΊΠΎ Π½Π°Π²ΡΠ·Π°ΡΡ Π²ΡΡΠΎΠΊΠΈΠΉ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΡΠΎΠ²Π΅Π½Ρ Π½Π° ΡΠΈΠ½Ρ, Π° ΡΠΎΠ»ΡΠΊΠΎ ΠΎΡΠΏΡΡΠΊΠ°ΡΡ Π΅Ρ ΠΈΠ»ΠΈ ΠΏΠΎΠ΄ΡΡΠ³ΠΈΠ²Π°ΡΡ ΠΊ Π·Π΅ΠΌΠ»Π΅. ΠΠΌΠ΅Π½Π½ΠΎ ΡΡΠΎΡ ΠΏΡΠΈΠ½ΡΠΈΠΏ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ Π²ΡΡ Π΄Π°Π»ΡΠ½Π΅ΠΉΡΡΡ Π»ΠΎΠ³ΠΈΠΊΡ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΡΡ Π΅ΠΌΠΎΡΠ΅Ρ Π½ΠΈΠΊΠΈ.
Π€ΠΈΠ·ΠΈΡΠ΅ΡΠΊΠ°Ρ ΠΏΡΠΈΡΠΎΠ΄Π° Π»ΠΈΠ½ΠΈΠΉ SDA ΠΈ SCL
ΠΠΈΠ½ΠΈΡ SCL ΡΠ»ΡΠΆΠΈΡ ΡΠ°ΠΊΡΠΎΠ²ΡΠΌ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡΠΎΠΌ, Π·Π°Π΄Π°ΡΡΠΈΠΌ ΡΠΈΡΠΌ Π΄Π»Ρ Π²ΡΠ΅Π³ΠΎ ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½ΡΠΌΠΈ. ΠΠ΅Π΄ΡΡΠ΅Π΅ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ (Master) Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ ΠΈΠΌΠΏΡΠ»ΡΡΡ Π½Π° ΡΡΠΎΠΉ Π»ΠΈΠ½ΠΈΠΈ, Π° Π²Π΅Π΄ΠΎΠΌΡΠ΅ (Slave) ΠΏΡΠΎΡΡΠΎ ΡΡΠΈΡΡΠ²Π°ΡΡ ΠΈΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅. ΠΠ΄Π½Π°ΠΊΠΎ, Π΄Π°ΠΆΠ΅ ΠΌΠ°ΡΡΠ΅Ρ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΡΠΎΠ»Ρ Π½Π°Π΄ ΡΡΠΎΠ²Π½Π΅ΠΌ Π½Π°ΠΏΡΡΠΆΠ΅Π½ΠΈΡ Π² Π»ΡΠ±ΠΎΠΉ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΈΠ·-Π·Π° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ Open-Drain (ΠΎΡΠΊΡΡΡΡΠΉ ΡΡΠΎΠΊ).
ΠΠΈΠ½ΠΈΡ SDA ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ Π½Π°Π³ΡΡΠ·ΠΊΠΈ β Π±ΠΈΡΠΎΠ² Π΄Π°Π½Π½ΡΡ . Π ΠΌΠΎΠΌΠ΅Π½ΡΡ, ΠΊΠΎΠ³Π΄Π° Π΄Π°Π½Π½ΡΠ΅ Π½Π΅ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΡΡ ΠΈΠ»ΠΈ ΡΠΈΠ½Π° ΡΠ²ΠΎΠ±ΠΎΠ΄Π½Π°, ΠΎΠ±Π΅ Π»ΠΈΠ½ΠΈΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡΡ Π² ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠΉ Π΅Π΄ΠΈΠ½ΠΈΡΡ. ΠΡΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅ΡΡΡ Π²Π½Π΅ΡΠ½ΠΈΠΌΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°ΠΌΠΈ, ΠΎ ΠΊΠΎΡΠΎΡΡΡ ΠΌΡ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡΠΈΠΌ Π½ΠΈΠΆΠ΅. ΠΡΠ»ΠΈ Π±Ρ Π½Π΅ ΠΎΠ½ΠΈ, ΠΌΡ Π±Ρ Π²ΠΈΠ΄Π΅Π»ΠΈ Π»ΠΈΡΡ ΠΏΠΎΡΡΠΎΡΠ½Π½ΡΠΉ Π½ΠΎΠ»Ρ ΠΈΠ»ΠΈ "ΠΏΠ»Π°Π²Π°ΡΡΠΈΠΉ" ΡΠΈΠ³Π½Π°Π», ΠΏΠΎΠ΄Π²Π΅ΡΠΆΠ΅Π½Π½ΡΠΉ ΠΏΠΎΠΌΠ΅Ρ Π°ΠΌ.
ΠΠ°ΠΆΠ½ΠΎ ΠΎΡΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ Π½Π° Π»ΠΈΠ½ΠΈΠΈ Π΄Π°Π½Π½ΡΡ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ ΡΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° ΡΠ°ΠΊΡΠΎΠ²ΡΠΉ ΡΠΈΠ³Π½Π°Π» Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² Π½ΠΈΠ·ΠΊΠΎΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ. ΠΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ Π½Π° SCL Π΄Π°Π½Π½ΡΠ΅ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ ΡΡΠ°Π±ΠΈΠ»ΡΠ½Ρ. ΠΠ°ΡΡΡΠ΅Π½ΠΈΠ΅ ΡΡΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Π° (setup ΠΈ hold time) ΡΠ°ΡΡΠ΅Π½ΠΈΠ²Π°Π΅ΡΡΡ ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊΠΎΠΌ ΠΊΠ°ΠΊ ΡΡΠ°ΡΡ, ΡΡΠΎΠΏ ΠΈΠ»ΠΈ ΠΎΡΠΈΠ±ΠΊΠ° ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ. ΠΡΠΎ ΡΡΠ½Π΄Π°ΠΌΠ΅Π½ΡΠ°Π»ΡΠ½ΠΎΠ΅ ΠΏΡΠ°Π²ΠΈΠ»ΠΎ, ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΠ°ΡΡΠΎ ΠΈΠ³Π½ΠΎΡΠΈΡΡΡΡ Π½ΠΎΠ²ΠΈΡΠΊΠΈ ΠΏΡΠΈ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈ Π±ΠΈΡΠΎΠ²ΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΉ (bit-banging).
β οΈ ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΏΡΡΠ°ΠΉΡΠ΅ΡΡ ΡΠΏΡΠ°Π²Π»ΡΡΡ Π»ΠΈΠ½ΠΈΠ΅ΠΉ SDA ΠΈΠ»ΠΈ SCL ΠΊΠ°ΠΊ ΠΎΠ±ΡΡΠ½ΡΠΌ Π²ΡΡ ΠΎΠ΄ΠΎΠΌ (Push-Pull) Π±Π΅Π· ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΡ ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΠΉ. ΠΠΎΠΏΡΡΠΊΠ° Π²ΡΡΡΠ°Π²ΠΈΡΡ "1" Π½Π° ΠΎΠ΄Π½ΠΎΠΌ ΡΡΡΡΠΎΠΉΡΡΠ²Π΅ ΠΈ "0" Π½Π° Π΄ΡΡΠ³ΠΎΠΌ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ ΠΎΡΠΊΡΡΡΠΎΠ³ΠΎ ΡΡΠΎΠΊΠ° ΠΏΡΠΈΠ²Π΅Π΄Π΅Ρ ΠΊ ΠΊΠΎΡΠΎΡΠΊΠΎΠΌΡ Π·Π°ΠΌΡΠΊΠ°Π½ΠΈΡ Π²Π½ΡΡΡΠΈ ΠΌΠΈΠΊΡΠΎΡΡ Π΅ΠΌΡ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠΌΡ Π²ΡΠ³ΠΎΡΠ°Π½ΠΈΡ ΠΏΠΎΡΡΠ°.
ΠΠ»Ρ ΠΎΡΠ»Π°Π΄ΠΊΠΈ ΡΠΈΠ³Π½Π°Π»ΠΎΠ² SDA ΠΈ SCL ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΎΡΡΠΈΠ»Π»ΠΎΠ³ΡΠ°Ρ, Π° Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠΉ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡ, ΡΡΠΎΠ±Ρ Π²ΠΈΠ΄Π΅ΡΡ ΡΠ΅Π°Π»ΡΠ½ΡΡ ΡΠΎΡΠΌΡ ΡΡΠΎΠ½ΡΠ° ΠΈ Π½Π°Π»ΠΈΡΠΈΠ΅ Π²ΡΠ±ΡΠΎΡΠΎΠ² Π½Π°ΠΏΡΡΠΆΠ΅Π½ΠΈΡ.
ΠΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ° Open-Drain ΠΈ ΡΠΎΠ»Ρ ΠΏΠΎΠ΄ΡΡΠΆΠΊΠΈ
ΠΠΎΡΠ΅ΠΌΡ ΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΡΡ Π΅ΠΌΠ° Ρ ΠΎΡΠΊΡΡΡΡΠΌ ΡΡΠΎΠΊΠΎΠΌ? ΠΡΠ²Π΅Ρ ΠΊΡΠΎΠ΅ΡΡΡ Π² Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ ΠΌΡΠ»ΡΡΠΈΠΌΠ°ΡΡΠ΅ΡΠ½ΠΎΡΡΠΈ ΠΈ Π°ΡΠ±ΠΈΡΡΠ°ΠΆΠ°. ΠΡΠ»ΠΈ Π±Ρ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π»ΠΈ Π°ΠΊΡΠΈΠ²Π½ΡΡ Π²ΡΠ΄Π°ΡΡ ΡΡΠΎΠ²Π½Π΅ΠΉ (Push-Pull), ΡΠΎ ΡΠΈΡΡΠ°ΡΠΈΡ, ΠΊΠΎΠ³Π΄Π° ΠΎΠ΄ΠΈΠ½ ΡΠ·Π΅Π» Π²ΡΠ΄Π°Π΅Ρ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΡΡ Π΅Π΄ΠΈΠ½ΠΈΡΡ, Π° Π΄ΡΡΠ³ΠΎΠΉ β Π½ΠΎΠ»Ρ, ΠΏΡΠΈΠ²Π΅Π»Π° Π±Ρ ΠΊ ΠΏΡΠΎΡΠ΅ΠΊΠ°Π½ΠΈΡ Π±ΠΎΠ»ΡΡΠΎΠ³ΠΎ ΡΠΎΠΊΠ° ΠΈ ΠΏΠΎΠ²ΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΡ ΠΎΠ±ΠΎΡΡΠ΄ΠΎΠ²Π°Π½ΠΈΡ. Π ΡΡ Π΅ΠΌΠ΅ Open-Drain ΡΡΠ°Π½Π·ΠΈΡΡΠΎΡ Π²ΡΡ ΠΎΠ΄Π° Π»ΠΈΠ±ΠΎ Π·Π°ΠΌΠΊΠ½ΡΡ Π½Π° Π·Π΅ΠΌΠ»Ρ (Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠΉ 0), Π»ΠΈΠ±ΠΎ ΡΠ°Π·ΠΎΠΌΠΊΠ½ΡΡ (Π²ΡΡΠΎΠΊΠΎΠ΅ ΡΠΎΠΏΡΠΎΡΠΈΠ²Π»Π΅Π½ΠΈΠ΅).
Π§ΡΠΎΠ±Ρ Π»ΠΈΠ½ΠΈΡ Π½Π΅ ΠΎΡΡΠ°Π²Π°Π»Π°ΡΡ Π² "Π²ΠΈΡΡΡΠ΅ΠΌ" ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ, ΠΊΠΎΠ³Π΄Π° Π²ΡΠ΅ ΡΡΠ°Π½Π·ΠΈΡΡΠΎΡΡ ΡΠ°Π·ΠΎΠΌΠΊΠ½ΡΡΡ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΠΏΠΎΠ΄ΡΡΠ³ΠΈΠ²Π°ΡΡΠΈΠ΅ ΡΠ΅Π·ΠΈΡΡΠΎΡΡ. ΠΠ½ΠΈ ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡΡ Π»ΠΈΠ½ΠΈΠΈ SDA ΠΈ SCL Ρ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠΌ ΠΏΠΈΡΠ°Π½ΠΈΡ (ΠΎΠ±ΡΡΠ½ΠΎ 3.3Π ΠΈΠ»ΠΈ 5Π). ΠΠΎΠ³Π΄Π° Π²ΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΌΠΎΠ»ΡΠ°Ρ, ΡΠ΅Π·ΠΈΡΡΠΎΡΡ ΡΡΠ½ΡΡ Π½Π°ΠΏΡΡΠΆΠ΅Π½ΠΈΠ΅ Π²Π²Π΅ΡΡ , ΡΠΎΠ·Π΄Π°Π²Π°Ρ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΡΡ Π΅Π΄ΠΈΠ½ΠΈΡΡ. ΠΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ Π»ΡΠ±ΠΎΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ Ρ ΠΎΡΠ΅Ρ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ Π½ΠΎΠ»Ρ, ΠΎΠ½ΠΎ ΠΏΡΠΎΡΡΠΎ ΠΎΡΠΊΡΡΠ²Π°Π΅Ρ ΡΠ²ΠΎΠΉ Π²Π½ΡΡΡΠ΅Π½Π½ΠΈΠΉ ΡΡΠ°Π½Π·ΠΈΡΡΠΎΡ, Π·Π°ΠΊΠΎΡΠ°ΡΠΈΠ²Π°Ρ Π»ΠΈΠ½ΠΈΡ Π½Π° Π·Π΅ΠΌΠ»Ρ.
Π Π°ΡΡΠ΅Ρ Π½ΠΎΠΌΠΈΠ½Π°Π»Π° ΡΠ΅Π·ΠΈΡΡΠΎΡΠ° β ΡΡΠΎ Π±Π°Π»Π°Π½Ρ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΊΠΎΡΠΎΡΡΡΡ ΠΈ ΡΠ½Π΅ΡΠ³ΠΎΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠ΅ΠΌ. Π‘Π»ΠΈΡΠΊΠΎΠΌ Π±ΠΎΠ»ΡΡΠΎΠ΅ ΡΠΎΠΏΡΠΎΡΠΈΠ²Π»Π΅Π½ΠΈΠ΅ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, 10 ΠΊΠΠΌ Π΄Π»Ρ Π²ΡΡΠΎΠΊΠΎΡΠΊΠΎΡΠΎΡΡΠ½ΡΡ ΡΠ΅ΠΆΠΈΠΌΠΎΠ²) ΠΏΡΠΈΠ²Π΅Π΄Π΅Ρ ΠΊ ΠΏΠΎΠ»ΠΎΠ³ΠΈΠΌ ΡΡΠΎΠ½ΡΠ°ΠΌ ΡΠΈΠ³Π½Π°Π»Π°, ΡΡΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠΈΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΡΡ ΡΠ°ΡΡΠΎΡΡ. Π‘Π»ΠΈΡΠΊΠΎΠΌ ΠΌΠ°Π»ΠΎΠ΅ ΡΠΎΠΏΡΠΎΡΠΈΠ²Π»Π΅Π½ΠΈΠ΅ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, 1 ΠΊΠΠΌ) ΡΠ²Π΅Π»ΠΈΡΠΈΡ ΡΠΎΠΊ ΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΡ ΠΈ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΈΡΠΊ, ΡΡΠΎ ΡΠ»Π°Π±ΡΠΉ Π΄ΡΠ°ΠΉΠ²Π΅Ρ Π½Π΅ ΡΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΎΠ΄Π°Π²ΠΈΡΡ Π»ΠΈΠ½ΠΈΡ Π΄ΠΎ ΡΠ²Π΅ΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π½ΡΠ»Ρ.
- π ΠΡΡΠΎΠΊΠΎΠ΅ ΡΠΎΠΏΡΠΎΡΠΈΠ²Π»Π΅Π½ΠΈΠ΅: ΠΠ΅Π΄Π»Π΅Π½Π½ΡΠΉ ΡΠΎΡΡ ΡΡΠΎΠ½ΡΠ°, ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΡΠ°ΡΡΠΎΡΠ΅, Π½ΠΈΠ·ΠΊΠΎΠ΅ ΡΠ½Π΅ΡΠ³ΠΎΠΏΠΎΡΡΠ΅Π±Π»Π΅Π½ΠΈΠ΅.
- β‘ ΠΠΈΠ·ΠΊΠΎΠ΅ ΡΠΎΠΏΡΠΎΡΠΈΠ²Π»Π΅Π½ΠΈΠ΅: ΠΡΡΡΠΎΠΉ ΡΡΠΎΠ½Ρ, Π²ΡΡΠΎΠΊΠ°Ρ ΡΠ°ΡΡΠΎΡΠ°, Π½ΠΎ Π²ΡΡΠΎΠΊΠΈΠΉ ΡΠΎΠΊ ΠΈ ΡΠΈΡΠΊ ΠΏΠ΅ΡΠ΅Π³ΡΡΠ·ΠΊΠΈ Π²ΡΡ ΠΎΠ΄Π°.
- βοΈ ΠΠΏΡΠΈΠΌΠ°Π»ΡΠ½ΡΠΉ Π²ΡΠ±ΠΎΡ: ΠΠ±ΡΡΠ½ΠΎ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ 1.5β4.7 ΠΊΠΠΌ Π΄Π»Ρ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΡ ΡΠΊΠΎΡΠΎΡΡΠ΅ΠΉ ΠΈ 200β500 ΠΠΌ Π΄Π»Ρ Fast Mode+.
- 1 ΠΊΠΠΌ
- 2.2 ΠΊΠΠΌ
- 4.7 ΠΊΠΠΌ
- 10 ΠΊΠΠΌ ΠΈ Π±ΠΎΠ»Π΅Π΅
ΠΡΠΎΡΠΎΠΊΠΎΠ» ΠΎΠ±ΠΌΠ΅Π½Π°: Π‘ΡΠ°ΡΡ, Π‘ΡΠΎΠΏ ΠΈ ΠΠΈΡΡ
ΠΠ΅ΡΠ΅Π΄Π°ΡΠ° Π΄Π°Π½Π½ΡΡ ΠΏΠΎ Π»ΠΈΠ½ΠΈΡΠΌ SDA ΠΈ SCL ΡΡΡΠΎΠ³ΠΎ ΡΠ΅Π³Π»Π°ΠΌΠ΅Π½ΡΠΈΡΠΎΠ²Π°Π½Π°. ΠΠ±ΠΌΠ΅Π½ Π²ΡΠ΅Π³Π΄Π° ΠΈΠ½ΠΈΡΠΈΠΈΡΡΠ΅ΡΡΡ ΠΌΠ°ΡΡΠ΅ΡΠΎΠΌ, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΎΡΠΌΠΈΡΡΠ΅Ρ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ START. ΠΡΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ, ΠΊΠΎΠ³Π΄Π° Π½Π° Π»ΠΈΠ½ΠΈΠΈ Π΄Π°Π½Π½ΡΡ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄ ΠΎΡ Π²ΡΡΠΎΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ ΠΊ Π½ΠΈΠ·ΠΊΠΎΠΌΡ Π² ΡΠΎΡ ΠΌΠΎΠΌΠ΅Π½Ρ, ΠΊΠΎΠ³Π΄Π° Π»ΠΈΠ½ΠΈΡ ΡΠ°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π½Π°Ρ ΠΎΠ΄ΠΈΡΡΡ Π² Π²ΡΡΠΎΠΊΠΎΠΌ ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ. ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ ΡΠΈΠ½Π° ΡΡΠΈΡΠ°Π΅ΡΡΡ Π·Π°Π½ΡΡΠΎΠΉ.
ΠΠ°Π½Π½ΡΠ΅ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΡΡ Π±Π°ΠΉΡΠ°ΠΌΠΈ, ΠΏΡΠΈΡΠ΅ΠΌ ΡΡΠ°ΡΡΠΈΠΉ Π±ΠΈΡ (MSB) ΠΈΠ΄Π΅Ρ ΠΏΠ΅ΡΠ²ΡΠΌ. ΠΠΎΡΠ»Π΅ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π±Π°ΠΉΡΠ° (8 Π±ΠΈΡ) ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡΠ°Ρ ΡΡΠΎΡΠΎΠ½Π° Π΄ΠΎΠ»ΠΆΠ½Π° ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠ΄ΠΈΡΡ ΡΡΠΏΠ΅ΡΠ½ΡΠΉ ΠΏΡΠΈΠ΅ΠΌ. ΠΡΠΎ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΠ΅, Π½Π°Π·ΡΠ²Π°Π΅ΠΌΠΎΠ΅ ACK (Acknowledge), ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΎΠ±ΠΎΠΉ Π΄Π΅Π²ΡΡΡΠΉ ΡΠ°ΠΊΡΠΎΠ²ΡΠΉ ΠΈΠΌΠΏΡΠ»ΡΡ, Π²ΠΎ Π²ΡΠ΅ΠΌΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎζ₯ζΆΠ½ΠΈΠΊ ΠΏΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΎΠΏΡΡΠΊΠ°Π΅Ρ Π»ΠΈΠ½ΠΈΡ SDA Π² Π½ΠΎΠ»Ρ. ΠΡΠ»ΠΈ ΠΏΡΠΈΠ΅ΠΌΠ½ΠΈΠΊ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ½ΡΡΡ Π΄Π°Π½Π½ΡΠ΅, ΠΎΠ½ ΠΎΡΡΠ°Π²Π»ΡΠ΅Ρ Π»ΠΈΠ½ΠΈΡ SDA Π² Π΅Π΄ΠΈΠ½ΠΈΡΠ΅ (NACK).
ΠΠ°Π²Π΅ΡΡΠ°Π΅ΡΡΡ ΡΠ΅Π°Π½Ρ ΡΠ²ΡΠ·ΠΈ ΡΡΠ»ΠΎΠ²ΠΈΠ΅ΠΌ STOP. ΠΠ½ΠΎ ΡΠΎΡΠΌΠΈΡΡΠ΅ΡΡΡ ΠΌΠ°ΡΡΠ΅ΡΠΎΠΌ ΠΏΡΡΠ΅ΠΌ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π° Π»ΠΈΠ½ΠΈΠΈ SDA ΠΎΡ Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ ΡΡΠΎΠ²Π½Ρ ΠΊ Π²ΡΡΠΎΠΊΠΎΠΌΡ ΠΏΡΠΈ Π²ΡΡΠΎΠΊΠΎΠΌ ΡΡΠΎΠ²Π½Π΅ Π½Π° Π»ΠΈΠ½ΠΈΠΈ SCL. ΠΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ ΡΠΈΠ½Π° ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Π΅ΡΡΡ, ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ ΠΌΠ°ΡΡΠ΅ΡΠ° (Π΅ΡΠ»ΠΈ ΠΎΠ½ΠΈ Π΅ΡΡΡ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅) ΠΌΠΎΠ³ΡΡ ΠΏΠΎΠΏΡΡΠ°ΡΡΡΡ Π·Π°Ρ Π²Π°ΡΠΈΡΡ Π΅Ρ Π΄Π»Ρ ΡΠ²ΠΎΠ΅ΠΉ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ.
// ΠΡΠ΅Π²Π΄ΠΎΠΊΠΎΠ΄ ΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΡΠ»ΠΎΠ²ΠΈΡ START
void I2C_Start() {
SDA_HIGH(); // ΠΡΠΏΡΡΠΊΠ°Π΅ΠΌ Π»ΠΈΠ½ΠΈΡ Π΄Π°Π½Π½ΡΡ
SCL_HIGH(); // ΠΡΠΏΡΡΠΊΠ°Π΅ΠΌ Π»ΠΈΠ½ΠΈΡ ΡΠ°ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ
delay_us(5); // ΠΠ΄Π΅ΠΌ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΡΡΠΎΠ²Π½Ρ
SDA_LOW(); // Π€ΠΎΡΠΌΠΈΡΡΠ΅ΠΌ START: SDA ΠΏΠ°Π΄Π°Π΅Ρ ΠΏΠΎΠΊΠ° SCL = 1
delay_us(5);
SCL_LOW(); // ΠΠ°Ρ
Π²Π°ΡΡΠ²Π°Π΅ΠΌ ΡΠΈΠ½Ρ
}
ΠΠ΄ΡΠ΅ΡΠ°ΡΠΈΡ ΠΈ ΡΠ΅ΠΆΠΈΠΌΡ ΡΠΊΠΎΡΠΎΡΡΠΈ
ΠΠ°ΠΆΠ΄ΠΎΠ΅ Π²Π΅Π΄ΠΎΠΌΠΎΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ Π½Π° ΡΠΈΠ½Π΅ I2C ΠΈΠΌΠ΅Π΅Ρ ΡΠ½ΠΈΠΊΠ°Π»ΡΠ½ΡΠΉ 7-Π±ΠΈΡΠ½ΡΠΉ ΠΈΠ»ΠΈ 10-Π±ΠΈΡΠ½ΡΠΉ Π°Π΄ΡΠ΅Ρ. Π ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎΠΌ 7-Π±ΠΈΡΠ½ΠΎΠΌ ΡΠ΅ΠΆΠΈΠΌΠ΅ ΠΌΠ°ΡΡΠ΅Ρ ΡΠ½Π°ΡΠ°Π»Π° ΠΏΠ΅ΡΠ΅Π΄Π°Π΅Ρ 7 Π±ΠΈΡ Π°Π΄ΡΠ΅ΡΠ°, Π·Π° ΠΊΠΎΡΠΎΡΡΠΌΠΈ ΡΠ»Π΅Π΄ΡΠ΅Ρ Π±ΠΈΡ Π½Π°ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΡΠ΅Π½ΠΈΡ/Π·Π°ΠΏΠΈΡΠΈ (R/W). Π’ΠΎΠ»ΡΠΊΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ Ρ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡΡΠΈΠΌ Π°Π΄ΡΠ΅ΡΠΎΠΌ ΠΎΡΠ·ΠΎΠ²Π΅ΡΡΡ ΡΠΈΠ³Π½Π°Π»ΠΎΠΌ ACK. ΠΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΡΡ Π΄ΠΎ 127 ΡΡΡΡΠΎΠΉΡΡΠ² Π½Π° ΠΎΠ΄Π½Ρ ΠΏΠ°ΡΡ ΠΏΡΠΎΠ²ΠΎΠ΄ΠΎΠ², Ρ ΠΎΡΡ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ ΠΈΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½ΠΎ Π΅ΠΌΠΊΠΎΡΡΡΡ ΡΠΈΠ½Ρ.
Π‘ΠΏΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ I2C ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΠΆΠΈΠΌΠΎΠ² ΡΠΊΠΎΡΠΎΡΡΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π°ΠΏΡΡΠΌΡΡ Π²Π»ΠΈΡΡΡ Π½Π° ΡΡΠ΅Π±ΠΎΠ²Π°Π½ΠΈΡ ΠΊ ΠΏΠΎΠ΄ΡΡΠ³ΠΈΠ²Π°ΡΡΠΈΠΌ ΡΠ΅Π·ΠΈΡΡΠΎΡΠ°ΠΌ ΠΈ ΠΊΠ°ΡΠ΅ΡΡΠ²Ρ ΡΡΠ°ΡΡΠΈΡΠΎΠ²ΠΊΠΈ:
- π’ Standard-mode (Sm): Π΄ΠΎ 100 ΠΊΠ±ΠΈΡ/Ρ. ΠΠ°Π·ΠΎΠ²ΡΠΉ ΡΠ΅ΠΆΠΈΠΌ, Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡΠΉ ΠΈ ΡΡΡΠΎΠΉΡΠΈΠ²ΡΠΉ ΠΊ ΠΏΠΎΠΌΠ΅Ρ Π°ΠΌ.
- π Fast-mode (Fm): Π΄ΠΎ 400 ΠΊΠ±ΠΈΡ/Ρ. Π‘Π°ΠΌΡΠΉ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½ΡΠΉ ΡΠ΅ΠΆΠΈΠΌ Π΄Π»Ρ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΡΠ΅Π½ΡΠΎΡΠΎΠ² ΠΈ Π΄ΠΈΡΠΏΠ»Π΅Π΅Π².
- β‘ Fast-mode Plus (Fm+): Π΄ΠΎ 1 ΠΠ±ΠΈΡ/Ρ. Π’ΡΠ΅Π±ΡΠ΅Ρ Π±ΠΎΠ»Π΅Π΅ ΡΡΠ°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠ°ΡΡΠ΅ΡΠ° ΡΠ΅Π·ΠΈΡΡΠΎΡΠΎΠ² ΠΈ ΠΊΠΎΡΠΎΡΠΊΠΈΡ Π»ΠΈΠ½ΠΈΠΉ.
- π₯ High-speed mode (Hs): Π΄ΠΎ 3.4 ΠΠ±ΠΈΡ/Ρ. ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ ΠΊΠΎΠ΄ΠΎΠ²ΡΠ΅ ΡΠ»ΠΎΠ²Π° ΠΈ ΡΡΠ΅Π±ΡΠ΅Ρ ΠΎΡΠ΄Π΅Π»ΡΠ½ΠΎΠ³ΠΎ Π°ΡΠ±ΠΈΡΡΠ°ΠΆΠ°.
ΠΡΠΈ ΠΏΠ΅ΡΠ΅Ρ ΠΎΠ΄Π΅ Π½Π° Π²ΡΡΠΎΠΊΠΈΠ΅ ΡΠΊΠΎΡΠΎΡΡΠΈ (Π²ΡΡΠ΅ 400 ΠΊΠΡ) Π²ΡΠ΅ΠΌΡ Π½Π°ΡΠ°ΡΡΠ°Π½ΠΈΡ ΡΠΈΠ³Π½Π°Π»Π° ΡΡΠ°Π½ΠΎΠ²ΠΈΡΡΡ ΠΊΡΠΈΡΠΈΡΠ΅ΡΠΊΠΈΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ. ΠΠ»ΠΈΠ½Π½ΡΠ΅ ΠΏΡΠΎΠ²ΠΎΠ΄Π° ΠΈ Π±ΠΎΠ»ΡΡΠ°Ρ ΠΏΠ°ΡΠ°Π·ΠΈΡΠ½Π°Ρ Π΅ΠΌΠΊΠΎΡΡΡ ΠΌΠΎΠ³ΡΡ "ΡΠΌΠ°Π·Π°ΡΡ" ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΡΠ΅ ΠΈΠΌΠΏΡΠ»ΡΡΡ Π² ΡΠΈΠ½ΡΡΠΎΠΈΠ΄Ρ, ΡΡΠΎ ΠΏΡΠΈΠ²Π΅Π΄Π΅Ρ ΠΊ ΠΎΡΠΈΠ±ΠΊΠ°ΠΌ ΡΡΠ΅Π½ΠΈΡ. Π ΡΠ°ΠΊΠΈΡ ΡΠ»ΡΡΠ°ΡΡ ΡΠ°ΡΡΠΎ ΠΏΡΠΈΡ ΠΎΠ΄ΠΈΡΡΡ ΡΠ½ΠΈΠΆΠ°ΡΡ Π½ΠΎΠΌΠΈΠ½Π°Π» ΠΏΠΎΠ΄ΡΡΠ³ΠΈΠ²Π°ΡΡΠΈΡ ΡΠ΅Π·ΠΈΡΡΠΎΡΠΎΠ² ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΡΠ΅ Π±ΡΡΠ΅ΡΡ ΡΠΈΠ½Ρ.
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Clock Stretching?
ΠΡΠΎ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ Π²Π΅Π΄ΠΎΠΌΠΎΠΌΡ ΡΡΡΡΠΎΠΉΡΡΠ²Ρ ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ. ΠΡΠ»ΠΈ Slave Π½Π΅ Π³ΠΎΡΠΎΠ² ΠΎΡΠ΄Π°ΡΡ Π΄Π°Π½Π½ΡΠ΅, ΠΎΠ½ Π΄Π΅ΡΠΆΠΈΡ Π»ΠΈΠ½ΠΈΡ SCL Π² Π½ΠΈΠ·ΠΊΠΎΠΌ ΡΡΠΎΠ²Π½Π΅, Π·Π°ΡΡΠ°Π²Π»ΡΡ Master ΠΆΠ΄Π°ΡΡ. Master Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π½Π°ΡΠ°ΡΡ Π½ΠΎΠ²ΡΠΉ ΡΠ°ΠΊΡ, ΠΏΠΎΠΊΠ° SCL Π½Π΅ ΠΎΡΠΏΡΡΡΠΈΡ Π²Π΅Π΄ΠΎΠΌΡΠΉ.
Π’ΠΈΠΏΠΈΡΠ½ΡΠ΅ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΠΈ Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΠΊΠ°
ΠΠ΅ΡΠΌΠΎΡΡΡ Π½Π° ΠΏΡΠΎΡΡΠΎΡΡ ΠΊΠΎΠ½ΡΠ΅ΠΏΡΠΈΠΈ, ΠΎΡΠ»Π°Π΄ΠΊΠ° I2C ΡΠ°ΡΡΠΎ ΠΏΡΠ΅Π²ΡΠ°ΡΠ°Π΅ΡΡΡ Π² Π³ΠΎΠ»ΠΎΠ²Π½ΡΡ Π±ΠΎΠ»Ρ. Π‘Π°ΠΌΠ°Ρ ΡΠ°ΡΠΏΡΠΎΡΡΡΠ°Π½Π΅Π½Π½Π°Ρ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ° β ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ ACK. ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΎΠ·Π½Π°ΡΠ°ΡΡ, ΡΡΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ Π½Π΅ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΎ, ΠΈΠΌΠ΅Π΅Ρ Π½Π΅Π²Π΅ΡΠ½ΡΠΉ Π°Π΄ΡΠ΅Ρ, Π»ΠΈΠ±ΠΎ Π»ΠΈΠ½ΠΈΠΈ SDA/SCL ΠΏΠ΅ΡΠ΅ΠΏΡΡΠ°Π½Ρ ΠΌΠ΅ΡΡΠ°ΠΌΠΈ. Π’Π°ΠΊΠΆΠ΅ ΡΠ°ΡΡΠΎΠΉ ΠΏΡΠΈΡΠΈΠ½ΠΎΠΉ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ ΠΏΠΎΠ΄ΡΡΠΆΠΊΠΈ ΠΈΠ»ΠΈ ΡΠ»ΠΈΡΠΊΠΎΠΌ Π²ΡΡΠΎΠΊΠΎΠ΅ ΡΠΎΠΏΡΠΎΡΠΈΠ²Π»Π΅Π½ΠΈΠ΅ ΡΠ΅Π·ΠΈΡΡΠΎΡΠΎΠ².
ΠΡΡΠ³ΠΎΠΉ ΡΡΠ΅Π½Π°ΡΠΈΠΉ β "Π·Π°Π²ΠΈΡΠ°Π½ΠΈΠ΅" ΡΠΈΠ½Ρ. ΠΡΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ, ΠΊΠΎΠ³Π΄Π° Π²Π΅Π΄ΠΎΠΌΠΎΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ Π·Π°ΡΡΡΠ΅Π²Π°Π΅Ρ Π² ΡΠΎΡΡΠΎΡΠ½ΠΈΠΈ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ ΠΈ ΡΠ΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ Π»ΠΈΠ½ΠΈΡ SDA Π² Π½ΠΈΠ·ΠΊΠΎΠΌ ΡΡΠΎΠ²Π½Π΅, Π±Π»ΠΎΠΊΠΈΡΡΡ Π²Π΅ΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ. Π ΡΠ°ΠΊΠΈΡ ΡΠ»ΡΡΠ°ΡΡ ΠΌΠ°ΡΡΠ΅ΡΡ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΡΡΠ΅Π±ΠΎΠ²Π°ΡΡΡΡ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΏΡΠΎΡΠ΅Π΄ΡΡΡ Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΡΠΈΠ½Ρ, Π²ΡΠ΄Π°Π² Π΄ΠΎ 9 ΡΠ°ΠΊΡΠΎΠ²ΡΡ ΠΈΠΌΠΏΡΠ»ΡΡΠΎΠ² Π½Π° SCL, ΡΡΠΎΠ±Ρ Π·Π°ΡΡΠ°Π²ΠΈΡΡ Slave Π·Π°Π²Π΅ΡΡΠΈΡΡ ΡΠ΅ΠΊΡΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ.
ΠΠ»Ρ Π΄ΠΈΠ°Π³Π½ΠΎΡΡΠΈΠΊΠΈ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΎΡΡΠΈΠ»Π»ΠΎΠ³ΡΠ°Ρ. ΠΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠΉ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡ ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ ΡΠΎΠ»ΡΠΊΠΎ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΡΠΎΠ²Π½ΠΈ, Π½ΠΎ Π½Π΅ ΡΠ°ΡΡΠΊΠ°ΠΆΠ΅Ρ ΠΎ ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠΈΠ³Π½Π°Π»Π°. ΠΠ° ΠΎΡΡΠΈΠ»Π»ΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ Π²Ρ Π΄ΠΎΠ»ΠΆΠ½Ρ Π²ΠΈΠ΄Π΅ΡΡ ΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΡΡΠΌΠΎΡΠ³ΠΎΠ»ΡΠ½ΡΠ΅ ΠΈΠΌΠΏΡΠ»ΡΡΡ Ρ Π±ΡΡΡΡΡΠΌΠΈ ΡΡΠΎΠ½ΡΠ°ΠΌΠΈ. ΠΡΠ»ΠΈ Π²Ρ Π²ΠΈΠ΄ΠΈΡΠ΅ Π·Π°Π²Π°Π»Π΅Π½Π½ΡΠ΅ Π²Π΅ΡΡΠΈΠ½Ρ ΠΈΠ»ΠΈ Π΄ΠΎΠ»Π³ΠΈΠ΅ ΡΡΠΎΠ½ΡΡ β ΡΡΠΎ ΠΏΡΡΠΌΠ°Ρ Π΄ΠΎΡΠΎΠ³Π° ΠΊ Π½Π΅ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΠ΅.
βοΈ ΠΠΈΠ°Π³Π½ΠΎΡΡΠΈΠΊΠ° ΠΏΡΠΎΠ±Π»Π΅ΠΌ I2C
Π‘ΡΠ°Π²Π½Π΅Π½ΠΈΠ΅ Ρ Π°ΡΠ°ΠΊΡΠ΅ΡΠΈΡΡΠΈΠΊ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ²
Π§ΡΠΎΠ±Ρ Π»ΡΡΡΠ΅ ΠΏΠΎΠ½ΡΡΡ ΠΌΠ΅ΡΡΠΎ I2C Π² ΡΠΊΠΎΡΠΈΡΡΠ΅ΠΌΠ΅ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ², ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΡΡΠ°Π²Π½ΠΈΡΡ Π΅Π³ΠΎ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠΌΠΈ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π°ΠΌΠΈ, ΡΠ°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ SPI ΠΈ UART. ΠΠ°ΠΆΠ΄ΡΠΉ ΠΈΠ· Π½ΠΈΡ ΠΈΠΌΠ΅Π΅Ρ ΡΠ²ΠΎΠΈ ΠΏΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²Π° ΠΈ Π½Π΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΠΈΠ΅ ΠΎΠ±Π»Π°ΡΡΡ ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ.
| ΠΠ°ΡΠ°ΠΌΠ΅ΡΡ | I2C (SDA/SCL) | SPI | UART |
|---|---|---|---|
| ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π»ΠΈΠ½ΠΈΠΉ | 2 (ΠΏΠ»ΡΡ GND) | 3 + N (CS Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ) | 2 (TX/RX) |
| Π’ΠΎΠΏΠΎΠ»ΠΎΠ³ΠΈΡ | ΠΡΠ»ΡΡΠΈΠΌΠ°ΡΡΠ΅Ρ, ΠΠ½ΠΎΠ³ΠΎΡΠΎΡΠ΅ΡΠ½Π°Ρ | ΠΠ΄ΠΈΠ½ ΠΌΠ°ΡΡΠ΅Ρ, ΠΠ½ΠΎΠ³ΠΎΡΠΎΡΠ΅ΡΠ½Π°Ρ (ΡΠ΅ΡΠ΅Π· CS) | Π’ΠΎΡΠΊΠ°-ΡΠΎΡΠΊΠ° |
| Π‘ΠΊΠΎΡΠΎΡΡΡ | Π΄ΠΎ 3.4 ΠΠ±ΠΈΡ/Ρ | Π΄ΠΎ 50+ ΠΠ±ΠΈΡ/Ρ | Π΄ΠΎ 2-3 ΠΠ±ΠΈΡ/Ρ |
| ΠΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΠ΅ (ACK) | ΠΡΡΡ (Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΠΎΠ΅) | ΠΠ΅Ρ (Π½Π° ΡΡΠΎΠ²Π½Π΅ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π°) | ΠΠ΅Ρ (ΡΡΠ΅Π±ΡΠ΅ΡΡΡ ΠΠ) |
ΠΠ°ΠΊ Π²ΠΈΠ΄Π½ΠΎ ΠΈΠ· ΡΠ°Π±Π»ΠΈΡΡ, I2C Π²ΡΠΈΠ³ΡΡΠ²Π°Π΅Ρ Π² ΡΠΊΠΎΠ½ΠΎΠΌΠΈΠΈ Π²ΡΠ²ΠΎΠ΄ΠΎΠ² ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ° ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° ΡΡΡΡΠΎΠΉΡΡΠ² Π±Π΅Π· Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΡ Π»ΠΈΠ½ΠΈΠΉ Π²ΡΠ±ΠΎΡΠ°. ΠΠ΄Π½Π°ΠΊΠΎ, Π΅ΡΠ»ΠΈ Π²Π°ΠΌ Π½ΡΠΆΠ½Π° Π²ΡΡΠΎΠΊΠ°Ρ ΡΠΊΠΎΡΠΎΡΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ Π±ΠΎΠ»ΡΡΠΈΡ ΠΎΠ±ΡΠ΅ΠΌΠΎΠ² Π΄Π°Π½Π½ΡΡ , SPI Π±ΡΠ΄Π΅Ρ Π±Π΅Π·Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΠΌ Π»ΠΈΠ΄Π΅ΡΠΎΠΌ. UART ΠΆΠ΅ ΠΎΡΡΠ°Π΅ΡΡΡ ΠΊΠΎΡΠΎΠ»Π΅ΠΌ ΠΏΡΠΎΡΡΠΎΠΉ Π΄Π²ΡΡΡΠΎΡΠΎΠ½Π½Π΅ΠΉ ΡΠ²ΡΠ·ΠΈ ΠΌΠ΅ΠΆΠ΄Ρ Π΄Π²ΡΠΌΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°ΠΌΠΈ.
ΠΡΠ±ΠΎΡ ΠΌΠ΅ΠΆΠ΄Ρ I2C, SPI ΠΈ UART Π·Π°Π²ΠΈΡΠΈΡ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΡ ΡΠΊΠΎΡΠΎΡΡΠΈ, Π½ΠΎ ΠΈ ΠΎΡ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° Π΄ΠΎΡΡΡΠΏΠ½ΡΡ ΠΏΠΈΠ½ΠΎΠ² ΠΈ ΡΠΎΠΏΠΎΠ»ΠΎΠ³ΠΈΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΡΡΡΡΠΎΠΉΡΡΠ² Π² Π²Π°ΡΠ΅ΠΉ ΡΠΈΡΡΠ΅ΠΌΠ΅.
ΠΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΠΈ ΠΏΠΎ ΠΌΠΎΠ½ΡΠ°ΠΆΡ
ΠΡΠΈ ΡΠ°Π·Π²ΠΎΠ΄ΠΊΠ΅ ΠΏΠ΅ΡΠ°ΡΠ½ΠΎΠΉ ΠΏΠ»Π°ΡΡ ΡΡΠ°ΡΠ°ΠΉΡΠ΅ΡΡ Π΄Π΅Π»Π°ΡΡ Π»ΠΈΠ½ΠΈΠΈ SDA ΠΈ SCL ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ ΠΊΠΎΡΠΎΡΠΊΠΈΠΌΠΈ. ΠΠ·Π±Π΅Π³Π°ΠΉΡΠ΅ ΠΏΡΠΎΠΊΠ»Π°Π΄ΠΊΠΈ ΡΡΠΈΡ ΡΡΠ°ΡΡ ΠΏΠ°ΡΠ°Π»Π»Π΅Π»ΡΠ½ΠΎ Π²ΡΡΠΎΠΊΠΎΡΠ°ΡΡΠΎΡΠ½ΡΠΌ ΡΠΈΠ³Π½Π°Π»Π°ΠΌ ΠΈΠ»ΠΈ Π»ΠΈΠ½ΠΈΡΠΌ ΠΏΠΈΡΠ°Π½ΠΈΡ, ΡΡΠΎΠ±Ρ ΠΌΠΈΠ½ΠΈΠΌΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΏΠ΅ΡΠ΅ΠΊΡΠ΅ΡΡΠ½ΡΠ΅ Π½Π°Π²ΠΎΠ΄ΠΊΠΈ. ΠΡΠ»ΠΈ Π΄Π»ΠΈΠ½Π° Π»ΠΈΠ½ΠΈΠΉ ΠΏΡΠ΅Π²ΡΡΠ°Π΅Ρ 20-30 ΡΠΌ, ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎθθΡΠΉΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π±ΡΡΠ΅ΡΠΎΠ² ΡΠΈΠ½Ρ ΠΈΠ»ΠΈ ΡΠΌΠ΅Π½ΡΡΠ΅Π½ΠΈΠ΅ ΡΠΎΠΏΡΠΎΡΠΈΠ²Π»Π΅Π½ΠΈΡ ΠΏΠΎΠ΄ΡΡΠΆΠΊΠΈ.
Π’Π°ΠΊΠΆΠ΅ Π²Π°ΠΆΠ½ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΡΡ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠ΅ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ Π·Π΅ΠΌΠ»ΠΈ (GND) ΠΌΠ΅ΠΆΠ΄Ρ Π²ΡΠ΅ΠΌΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π°ΠΌΠΈ. Π Π°Π·Π½ΠΈΡΠ° ΠΏΠΎΡΠ΅Π½ΡΠΈΠ°Π»ΠΎΠ² Π·Π΅ΠΌΠ»ΠΈ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ ΡΠΎΠΌΡ, ΡΡΠΎ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΡΠΎΠ²Π½ΠΈ Π±ΡΠ΄ΡΡ Π²ΠΎΡΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡΡΡ Π½Π΅Π²Π΅ΡΠ½ΠΎ, ΡΡΠΎ Π²ΡΠ·ΠΎΠ²Π΅Ρ Ρ Π°ΠΎΡΠΈΡΠ½ΡΠ΅ ΠΎΡΠΈΠ±ΠΊΠΈ ΡΠ²ΡΠ·ΠΈ. Π ΡΡΠΌΠ½ΡΡ ΠΏΡΠΎΠΌΡΡΠ»Π΅Π½Π½ΡΡ ΡΡΠ»ΠΎΠ²ΠΈΡΡ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΡΡΠ΅Π±ΠΎΠ²Π°ΡΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈΠ·ΠΎΠ»ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ I2C-ΠΏΠΎΠ²ΡΠΎΡΠΈΡΠ΅Π»Π΅ΠΉ.
ΠΡΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ Ρ ΡΠ°Π·Π½ΡΠΌ Π½Π°ΠΏΡΡΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΠΈΡΠ°Π½ΠΈΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, 3.3Π ΠΈ 5Π) Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΎΠ³Π»Π°ΡΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΡΡΠΎΠ²Π½Π΅ΠΉ. Π₯ΠΎΡΡ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ ΡΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΡ ΠΈΠΌΠ΅ΡΡ ΡΠΎΠ»Π΅ΡΠ°Π½ΡΠ½ΡΠ΅ Π²Ρ ΠΎΠ΄Ρ (5V tolerant), ΠΏΠΎΠ»Π°Π³Π°ΡΡΡΡ Π½Π° ΡΡΠΎ Π±Π΅Π· ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Ρ β ΡΠΈΡΠΊΠΎΠ²Π°Π½Π½Π°Ρ ΡΡΡΠ°ΡΠ΅Π³ΠΈΡ.
β οΈ ΠΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅: ΠΡΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ ΡΡΡΡΠΎΠΉΡΡΠ² Ρ ΡΠ°Π·Π½ΡΠΌ Π½Π°ΠΏΡΡΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΏΠΈΡΠ°Π½ΠΈΡ (Vcc) ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ ΠΈΡ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΡΡΠΎΠ²Π½ΠΈ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡ. ΠΠΎΠ΄Π°ΡΠ° 5Π Π½Π° Π²Ρ ΠΎΠ΄ 3.3Π ΠΌΠΈΠΊΡΠΎΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅ΡΠ° Π±Π΅Π· ΡΠΎΠ³Π»Π°ΡΡΡΡΠ΅ΠΉ ΡΡ Π΅ΠΌΡ Π³Π°ΡΠ°Π½ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎ Π²ΡΠ²Π΅Π΄Π΅Ρ ΠΏΠΎΡΡ ΠΈΠ· ΡΡΡΠΎΡ.
ΠΠ°ΠΊ Π½Π°ΠΉΡΠΈ Π°Π΄ΡΠ΅Ρ ΡΡΡΡΠΎΠΉΡΡΠ²Π° Π½Π° ΡΠΈΠ½Π΅ I2C, Π΅ΡΠ»ΠΈ Ρ Π½Π΅ Π·Π½Π°Ρ Π΅Π³ΠΎ?
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΏΠΎΡΠΎΠ±ΠΎΠ². ΠΠ΅ΡΠ²ΡΠΉ β Π½Π°ΠΉΡΠΈ Π΄Π°ΡΠ°ΡΠΈΡ Π½Π° ΠΌΠΈΠΊΡΠΎΡΠ΅Π½ΡΠΎΡ. ΠΡΠΎΡΠΎΠΉ β ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠΊΠ°Π½Π΅Ρ ΡΠΈΠ½Ρ I2C. ΠΡΠΎ Π½Π΅Π±ΠΎΠ»ΡΡΠ°Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π΄Π»Ρ Arduino ΠΈΠ»ΠΈ ESP, ΠΊΠΎΡΠΎΡΠ°Ρ ΠΏΠ΅ΡΠ΅Π±ΠΈΡΠ°Π΅Ρ Π²ΡΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠ΅ Π°Π΄ΡΠ΅ΡΠ° ΠΎΡ 1 Π΄ΠΎ 127 ΠΈ Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΡΠ΅, ΠΎΡ ΠΊΠΎΡΠΎΡΡΡ ΠΏΡΠΈΡΠ΅Π» ΠΎΡΠ²Π΅Ρ ACK. Π’ΡΠ΅ΡΠΈΠΉ ΡΠΏΠΎΡΠΎΠ± β ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠΉ Π°Π½Π°Π»ΠΈΠ·Π°ΡΠΎΡ ΠΈ ΡΡΠΈΡΠ°ΡΡ Π°Π΄ΡΠ΅Ρ ΠΈΠ· Π½Π°ΡΠ°Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΠ°ΠΊΠ΅ΡΠ° ΠΏΡΠΈ ΡΡΠ°ΡΡΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ, Π΅ΡΠ»ΠΈ ΠΌΠ°ΡΡΠ΅Ρ ΡΠΆΠ΅ Π½Π°ΡΡΡΠΎΠ΅Π½.
ΠΠΎΠΆΠ½ΠΎ Π»ΠΈ ΡΠΎΠ΅Π΄ΠΈΠ½ΠΈΡΡ Π΄Π²Π° ΠΌΠ°ΡΡΠ΅ΡΠ° I2C Π²ΠΌΠ΅ΡΡΠ΅?
ΠΠ°, Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ° I2C ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΌΡΠ»ΡΡΠΈΠΌΠ°ΡΡΠ΅ΡΠ½ΠΎΡΡΡ. ΠΠ΄Π½Π°ΠΊΠΎ Π΄Π»Ρ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ Π°ΡΠ±ΠΈΡΡΠ°ΠΆΠ°. ΠΡΠ»ΠΈ Π΄Π²Π° ΠΌΠ°ΡΡΠ΅ΡΠ° Π½Π°ΡΠΈΠ½Π°ΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ, ΡΠΎΡ, ΠΊΡΠΎ Π²ΡΠ΄Π°Π΅Ρ "0" Π² Π±ΠΈΡ, Π³Π΄Π΅ Π΄ΡΡΠ³ΠΎΠΉ Π²ΡΠ΄Π°Π΅Ρ "1", ΠΏΡΠΎΠΈΠ³ΡΡΠ²Π°Π΅Ρ Π°ΡΠ±ΠΈΡΡΠ°ΠΆ (ΡΠ°ΠΊ ΠΊΠ°ΠΊ "0" ΠΏΠΎΠ±Π΅ΠΆΠ΄Π°Π΅Ρ Π½Π° ΡΠΈΠ½Π΅) ΠΈ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡΠ΅ΠΊΡΠ°ΡΠΈΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ, ΠΏΠ΅ΡΠ΅ΠΉΠ΄Ρ Π² ΡΠ΅ΠΆΠΈΠΌ ΠΏΡΠΎΡΠ»ΡΡΠΈΠ²Π°Π½ΠΈΡ. ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½Π°Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΡΡΠΎΠ³ΠΎ ΡΠ»ΠΎΠΆΠ½Π°, ΠΎΠ±ΡΡΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½Π°Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π² ΠΠ.
ΠΠΎΡΠ΅ΠΌΡ ΠΌΠΎΠΉ I2C ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π΅ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎ ΠΏΡΠΈ Π½Π°Π³ΡΠ΅Π²Π΅?
Π’Π΅ΠΌΠΏΠ΅ΡΠ°ΡΡΡΠ° Π²Π»ΠΈΡΠ΅Ρ Π½Π° ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΏΠΎΠ»ΡΠΏΡΠΎΠ²ΠΎΠ΄Π½ΠΈΠΊΠΎΠ² ΠΈ ΡΠΎΠΏΡΠΎΡΠΈΠ²Π»Π΅Π½ΠΈΠ΅ Π΄ΠΎΡΠΎΠΆΠ΅ΠΊ. ΠΡΠΈ Π½Π°Π³ΡΠ΅Π²Π΅ ΠΌΠΎΠΆΠ΅Ρ ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°ΡΡΡΡ ΡΠΎΠΊ ΡΡΠ΅ΡΠΊΠΈ, ΡΡΠΎ Π² ΡΠΎΡΠ΅ΡΠ°Π½ΠΈΠΈ Ρ Π²ΡΡΠΎΠΊΠΈΠΌ Π½ΠΎΠΌΠΈΠ½Π°Π»ΠΎΠΌ ΠΏΠΎΠ΄ΡΡΠ³ΠΈΠ²Π°ΡΡΠΈΡ ΡΠ΅Π·ΠΈΡΡΠΎΡΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡΡ Π»ΠΈΠ½ΠΈΠΈ Π΄ΠΎΡΡΠΈΡΡ ΡΠ²Π΅ΡΠ΅Π½Π½ΠΎΠ³ΠΎ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ Π½ΡΠ»Ρ. Π’Π°ΠΊΠΆΠ΅ ΡΠ΅ΠΏΠ»ΠΎΠ²ΠΎΠ΅ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΡΡ ΡΠ΄ΡΠ°ΡΡ ΠΊΠΎΠ½ΡΠ°ΠΊΡ Π² ΡΠ°Π·ΡΠ΅ΠΌΠ°Ρ . ΠΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ ΡΠΌΠ΅Π½ΡΡΠΈΡΡ Π½ΠΎΠΌΠΈΠ½Π°Π» ΠΏΠΎΠ΄ΡΡΠΆΠΊΠΈ.
Π§ΡΠΎ Π΄Π΅Π»Π°ΡΡ, Π΅ΡΠ»ΠΈ SDA Π·Π°ΡΡΡΡΠ» Π² Π½ΠΈΠ·ΠΊΠΎΠΌ ΡΡΠΎΠ²Π½Π΅?
ΠΡΠΎ ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠ»ΡΡΠ°ΠΉ Π·Π°Π²ΠΈΡΠ°Π½ΠΈΡ ΡΠΈΠ½Ρ. ΠΠΎΠΏΡΠΎΠ±ΡΠΉΡΠ΅ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΡΠΉ ΡΠ±ΡΠΎΡ: Π²ΡΠ΄Π°ΠΉΡΠ΅ 9 ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΡΠ°ΠΊΡΠΎΠ²ΡΡ ΠΈΠΌΠΏΡΠ»ΡΡΠΎΠ² Π½Π° Π»ΠΈΠ½ΠΈΡ SCL (Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ Π²ΡΡ ΠΎΠ΄Π°), ΠΈΠ³Π½ΠΎΡΠΈΡΡΡ SDA. ΠΡΠΎ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π·Π°ΡΡΠ°Π²ΠΈΡΡ Π²Π΅Π΄ΠΎΠΌΠΎΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ Π·Π°Π²Π΅ΡΡΠΈΡΡ ΡΠ΅ΠΊΡΡΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ ΠΈ ΠΎΡΠΏΡΡΡΠΈΡΡ Π»ΠΈΠ½ΠΈΡ. ΠΡΠ»ΠΈ Π½Π΅ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ β ΠΊΡΠ°ΡΠΊΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΠΎΡΠΊΠ»ΡΡΠΈΡΠ΅ ΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΎΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²Π°.