Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

microcontroller01 / Общие положения и введение в логику работы шины I2C.Практические рекомендации

.pdf
Источник:
Скачиваний:
11
Добавлен:
06.01.2022
Размер:
183.72 Кб
Скачать

ޡ鍥 ¯®«®¦¥-¨ï ¨ ¢¢¥¤¥-¨¥ ¢ «®£¨ªã à ¡®âë è¨-ë I2Câ¬

•à ªâ¨ç¥áª¨¥ ४®¬¥-¤ 樨

˜¨- I2C

Žâ«¨ç¨â¥«ì-ë¥ ®á®¡¥--®áâ¨

„¢ã- ¯à ¢«¥--ë© ®¡¬¥- ¯® ¤¢ã¬ «¨-¨ï¬‚ë᮪ ï ᪮à®áâì | ®¡¬¥- ¤® 100 ª¡¨â ¨ ¢ë襂®§¬®¦-®áâì ¤à¥á 樨 ¤® 128 ãáâனáâ¢

•à®áâ®â ¯à®£à ¬¬-®© ॠ«¨§ 樨 óMasterô- ¡®-¥-â

‚६¥-- ï -¥§ ¢¨á¨¬®áâì ¯à®æ¥áá ¯¥à¥¤ ç¨

--®¥ ¢¢¥¤¥-¨¥ -¥ ï¥âáï ä®à¬ «ì-ë¬ ®¯¨á -¨¥¬ è¨-ë I2C ¨ ¯à¥¤- §- - ç¥-® ⮫쪮 ¤«ï ¤®áâ â®ç-® ¯®¤à®¡-®£® ®§- ª®¬«¥-¨ï á æ¥«ìî á ¬®áâ®ï⥫ì-®© ॠ«¨§æ¨¨ ç áâ-ëå «£®à¨â¬®¢ á¢ï§¨. „«ï ¯®«ãç¥-¨ï ¡®«¥¥ ¯®«-®© ¨-ä®à¬ 樨

®¡à é ©â¥áì ª ᮮ⢥âáâ¢ãî饩 «¨â¥à âãॠä¨à¬ë Philips, - ¯à¨¬¥à, [].

• §à ¡®â -- ï ä¨à¬®© Philips è¨- I2C (óInter-Integrated Circuitô), | íâ® ¤¢ã-

- ¯à ¢«¥-- ï á¨-åà®-- ï è¨- á ¯®á«¥¤®¢ ⥫ì-®© ¯¥à¥¤ 祩 ¤ --ëå ¨ ¢®§¬®¦- -®áâìî ¤à¥á 樨 ¤® 128 ãáâனáâ¢. ”¨§¨ç¥áª¨ è¨- I2C ᮤ¥à¦¨â ¤¢¥ ᨣ- «ì-ë¥ «¨-¨¨, ®¤- ¨§ ª®â®àëå (SCL) ¯à¥¤- §- ç¥- ¤«ï ¯¥à¥¤ ç¨ â ªâ®¢®£® ᨣ- « , ¢â®- à ï (SDA) ¤«ï ®¡¬¥- ¤ --묨. „«п г¯а ¢«¥-¨п «¨-¨п¬¨ ¯а¨¬¥-повбп ¢л室-л¥ ª бª ¤л б ®вªалвл¬ ª®««¥ªв®а®¬, ¯®í⮬㠫¨-¨¨ è¨-ë ¤®«¦-ë ¡ëâì ¯®¤âï-ãâë ª ¨áâ®ç-¨ªã ¯¨â -¨ï +5 ‚ ç¥à¥§ १¨áâ®àë ᮯà®â¨¢«¥-¨¥¬ 1: : : 10 ªŽ¬, ¢ § ¢¨á¨¬®- á⨠®â 䨧¨ç¥áª®© ¤«¨-ë «¨-¨© ¨ ᪮à®á⨠¯¥à¥¤ ç¨ ¤ --ëå. „«¨- ᮥ¤¨-¨â¥«ì- -ëå «¨-¨© ¢ áâ -¤ àâ-®¬ ०¨¬¥ ¬®¦¥â ¤®á⨣ âì 2-å ¬¥â஢, ᪮à®áâì ¯¥à¥¤ ç¨ | ¤® 100 ª¡¨â/c. ‘㬬 à- ï ñ¬ª®áâì «¨-¨© ¤®«¦- ¡ëâì -¥ ¡®«ìè¥ 400 ¯”, ¢å®¤- ï ñ¬ª®áâì - ª ¦¤ãî ˆ‘ ¤®«¦- ¡ëâì ¢ ¯à¥¤¥« å 5: : : 10 ¯”.

‚ᥠ¡®-¥-âë è¨-ë ¤¥«ïâáï - ¤¢ ª« áá | óMasterô ¨ óSlaveô. “áâன- á⢮ óMasterô £¥-¥à¨àã¥â â ªâ®¢ë© á¨£- « (SCL) ¨, ª ª á«¥¤á⢨¥, ï¥âáï ¢¥- ¤ã騬. Ž-® ¬®¦¥â á ¬®áâ®ï⥫ì-® ¢ë室¨âì - è¨-ã ¨ ¤à¥á®¢ âì «î¡®¥ óSlaveô- ãáâனá⢮ á æ¥«ìî ¯¥à¥¤ ç¨ ¨«¨ ¯à¨ñ¬ ¨-ä®à¬ 樨. ‚ᥠóSlaveô-ãáâனá⢠óá«ã- è îâô è¨-ã - ¯à¥¤¬¥â ®¡- à㦥-¨ï ᮡá⢥--®£® ¤à¥á ¨, à ᯮ§- ¢ ¥£®, ¢ë¯®«- -ïî⠯।¯¨áë¢ ¥¬ãî ®¯¥à æ¨î. Šà®¬¥ ⮣®, ¢®§¬®¦¥- â ª - §ë¢ ¥¬ë© óMulti Masterô-०¨¬ ª®£¤ , - è¨-¥ ãáâ -®¢«¥-® -¥áª®«ìª® óMasterô- ¡®-¥-⮢, ª®â®àë¥ «¨¡® ᮢ¬¥áâ-® à §¤¥«ïîâ ®¡é¨¥ óSlaveô-ãáâனá⢠, «¨¡® ¯®¯¥а¥¬¥--® п¢«повбп в® уMasterô-ãáâனá⢠¬¨, ª®£¤ á ¬¨ ¨-¨æ¨¨àãîâ ®¡¬¥- ¨-ä®à¬ 樥©, â® óSlaveô, ª®£¤ - 室ïâáï ¢ ०¨¬¥ ®¦¨¤ -¨ï ®¡à é¥-¨ï ®â ¤à㣮£® óMasterô-ãáâனá⢠.

•¥¦¨¬ óMulti Masterô âॡã¥â ࡨâà ¦ ¨ à ᯮ§- ¢ -¨ï ª®-䫨ªâ®¢. …áâ¥á⢥-- , ®- á«®¦-¥¥ ¢ ॠ«¨§ 樨 (¨¬¥¥âáï ¢¢¨¤ã ¯à®£à ¬¬- ï ॠ«¨§ æ¨ï) ¨, ª ª á«¥¤- á⢨¥, ०¥ ¨á¯®«ì§ã¥âáï ¢ ॠ«ì-ëå ¨§¤¥«¨ïå.

óI2Cô | § ॣ¨áâà¨à®¢ -- ï â®à£®¢ ï ¬ ઠPhilips Corporation.

˜¨- I2C

‚ - ç «ì-ë© ¬®¬¥-⠢६¥-¨ | ¢ ०¨¬¥ ®¦¨¤ -¨ï | ®¡¥ «¨-¨¨ SCL ¨ SDA - 室ïâáï ¢ á®áâ®ï-¨¨ «®£¨ç¥áª®© ¥¤¨-¨æë (âà -§¨áâ®à ¢ë室-®£® ª ᪠¤ á ŽŠ § ªàëâ). ‚ ०¨¬¥ ¯¥à¥¤ ç¨ (à¨á. 1) ¡¨â ¤ --ëå SDA áâ஡¨àã¥âáï ¯®«®¦¨â¥«ì- -ë¬ ¨¬¯ã«ìᮬ SCL. ‘¬¥- ¨-ä®à¬ 樨 - «¨-¨¨ SDA ¯à®¨§¢®¤¨âáï ¯à¨ -ã«¥¢®¬ á®áâ®ï-¨¨ «¨-¨¨ SCL. óSlaveô-ãáâனá⢮ ¬®¦¥â ó¯à¨¤¥à¦¨¢ âìô «¨-¨î SCL ¢ -ã- «¥¢®¬ á®áâ®ï-¨¨, - ¯à¨¬¥à, - ¢à¥¬ï ®¡à ¡®âª¨ ®ç¥à¥¤-®£® ¯à¨-ï⮣® ¡ ©â , ¯à¨ í⮬ óMasterô-ãáâனá⢮ ®¡ï§ -® ¤®¦¤ âìáï ®á¢®¡®¦¤¥-¨ï «¨-¨¨ SCL, ¯à¥¦¤¥ 祬 ¯à®¤®«¦¨âì ¯¥à¥¤ çã ¨-ä®à¬ 樨.

SCL

 

 

 

SDA

 

 

 

 

 

Данные фиксированы

Данные фиксированы

 

 

Смена

 

 

данных

•¨á. 1. „¨ £à ¬¬

¯à®æ¥áá

¯¥à¥¤ ç¨ ¤ --ëå ¯® è¨-¥ I2C

„«ï á¨-åà®-¨§ 樨 ¯ ª¥â®¢ è¨-ë I2C à §«¨ç îâ ¤¢ ãá«®¢¨ï | óStartô ¨ óStopô, ®£à -¨ç¨¢ î騥 - ç «® ¨ ª®-¥æ ¨-ä®à¬ 樮--®£® ¯ ª¥â (à¨á. 2). „«ï ª®- ¤¨à®¢ -¨ï íâ¨å ãá«®¢¨© ¨á¯®«ì§ã¥âáï ¨§¬¥-¥-¨¥ á®áâ®ï-¨ï «¨-¨¨ SDA ¯à¨ ¥¤¨-¨ç- -®¬ á®áâ®ï-¨¨ «¨-¨¨ SCL, çâ® -¥¤®¯ãá⨬® ¯à¨ ¯¥à¥¤ ç¥ ¤ --ëå. óStartô-ãá«®¢¨¥ ®¡à §ã¥âáï ¯à¨ ®âà¨æ ⥫ì-®¬ ¯¥à¥¯ ¤¥ «¨-¨¨ SDA, ª®£¤ «¨-¨ï SCL - 室¨âáï ¢ ¥¤¨-¨ç-®¬ á®áâ®ï-¨¨, ¨ - ®¡®à®â, óStopô-ãá«®¢¨¥ ®¡à §ã¥âáï ¯à¨ ¯®«®¦¨â¥«ì-®¬ ¯¥à¥¯ ¤¥ «¨-¨¨ SDA ¯à¨ ¥¤¨-¨ç-®¬ á®áâ®ï-¨¨ «¨-¨¨ SCL.

SCL

 

 

SDA

 

 

 

Старт-условие

Стоп-условие

•¨á. 2. „¨ £à ¬¬

ó‘â àâô/ó‘⮯ô ãá«®¢¨ï è¨-ë I2C

 

2

 

Š’–-ŒŠ

 

 

 

˜¨- I2C

SCL

1

8

9

SDA

 

 

 

передатчик

 

 

 

SDA

 

 

 

получатель

 

 

 

 

Старт-условие

 

ACK

 

 

Подтверждение

•¨á. 3. „¨ £à ¬¬

¯®¤â¢¥à¦¤¥-¨ï ¯à¨ñ¬

¡ ©â

¯® è¨-¥ I2C

•¥à¥¤ ç ¤ --ëå - ç¨- ¥âáï ¯® ¯¥à¢®¬ã ¯®«®¦¨â¥«ì-®¬ã ¨¬¯ã«ìáã - «¨-¨¨ SCL (à¨á. 3), ª®â®àë¬ áâ஡¨àã¥âáï áâ à訩 ¡¨â ¯¥à¢®£® ¨-ä®à¬ 樮--®£® ¡ ©- â . Š ¦¤ë© ¨-ä®à¬ 樮--ë© ¡ ©â (8 ¡¨â®¢) ᮤ¥¦¨â 9 ⠪⮢ëå ¯¥à¨®¤®¢ «¨-¨¨ SCL. ‚ ¤¥¢ï⮬ ⠪⥠ãáâனá⢮-¯®«ãç â¥«ì ¢ë¤ ñâ ¯®¤â¢¥à¦¤¥-¨¥ (ACK) | ®â- à¨æ ⥫ì-ë© ¨¬¯ã«ìá, ᢨ¤¥â¥«ìáâ¢ãî騩 ® ó¢§ ¨¬®¯®-¨¬ -¨¨ô ¯¥à¥¤ â稪 ¨ ¯®«ãç ⥫ï. ‘à §ã ®â¬¥â¨¬, çâ® «î¡®© ¡®-¥-â è¨-ë, ª ª óMasterô, â ª ¨ óSlaveô ¬®¦¥â ¢ à §-ë¥ ¬®¬¥-âë ¢à¥¬¥-¨ ¡ëâì ª ª ¯¥à¥¤ â稪®¬, â ª ¨ ¯®«ãç ⥫¥¬ ¨ ¢ ᮮ⢥âá⢨¨ á ०¨¬®¬ ®¡ï§ - «¨¡® ¯à¨-¨¬ âì, «¨¡® ¢ë¤ ¢ âì ᨣ- « ACK, ®â-

бгвбв¢¨¥ ª®в®а®£® ¨-в¥¯а¥в¨аг¥вбп ª ª ®и¨¡ª .

‚६¥-- ï ¤¨ £à ¬¬ ᨣ- «®¢ SCL ¨ SDA è¨-ë I2C ¯à¨¢¥¤¥- - à¨á. 4. ‡¤¥áì S ®¡®§- ç ¥â óStartô-ãá«®¢¨¥, P | óStopô-ãá«®¢¨¥. ‡- ç¥-¨ï ¢à¥¬¥--ëå å à ªâ¥-

à¨á⨪ ¯à¨¢¥¤¥-ë ¢ â ¡«. 1.

 

—⮡ë - ç âì ®¯¥à æ¨î ®¡¬¥-

ãáâனá⢮ óMasterô ¢ë¤ ñâ - è¨-ã óStartô-

ãá«®¢¨¥, § ª®â®àë¬ á«¥¤ã¥â ¡ ©â á

¤à¥á®¬ óSlaveô-ãáâனá⢠(à¨á. 5), á®áâ®ï騩

¨§ ᥬ¨¡¨â®¢®£® ¤à¥á ãáâனáâ¢

(§ -¨¬ ¥â ¡¨âë 1: : : 7) ¨ ®¤-®¡¨â®¢®£® ä« £

 

 

 

 

®¯¥à 樨 | óR/Wô (¡¨â 0) ®¯à¥¤¥«ïî饣® - ¯à ¢«¥-¨¥ ®¡¬¥- , ¯à¨çñ¬ 0 ®§- ç - ¥â ¯¥à¥¤ çã ®â óMasterô ª óSlaveô (à¨á. 5, ), 1 | çâ¥-¨¥ ¨§ óSlaveô (à¨á. 5, ¡). ‚ᥠ¡¨âë ¯¥à¥¤ îâáï ¯® è¨-¥ I2C ¢ ¯®à浪¥ áâ à訩-¬« ¤è¨©, â® ¥áâì ¯¥à¢ë¬ ¯¥à¥¤ ñâáï 7-®© ¡¨â, ¯®á«¥¤-¨¬ 0-®©. ‡ ¤à¥á®¬ ¬®£ãâ á«¥¤®¢ âì ®¤¨- ¨«¨ ¡®«¥¥ ¨-ä®à¬ 樮--ëå ¡ ©â®¢ (¢ - ¯à ¢«¥-¨¨, ®¯à¥¤¥«ñ--®¬ ä« £®¬ R/W), ¡¨âë ª®â®- але бва®¡¨аговбп б¨£- «®¬ SCL ¨§ óMasterô-ãáâனá⢠.

•ਠᮢ¥àè¥-¨¨ ®¯¥à 樨 çâ¥-¨ï óMasterô- ¡®-¥-â ¤®«¦¥- ᮯ஢®¦¤ âì ¯à®- ç¨â --ë© ¡ ©â ᨣ- «®¬ ACK, ¥á«¨ -¥®¡å®¤¨¬® ¯à®ç¨â âì á«¥¤ãî騩 ¡ ©â, ¨ -¥ ¢ë¤ ¢ âì ᨣ- « ACK, ¥á«¨ ᮡ¨à ¥âáï § ª®-ç¨âì çâ¥-¨¥ ¯ ª¥â (à¨á. 5, ¡).

„®¯ã᪠¥âáï ¬-®£®ªà â-®¥ ¢®§®¡-®¢«¥-¨¥ óSlaveô- ¤à¥á ¢ ®¤-®¬ 横«¥ ¯¥à¥- ¤ ç¨, â® ¥áâì ¯¥à¥¤ ç ¯®¢â®à-®£® óStartô-ãá«®¢¨ï ¡¥§ ¯à¥¤¢ à¨â¥«ì-®£® óStopô-

ãá«®¢¨ï. ’ ª®© ¯à¨-樯 è¨à®ª® ¯à¨¬¥-ï¥âáï ¢ ã¯à ¢«¥-¨¨ I2C

¡®-¥-â ¬¨, ª®£¤

Š’–-ŒŠ

 

 

3

 

 

˜¨- I2C

¢ë¤ ç -®¢®£® óStartô-ãá«®¢¨ï á«ã¦¨â ¤«ï á¨-åà®-¨§ 樨 - ç « -®¢®£® ¯ ª¥â ¤ --ëå, ᮯ஢®¦¤ ¥¬®£®, - ¯à¨¬¥à, -®¢ë¬ ã¯à ¢«ïî騬 á«®¢®¬, ãâ®ç-ïî騬 ¤à¥á æ¨î ¯ ª¥â . ‹®£¨ç¥áª ï ॠ«¨§ æ¨ï ¯à®â®ª®«®¢ - è¨-¥ I2C -¥ -®à¬¨àã¥â- áï ¤®ªã¬¥-â ¬¨ ä¨à¬ë Philips, ᮤ¥à¦ 騬¨ ä®à¬ «ì-ë¥ ®¯¨á -¨ï è¨-ë, ¨ ¬®¦¥â ¡ëâì ¯à®¨§¢®«ì-®© ¤«ï ª ¦¤®© ª®-ªà¥â-®© ˆ‘.

 

tHD;STA

tr

tHIGH

tSU;STA

tSU;STO

SCL

 

 

 

 

 

 

tLOW

 

 

tf

 

SDA

 

 

 

 

 

P

tBUF

tHD;DAT

tSU;DAT

tHD;STA

S

 

 

S

P

•¨á. 4. ‚६¥-- ï ¤¨ £à ¬¬

à ¡®âë è¨-ë I2C

 

’ ¡«. 1. ‡- ç¥-¨ï ¢à¥¬¥--ëå

å à ªâ¥à¨á⨪ è¨-ë I2C

• à ¬¥âà

 

Ž¡®§-.

ά-.

Œ ªá.

…¤¨-.

 

 

 

 

 

 

— áâ®â ᨣ- « SCL

 

fSCL

0

100

ªƒæ

‘¢®¡®¤- ï è¨-

 

tBUF

4.7

|

¬ªá

”¨ªá æ¨ï óStartô-ãá«®¢¨ï

 

tHD;STA

4.0

|

¬ªá

„«¨â¥«ì-®áâì óLOWô ¯®«ã¯¥à¨®¤

SCL

tLOW

4.7

|

¬ªá

„«¨â¥«ì-®áâì óHIGHô ¯®«ã¯¥à¨®¤

SCL

tHIGH

4.0

|

¬ªá

ƒ®â®¢-®áâì ¯®¢â®à-®£® óStartô-ãá«®¢¨ï

tSU;STA

4.7

|

¬ªá

“¤¥à¦ -¨¥ ¤ --ëå

 

tHD;DAT

0

|

¬ªá

ƒ®â®¢-®áâì ¤ --ëå

 

tSU;DAT

250

|

”à®-â ᨣ- «®¢ SCL ¨ SDA

 

tr

|

1000

‘¯ ¤ ᨣ- «®¢ SCL ¨ SDA

 

tf

|

300

ƒ®â®¢-®áâì óStopô-ãá«®¢¨ï

 

tSU;STO

4.0

|

¬ªá

 

 

 

 

 

 

4

 

Š’–-ŒŠ

 

 

 

 

 

 

 

 

 

 

˜¨-

I2C

 

0

 

 

 

 

 

 

 

 

 

S

Адрес «Slave» R/W

A

Данные

A Данные A/A P

 

Îò «Master» ê «Slave»

 

 

Передача

Передаваемые данные

 

 

Îò «Slave» ê «Master»

 

 

( n байтов + ACK)

 

 

 

 

 

 

 

 

 

 

 

a) Передача от «Master» к «Slave»

 

 

 

S

«Start»-условие

 

 

 

 

 

 

 

 

 

 

1

 

 

 

 

 

P

«Stop»-условие

 

 

 

 

 

 

 

 

A

Бит подтверждения (ACK)

 

S

Адрес «Slave» R/W

A

Данные

A Данные A

P

 

 

 

 

 

 

Чтение

 

Принимаемые данные

 

A

Отсутствие подтверждения

 

 

( n байтов + ACK)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

б) Чтение из «Slave»

 

 

 

 

 

 

 

 

 

S

Адрес «Slave» R/W

A

Данные

A/A

Адрес «Slave»

R/W

Данные A/A

P

 

Данные

S

A

 

 

 

 

A/A

 

 

 

Данные A/A

 

 

 

Передача или чтение

Повторный «Start»

Передача или чтение

 

 

в) Комбинированный формат — передача/чтение

 

 

 

 

 

•¨á. 5. ”®à¬ â ®¯¥à 権 çâ¥-¨ï/§ ¯¨á¨

 

 

 

 

 

•à ªâ¨ç¥áª¨¥ ४®¬¥-¤ 樨

•¨¦¥ ¬ë à áᬮâਬ ®á-®¢-ë¥ âàã¤-®áâ¨, á¢ï§ --ë¥ á ¨á¯®«ì§®¢ -¨¥¬ è¨-ë

I2C ¢ 楫®¬,

â ª¦¥ ⨯¨ç-ë¥ ¯à®¡«¥¬ë ¨ ®è¨¡ª¨, ¢®§-¨ª î騥 - - ç «ì-ëå

íâ ¯ å ॠ«¨§ 樨 «£®à¨â¬®¢ ®¡¬¥- .

“¤®¡áâ¢

¯à¨¬¥-¥-¨ï è¨-ë I2C ®ç¥¢¨¤-ë | ¬ «®¥ ª®«¨ç¥á⢮ ᮥ¤¨-¨â¥«ì-ëå

«¨-¨© ¨ ¢ë᮪ ï ᪮à®áâì ®¡¬¥- , ¯à®áâ®â ¯¯ à â-®© ॠ«¨§ 樨 «¨-¨¨ á¢ï§¨.

• ¨¡®«¥¥ è¨à®ª® ¯®¤¤¥à¦¨¢ ¥â è¨-ã I2C, ª®-¥ç-® ¦¥, ä¨à¬ Philips, ¯à®¨§¢®¤ï- é ï ¬-®¦¥á⢮ ˆ‘ à §«¨ç-®© á«®¦-®á⨠á ã¯à ¢«¥-¨¥¬ ¯® I2C. ‚ ¯¥à¢ãî ®ç¥à¥¤ì,

¬®¦-® ¢ë¤¥«¨âì ¬¨ªà®á奬ë í-¥à£®-¥§ ¢¨á¨¬®© ¯ ¬ï⨠(EEPROM) á¥à¨¨ 24Cxx ¢ 8-¬¨ ¢ë¢®¤-ëå ª®à¯ãá å, ä ªâ¨ç¥áª¨ á⠢訥 ¯à®¬ëè«¥--ë¬ áâ -¤ à⮬. ˆ§ è¨à®ª® à á¯à®áâà -ñ--ëå ˆ‘ ¬®¦-® ¢ë¤¥«¨âì: ¬¨ªà®á奬ë ç ᮢ PCF8583, ¯ - à ««¥«ì-ë© ¯®àâ PCF8574, 4-å ª - «ì-ë© 8-¬¨ à §àï¤-ë© €–• PCF8591. ‘ãé¥- áâ¢ã¥â ¬-®¦¥á⢮ ¬®¤¨ä¨ª 権 íâ¨å ˆ‘ ¨ ¡®«¥¥ á¯¥æ¨ «¨§¨à®¢ --ë¥ ª®-â஫«¥- àë, ¢ ç áâ-®áâ¨, ä¨à¬ Š’–-ŒŠ ¢ë¯ã᪠¥â á¯¥æ¨ «¨§¨à®¢ --ë¥ ª®-â஫«¥àë á ã¯à ¢«¥-¨¥¬ ¯® I2C: ª®-â஫«¥à æ¨ä஢®£® ᢥ⮤¨®¤-®£® ¤¨á¯«¥ï ¨ ª« ¢¨ âãàë (CE210, CE220), ª®-â஫«¥à †Šˆ-¬®¤ã«ï á ¯ à ««¥«ì-®© è¨-®©, ᮢ¬¥éñ--ë© á ª®-â஫«¥à®¬ ª« ¢¨ âãàë (CE110), ª®-â஫«¥à á¥â¨ - ®á-®¢¥ è¨-ë RS-485 (CE302).

I2C- ¡®-¥-вл ¦сбвª® а §¤¥«повбп ¯® ª« бб ¬: óMasterô- ¨ óSlaveô-ãáâனá⢮. ’®â ä ªâ, ç⮠ᨣ- « SCL ¢á¥£¤ £¥-¥à¨àã¥âáï óMasterô-ãáâனá⢮¬ ®§- ç ¥â,

Š’–-ŒŠ

 

5

 

˜¨- I2C

çâ® óMasterô- ¡®-¥-â ¬®¦¥â ¡ëâì ¤®áâ â®ç-® «¥£ª® ॠ«¨§®¢ - ç¨áâ® ¯à®£à ¬¬- -묨 á।á⢠¬¨, â ª ª ª ¢á¥ ¨§¬¥-¥-¨ï - è¨-¥ ¡ã¤ã⠯நá室¨âì ⮫쪮 ¯® ᨣ- «ã SCL. ˆ - ®¡®à®â, ॠ«¨§ æ¨ï óSlaveô-ãáâனá⢠âॡã¥â ¯¯ à â-®© ¯®¤- ¤¥à¦ª¨, ªà®¬¥ á«ãç ï ®ç¥-ì -¨§ª¨å ᪮à®á⥩ ®¡¬¥- . ‘ãé¥áâ¢ãîâ ®¤-®ªà¨áâ «ì- -ë¥ ¬¨ªà®-•‚Œ (ŽŒ•‚Œ) ¯®¤¤¥à¦¨¢ î騥 óSlaveô-®¯¥à 樨 è¨-ë I2C. •â® ¯à¥-

¦¤¥ ¢á¥£® Philips PCF80C552 (652), Microchip PIC16C62 (64, 73 ¨ ¤à.), Motorola MC68HC705CJ4 (BD3, E5). Šà®¬¥ ⮣®, ŽŒ•‚Œ ä¨à¬ë Philips ¯¯ à â-® ¯®¤¤¥à- ¦¨¢ îâ óMasterô-¯à®â®ª®«, å®âï ¯à ªâ¨ç¥áª¨ ¯¯ à â-ë¥ óMasterô-ª®-ва®««¥ал ¯а¨¬¥-повбп а¥¤ª®.

‚ ⨯¨ç-®© ¬¨ªà®¯à®æ¥áá®à-®© á¨á⥬¥ á ¯à¨¬¥-¥-¨¥¬ I2C-ãáâனáâ¢, ®¡ëç-® áãé¥áâ¢ã¥â æ¥-âà «ì- ï ŽŒ•‚Œ, ¤¢¥ «¨-¨¨ ¯®à⮢ ª®â®à®© ®â¢¥¤¥-ë ¤«ï ã¯à - ¢«¥-¨ï «¨-¨ï¬¨ è¨-ë I2C SCL ¨ SDA. ‹¨-¨¨ è¨-ë I2C ¤®«¦-ë ¡ëâì ¢ë¯®«-¥-ë á ®âªàëâë¬ ª®««¥ªâ®à®¬ (OK), ¨ ¯®¤âï-ãâë १¨áâ®à ¬¨ ª «¨-¨¨ ¯¨â -¨ï +5 , çâ® ¯®§¢®«ï¥â ¡®-¥-â ¬ è¨-ë ¯à®¨§¢®¤¨âì ®¯¥à 樨 ⨯ óŒ®-â ¦-®¥ ˆ‹ˆô ¤«ï

â®à¬®¦¥-¨ï ¯à®æ¥áá ®¡¬¥-

¢ á«ãç ¥, ¥á«¨ ®-¨ -¥ ãᯥ¢ îâ ®âà ¡ âë¢ âì ®¯¥à -

樨 ᮠ᪮à®áâìî óMasterô-

¡®-¥-â .

’¨¯¨ç- ï ®è¨¡ª ¯à¨ ॠ«¨§ 樨 ¯à®£à ¬¬ óMasterô- ¡®-¥-â | ã¯à ¢«¥-¨¥ §- ç¥-¨¥¬ ¯®àâ ŽŒ•‚Œ ¤«ï ãáâ -®¢ª¨ -ã«¥¢®£® ¨ ¥¤¨-¨ç-®£® á®áâ®ï-¨© «¨-¨© SCL ¨ SDA. …᫨ ¤«ï ŽŒ•‚Œ ᥬ¥©á⢠MCS-51 íâ® -®à¬ «ì-ë© à¥¦¨¬ à ¡®âë, â ª ª ª ¥¤¨-¨ç-®¥ á®áâ®ï-¨¥ ¯®àâ ã -¨å ॠ«¨§ã¥âáï ¢áâ஥--ë¬ ¯®¤â¢ î- 騬 १¨áâ®à®¬ 50 ªŽ¬, â® ¤«ï ŽŒ•‚Œ á ᨬ¬¥âà¨ç-묨 ¯®àâ ¬¨ (Motorola 68HCxxx, Microchip PIC, Atmel AVR) íâ® ¡ã¤¥â ¯®à®¦¤ âì í«¥ªâà¨ç¥áª¨¥ ª®-䫨ª-

âë. • ¯à¨¬¥à, ¢ à㪮¢®¤á⢥ óMicrochip. Embedded Control Handbook 1994/1995ô

¯à¨¢¥¤¥-ë ¯à ªâ¨ç¥áª¨¥ ¯à®£à ¬¬ë ¤«ï á¢ï§¨ PIC á ˆ‘ EEPROM, ᮤ¥à¦ 騥 ¯®¤®¡-ë¥ £àã¡ë¥ ®è¨¡ª¨. •®«®¦¥-¨¥ ãáã£ã¡«ï¥âáï ⥬, çâ® ¢ á«ãç ¥ ¬¨ªà®á奬 EEPROM â ª®© ¢ ਠ-â ¬®¦¥â áà ¡®â âì, в ª ª ª ®-¨ п¢«повбп 100% ¯¯ à â-ë- ¬¨ á奬 ¬¨ ¨ -¥ ¢-®áïâ § ¤¥à¦¥ª ¢ á¢ï§-®© ¯à®â®ª®«, ¯ ã§ã ®¦¨¤ -¨ï ®ª®-ç -¨ï 横« ¯à®£à ¬¬¨à®¢ -¨ï ¯à®¨§¢®¤ïâ ¯¥à¥å®¤®¬ ¢ ¯ áᨢ-®¥ á®áâ®ï-¨¥. ˆá¯®«ì§®- ¢ -¨¥ â ª¨å ¯®¤¯à®£à ¬¬ á ˆ‘, ¯à®¨§¢®¤ï騬¨ § å¢ â «¨-¨¨ SCL (¯à ªâ¨ç¥áª¨ «î¡®© óSlaveô- ¡®-¥-â, ॠ«¨§®¢ --ë© á ¯à¨¬¥-¥-¨¥¬ ŽŒ•‚Œ), ¯à¨¢¥¤ñâ ª -¥¢®§- ¬®¦-®á⨠á¢ï§¨, ¢®§¬®¦-®, ¨ ª ¢ë室㠈‘ ¨§ áâà®ï.

•¥ «¨§®¢ âì - áâ®ïéãî ¨¬¨â æ¨î ŽŠ (¬ë - §¢ «¨ íâ®â ०¨¬ ¨¬¨â 樥© ŽŠ, â ª ®- -¥ ¯®§¢®«ï¥â ãáâ - ¢«¨¢ âì - «¨-¨¨ - ¯à殮-¨¥ ¢ëè¥ - ¯à殮-¨ï ¯¨â - -¨ï, çâ® ¡ë«® ¡ë -®à¬ «ì-® ¤«ï - áâ®ï饣® ŽŠ, -® â ª ª ª ¯® ᯥæ¨ä¨ª 樨 I2C - ¯à殮-¨¥ - «¨-¨ïå SCL ¨ SDA -¥ ¤®«¦-® ¯à¥¢ëè âì - ¯à殮-¨¥ ¯¨â -¨ï, ¥£® ¢¯®«-¥ § ª®--® ¬®¦-® áç¨â âì ¢ë室®¬ á ŽŠ) - ¯®à⥠á ᨬ¬¥âà¨ç-ë¬ ¢ë室®¬ ¬®¦-®, ¥á«¨ ãáâ -®¢¨âì §- ç¥-¨¥ ¯®àâ ¯®áâ®ï--® ¢ -®«ì, ã¯à ¢«ïâì á®áâ®ï-¨¥¬ «¨-¨¨ ç¥à¥§ ¬ -¨¯ã«ï樨 á ॣ¨áâ஬ - ¯à ¢«¥-¨ï ¤ --ëå. „«ï ŽŒ•‚Œ PIC íâ® ¡ã¤¥â ॣ¨áâà óTRISxô, ¯¥à¥¢®¤ï騩 ¯®àâ «¨¡® ¢ âà¥âì¥ á®áâ®ï-¨¥, «¨¡® ¯®¤ª«î- ç î騩 «¨-¨¨ ¢ ᮮ⢥âá⢨¨ á á®áâ®ï-¨¥¬ ॣ¨áâà óPORTxô. •à ªâ¨ç¥áª¨ â ª ¦¥ í⮠ॠ«¨§ã¥âáï ¢ AVR ¨ MC68HC05 (08, 11), £¤¥ óDDRxô ª®¬¬ãâ¨àã¥â ¯®àâ óPORTxô, á ⮩ «¨èì à §-¨æ¥©, çâ® ã -¨å ¤àã£ ï ¯®«ïà-®áâì ã¯à ¢«ïî饣® ᨣ- -

« | ã PIC -®«ì ¢ óTRISxô ᮮ⢥âáâ¢ã¥â -ã«î - ¢ë室¥,

ã AVR ¨ MC68HC05

6

 

 

Š’–-ŒŠ

 

 

˜¨- I2C

¥¤¨-¨æ ¢ óDDRxô ᮮ⢥âáâ¢ã¥â -ã«î - ¢ë室¥.

…éñ ®¤- â®-ª®áâì á¢ï§ -- ï á PIC, -¥ ¨¬¥îé ï ᮡá⢥--® ª I2C -¨ª ª®£® ®â- -®è¥-¨ï § ª«îç ¥âáï ¢ ⮬, çâ® ã -¥£® ᮢ¬¥é¥-ë ॣ¨áâà çâ¥-¨ï á®áâ®ï-¨ï «¨-¨© ¯®àâ ¨ ॣ¨áâà § ¯¨á¨ §- ç¥-¨ï ¯®àâ , ¢ १ã«ìâ ⥠祣®, ¥á«¨ ç áâì «¨-¨© ¯®à- â § ¯à®£à ¬¬¨à®¢ - - ¢ë¢®¤, ¤à㣠ï - 室¨âáï ¢ âà¥â쥬 á®áâ®ï-¨¨, â® ¯à¨ ¢ë¯®«-¥-¨¨ PIC'®¬ ®¯¥а ж¨¨ ¬®¤¨д¨ª ж¨¨ ¢ а¥£¨бва ¯®ав ¯¥а¥¯¨игвбп §- з¥-¨п -¥¯®ба¥¤бв¢¥--® б ¢л¢®¤®¢ PIC' ãáâ -®¢«¥--ëå ¢ âà¥âì¥ á®áâ®ï-¨¥, çâ® ¬®¦¥â - àãè¨âì (¨ ᪮॥ ¢á¥£® - àãè¨â) à ¡®âã ¯à®£à ¬¬ë ®¡¬¥- (¯®в¥аповбп -г«¨ ®¡¥б¯¥з¨¢ ой¨¥ ¨¬¨в ж¨о ¢л室®¢ б ŽŠ). •®í⮬㠫ãçè¥ ¯à®¨§¢®¤¨âì ¯à¨-㤨- ⥫ì-ãî ãáâ -®¢ªã ¢ -®«ì ¡¨â®¢ ¢ óPORTxô, - ¯à¨¬¥à, ¯¥à¥¤ ª ¦¤®© ®¯¥à 樥© ®¡¬¥- , ᪠¦¥¬ â ª®© ¯®á«¥¤®¢ ⥫ì-®áâìî:

movlw

b'11100111'

; Œ áª

«¨-¨© SCL ¨ SDA ¢ ¯®à⥠C (RC3 ¨ RC4)

 

andwf

portc,f

; ‘¡à. §- ç¥-¨© «¨-¨© SCL ¨ SDA ¢ ¯®à⥠C ¢ -®«ì

„àã£ ï ¢ ¦- ï áâ®à®-

¢®¯à®á

| -¥®¡å®¤¨¬®áâì âé ⥫ì-®£® ᮡ«î¤¥-¨ï ¯ -

à ¬¥â஢ ¢à¥¬¥--®© ¤¨ £à ¬¬ë ¯à®æ¥áá ®¡¬¥- . •¥á¬®âàï -

â®, çâ® è¨-

I2C

á¨-åà®-- ï ¨ ¯®§¢®«ï¥â § â¢ âì ¯¥à¥¤ çã ¡¨â (¡ ©â ) -

᪮«ì 㣮¤-® ¤«¨-

⥫ì-®¥ ¢à¥¬ï (í⮠᢮©á⢮ ¯®§¢®«ï¥â ॠ«¨§®¢ë¢ âì ¯à®£à ¬¬ë I2C-®¡¬¥-

-

á ¬®¬ -¨§ª®¬ ã஢-¥ ¯à¨®à¨â¥â , ¯à¥àë¢ ï ¯à®æ¥áá ¯¥à¥¤ ç¨ ¢ «î¡®¥ ¢à¥¬ï), âà¥- ¡®¢ -¨ï ª ¬¨-¨¬ «ì-ë¬ §- ç¥-¨ï¬ ¤«¨â¥«ì-®á⥩ ¨¬¯ã«ìᮢ ®ç¥-ì ¦ñá⪨¥. ‘¨- âã æ¨ï ãáã£ã¡«ï¥âáï ⥬, çâ® ¯®«®¦¨â¥«ì-ë¥ ¯¥à¥¯ ¤ë á®áâ®ï-¨ï «¨-¨¨ ¨¬¥îâ ᪫®--®áâì § â¢ âìáï, â ª ª ª -¥á¨¬¬¥âà¨ç-ë¥ ã¯à ¢«ïî騥 ¢ë室ë -¥ ¬®£ãâ á®§¤ âì ªàãâë¥ ¯®«®¦¨â¥«ì-ë¥ äà®-âë.

•ਠ- ¯¨á -¨¨ ¯à®£à ¬¬ ®ç¥-ì ¢ ¦-® ª®-â஫¨à®¢ âì ¢à¥¬ï ¬¥¦¤ã ®¯¥à æ¨ï¬¨ - è¨-¥, ॠ«¨§ã¥¬ë¬¨ à §«¨ç-묨 ¯®¤¯à®£à ¬¬ ¬¨, - ¯à¨¬¥à ¢ë¤ ç óStartô ¨ óStopô-ãá«®¢¨ï, ¯¥à¥¤ ç ¡¨â , ¯¥à¥¤ ç ¡ ©â . •ਠá®áâ몮¢ª¥ íâ¨å ¯®¤¯à®£à ¬¬ -¥ ¤®«¦-ë ¡ëâì - àãè¥-ë ¬¨-¨¬ «ì-ë¥ §- ç¥-¨ï ¢à¥¬¥-¨, çâ® ®ç¥-ì «¥£ª® ¯à®¨á- 室¨â ¯à¨ ¨á¯®«ì§®¢ -¨¨ ¢ë᮪®áª®à®áâ-ëå ¯à®æ¥áá®à®¢ (AVR, PIC). Šà®¬¥ ⮣®, -¥®¡å®¤¨¬® á«¥¤¨âì, çâ®¡ë ¢à¥¬ï ¬¥¦¤ã ¨§¬¥-¥-¨¥¬ - «¨-¨¨ SDA ¨ áâ஡¨à®- ¢ -¨¥¬ ¯®«®¦¨â¥«ì-ë¬ ¨¬¯ã«ìᮬ - «¨-¨¨ SCL ¡ë«® -¥ ¬¥-ìè¥ ¯®«®¢¨-ë ¬¨- -¨¬ «ì-®© ¤«¨â¥«ì-®á⨠¯®«ã¯¥à¨®¤ SCL (4:7 ¬ªá=2 = 2:4 ¬ªá). •®¬¨¬® í⮣®, -¥ª®â®àë¥ óSlaveô-¯à¨¡®àë ¬®£ãâ 㦥áâ®ç¨âì âॡ®¢ -¨ï ª ¬ ªá¨¬ «ì-®© ç áâ®â¥ ®¡¬¥- (- ¯à¨¬¥à, CE110 | 48 ªƒæ), ¢ í⮬ á«ãç ¥ -¥®¡å®¤¨¬® ¯à®¯®à樮- «ì-® á-¨¦¥-¨î ç áâ®âë ®¡¬¥- 㢥«¨ç¨¢ âì §- ç¥-¨ï ¬¨-¨¬ã¬®¢ ¢à¥¬¥--ëå ¤®¯ã᪮¢.

…éñ ®¤- à á¯à®áâà -ñ-- ï ®è¨¡ª | ¨£-®à¨à®¢ -¨¥ âॡ®¢ -¨ï á«¥¦¥-¨ï § § å¢ â®¬ «¨-¨¨ SCL óSlaveô- ¡®-¥-⮬. ƒà ¬®â-® ॠ«¨§®¢ --ë¥ ¯à®£à ¬¬ë ®¯¥- à æ¨© óMasterô- ¡®-¥-â ¤®«¦-ë ª®-â஫¨à®¢ âì ¢®§¢à â «¨-¨¨ SCL ¯®á«¥ ⮣®, ª ª ¯¥à¥¢®¤ïâ ¥ñ ¢ ¥¤¨-¨ç-®¥ á®áâ®ï-¨¥, ¨ ⮫쪮 ¤®¦¤ ¢è¨áì ॠ«ì-®© ãáâ -®¢ª¨ «¨-¨¨ SCL ¢ ¥¤¨-¨ç-®¥ á®áâ®ï-¨¥ ¯à®¤®«¦ âì ®¯¥à 樨 ¯à¨ñ¬®-¯¥à¥¤ ç¨.

’¥¯¥àì ¬ë ®¯¨è¥¬ ¬¨-¨¬ «ì-® -¥®¡å®¤¨¬ë© - ¡®à ®¯¥à 権 ¤«ï ॠ«¨§ 樨 óMasterô- ¡®-¥-â . •०¤¥ ¢á¥£®, íâ® ¯®¤¯à®£à ¬¬ë ¢ë¤ ç¨ óStartô- ¨ óStopô-

ãá«®¢¨ï, ¯®¤¯à®£à ¬¬ ¯¥à¥¤ ç¨ ¡ ©â , ¯®¤¯à®£à ¬¬ ¯à¨ñ¬

¡ ©â , ¢ë¤ îé ï

Š’–-ŒŠ

 

 

7

 

 

˜¨- I2C

ᨣ- « ACK ¨ ¯®¤¯à®£à ¬¬ ¯à¨ñ¬ ¡ ©â , -¥ ¢ë¤ îé ï ᨣ- « ACK. ’ਠ¯®- á«¥¤-¨¥ ¨á¯®«ì§ãîâ ¯®¤¯à®£à ¬¬ë ¯¥à¥¤ ç¨ ¡¨â ¨ ¯à¨ñ¬ ¡¨â . ‚® ¢à¥¬¥--ëå ¯à®¬¥¦ãâª å ¬¥¦¤ã ¯®¤¯à®£à ¬¬ ¬¨ «¨-¨ï SCL ¨¬¥¥â -ã«¥¢®¥ §- ç¥-¨¥. Š ª 㦥 £®¢®à¨«®áì à -¥¥, ¢ ¦-® ¯à ¢¨«ì-® ᮣ« ᮢ âì ¢á¥ ¢à¥¬¥--ë¥ å à ªâ¥à¨á⨪¨ ¯®¤- ¯à®£à ¬¬. …᫨, ª ¯à¨¬¥àã, ¢ë ¢ë§ë¢ ¥â¥ ¯®¢â®à-ë© óStartô áà §ã § ¯¥à¥¤ 祩 (¯à¨ñ¬®¬) ¡ ©â , â® -¥®¡å®¤¨¬®, çâ®¡ë ¯®«-®áâìî § ¢¥à訫áï -ã«¥¢®© ¯®«ã¯¥à¨- ®¤ ( 4:7 ¬ªá), ¯à¥¤è¥áâ¢ãî騩 óStartô-ãá«®¢¨î, ¯®¤¯à®£à ¬¬ , ॠ«¨§ãîé ï óStartô-ãá«®¢¨¥, ¯¥à¥¢¥¤ï «¨-¨¨ SDA ¨ SCL ¢ ¥¤¨-¨ç-®¥ á®áâ®ï-¨¥, ¤®¦¤ ¢è¨áì ¨å ॠ«ì-®£® ¢®§¢à â , ¤®«¦- 㤥ন¢ âì ¥ñ ¢ â ª®¬ á®áâ®ï-¨¨ -¥ ¬¥-¥¥ ãáâ -®- ¢«¥--®£® ¢à¥¬¥-¨ ( 4:7 ¬ªá), ¨ â ª ¢® ¢á¥å á«ãç ïå.

ޝ¥à¨àãï í⨬¨ ¯ïâìî ¯®¤¯à®£à ¬¬ ¬¨ ¬®¦-® «¥£ª® - « ¤¨âì ®¡¬¥- ¯® è¨-¥ I2C. Œ®¦-® ¢ë¤ âì - è¨-ã óStartô-ãá«®¢¨¥, § -¨¬ óSlave Adressô, ¤ «¥¥ ¤ --

-ë¥, ¢ ᮮ⢥âá⢨¨ á ¯à®â®ª®«®¬ ª®-ªà¥â-®© I2C-ˆ‘. Œ®¦-® ¢ë¤ âì ¯®¢â®à-®¥ óStartô-ãá«®¢¨¥, -®¢ë© óSlave Adressô ¨ â ª ¤ «¥¥, ä®à¬¨àãï ¯à®æ¥áá ®¡¬¥- ª ª ¨§ í«¥¬¥-⮢ ª®-áâàãªâ®à . Ž¡ëç-® ¯à®â®ª®«ë ®¡¬¥- óSlaveô-ãáâனá⢠¤®¢®«ì-® «®£¨ç-® ᮮ⢥âáâ¢ãîâ ¯à®£à ¬¬¨à®¢ -¨î ¢ â ª®¬ á⨫¥.

‹¨â¥à âãà

[1] The I2C-bus and how to use it. c 1997 Philips.

ޡ鍥 ¯®«®¦¥-¨ï ¨ ¢¢¥¤¥-¨¥ ¢ «®£¨ªã à ¡®âë è¨-ë I2C •à ªâ¨ç¥áª¨¥ ४®¬¥-¤ 樨 1-¥ ¨§¤ -¨¥

c 1997 Š’–-ŒŠ €¢â®à: €.€.ƒ®«®¢

‚ñàá⪠¯à®¨§¢¥¤¥- ¢ ¯ ª¥â¥ CyrTUG-emTEX

á ¨á¯®«ì§®¢ -¨¥¬ ª¨à¨««¨ç¥áª¨å èà¨ä⮢ ᥬ¥©á⢠LH

8

 

Š’–-ŒŠ