ТэхналогііЭлектроніка

I2C інтэрфейс: апісанне на рускай

У сучаснай бытавой тэхніцы, прамысловай электроніцы і розным тэлекамунікацыйным абсталяванні досыць часта можна сустрэць аналагічныя рашэнні, хоць вырабы могуць быць практычна не звязаныя паміж сабой. Да прыкладу, практычна кожная сістэма ўключае ў сябе наступнае:

  • пэўны «разумны» вузел кіравання, які ў пераважнай большасці выпадкаў ўяўляе сабой однокристалльную микроЭВМ;
  • вузлы агульнага прызначэння накшталт буфераў ВК, АЗП, партоў уводу / высновы, ЭСПЗУ ці ж спецыялізаваныя пераўтваральнікі дадзеных;
  • спецыфічныя вузлы, якія ўключаюць у сябе схемы лічбавай налады і обрабатывания сігналаў для відэа- і радыёсістэм.

Як аптымізаваць іх ужыванне?

Каб забяспечыць максімальна эфектыўнае выкарыстанне такіх агульных рашэнняў для выгады канструктараў і саміх вытворцаў, а таксама для павышэння агульнай ступені прадукцыйнасці рознай апаратуры і спрашчэння ўжываюцца схемотехнических вузлоў, кампанія Philips задалася мэтай распрацаваць гранічна простую двухпроводные двунакіраваную шыну, якая забяспечвае найбольш прадуктыўнае межмикросхемное кіраванне. Дадзеная шына забяспечвае перадачу дадзеных праз інтэрфейс I2C.

На сённяшні дзень асартымент названага вытворцы ўключае ў сябе больш за 150 КМОП, а таксама біпалярных прылад, сумяшчальных з I2C і прызначаных для вядзення працы ў любых пералічаных катэгорыях. Пры гэтым варта адзначыць, што інтэрфейс I2C з'яўляецца першапачаткова убудаваным ва ўсе сумяшчальныя прылады, за кошт чаго яны і могуць без усялякіх складанасцяў падтрымліваць сувязь паміж сабой пры выкарыстанні адмысловай шыны. За кошт прымянення такога канструктарскага рашэння атрымалася вырашыць досыць вялікая колькасць праблем спалучэння рознага абсталявання, што з'яўляецца даволі характэрным для сферы распрацоўкі лічбавых сістэм.

асноўныя перавагі

Нават калі паглядзець коратка апісанне інтэрфейсаў UART, SPI, I2C, можна вылучыць наступныя перавагі апошняга:

  • Для працы трэба ўсяго дзве лініі - сінхранізацыі і дадзеных. Любое прылада, якое падключаецца да такой шыне, у далейшым можа праграмна адрасавацца па абсалютна ўнікальнаму адрасе. У любы момант існуе простае стаўленне, якое дазваляе вядучым працаваць у якасці вядучага-перадатчыка або вядучага-прымача.
  • Дадзеная шына прадугледжвае магчымасць мець адразу некалькі вядучых, падаючы ўсе неабходныя сродкі для вызначэння калізій, а таксама арбітраж, які дазваляе прадухіліць пашкоджанне дадзеных у тым выпадку, калі два ці большую колькасць вядучых пачынае адначасова перадаваць інфармацыю. У стандартным рэжыме прадугледжваецца толькі перадача паслядоўных Васьмібітны дадзеных пры хуткасці не больш за 100 кбіт / с, а ў хуткім рэжыме гэты парог можа быць павялічаны ў чатыры разы.
  • У мікрасхемах выкарыстоўваецца спецыяльны ўбудаваны фільтр, які досыць эфектыўна душыць воплескі і забяспечвае максімальную цэласнасць дадзеных.
  • Гранічна магчымае колькасць мікрасхем, якія могуць быць падлучаныя да адной шыне, абмяжоўваецца толькі яе гранічна магчымай ёмістасцю, якая складае 400 пф.

Перавагі для канструктараў

Інтэрфейс I2C, а таксама ўсе сумяшчальныя мікрасхемы дазваляюць істотна паскорыць працэдуру распрацоўкі, ад функцыянальнай схемы да яе канчатковага прататыпа. Пры гэтым варта адзначыць, што за кошт магчымасці падлучэння такіх мікрасхем непасрэдна да шыны без выкарыстання разнастайных дадатковых ланцугоў забяспечваецца прастор для далейшай мадэрнізацыі і мадыфікацыі сістэмы прататыпа пасродкам адключэння і падключэння ад шыны розных прылад.

Ёсць маса пераваг, якія вылучаюць інтэрфейс I2C. Апісанне, у прыватнасці, дазваляе ўбачыць наступныя годнасці для канструктараў:

  • Блокі на функцыянальнай схеме цалкам адпавядаюць мікрасхемамі, і пры гэтым забяспечваецца досыць хуткі пераход ад функцыянальных да прынцыповым.
  • Няма ніякай неабходнасці займацца распрацоўкай шынных інтэрфейсаў, таму што шына ўжо першапачаткова інтэграваная ў спецыяльныя мікрасхемы.
  • Інтэграваныя пратаколы перадачы інфармацыі і адрасаванне прылад прадастаўляюць сістэме магчымасць быць цалкам праграмна якая вызначаецца.
  • Аднолькавыя тыпы мікрасхем пры неабходнасці можна выкарыстоўваць у абсалютна розных прыкладаннях.
  • Агульны час распрацоўкі істотна зніжаецца за кошт таго, што канструктары даволі хутка могуць азнаёміцца з найбольш часта выкарыстоўваюцца функцыянальнымі блокамі, а таксама разнастайнымі мікрасхемамі.
  • Пры жаданні можна дадаваць або прыбіраць з сістэмы мікрасхемы, і пры гэтым не аказваць асаблівага ўплыву на іншае абсталяванне, падлучанае да адной шыне.
  • Агульны час распрацоўкі праграмнага забеспячэння можна значна знізіць за кошт таго, што тут дапускаецца прымяненне бібліятэкі паўторна прымяняемых праграмных модуляў.

Акрамя ўсяго іншага, варта адзначыць гранічна простую працэдуру дыягностыкі ўзніклі збояў і далейшую адладку, якой адрозніваецца інтэрфейс I2C. Апісанне кажа пра тое, што пры неабходнасці можна без ніякай цяжкасці маментальна адсочваць нават нязначныя адхіленні ў працы такога абсталявання і, адпаведна, прымаць адпаведныя меры. Таксама варта адзначыць, што канструктары атрымліваюць спецыяльныя рашэнні, якія, у прыватнасці, з'яўляюцца даволі прывабнымі для рознага партатыўнага абсталявання і сістэм, якія прадугледжваюць батарэйная харчаванне, выкарыстоўваючы I2C інтэрфейс. Апісанне на рускай таксама паказвае на тое, што яго прымяненне дазваляе забяспечыць наступныя немалаважныя вартасці:

  • Досыць высокую ступень устойлівасці да любых узніклых перашкодам.
  • Гранічна нізкае спажыванне энергіі.
  • Найшырэйшы дыяпазон сілкавальнай напругі.
  • Шырокі тэмпературны дыяпазон.

Перавагі для тэхнолагаў

Варта адзначыць, што не толькі канструктары, але і тэхнолагі досыць часта ў апошні час пачалі выкарыстоўваць спецыялізаваны I2C інтэрфейс. Апісанне на рускай паказвае даволі шырокі дыяпазон вартасцяў, якія забяспечваюцца гэтай катэгорыі спецыялістаў:

  • Стандартная двухпроводные паслядоўная шына з такім інтэрфейсам дазваляе мінімізаваць злучэння паміж мікрасхемамі, гэта значыць у іх прысутнічае менш кантактаў і патрабуецца меншая колькасць дарожак, дзякуючы чаму друкаваныя платы становяцца не такімі дарагімі і маюць значна меншыя габарыты.
  • Цалкам інтэграваны I2C інтэрфейс LCD1602 або нейкі іншы варыянт цалкам ліквідуе неабходнасць у выкарыстанні дэшыфратар адрасы, а таксама іншай знешняй дробнай логіцы.
  • Прадугледжваецца магчымасць выкарыстання адначасова некалькіх вядучых на такі шыне, дзякуючы чаму істотна паскараецца тэставанне і наступная настройка абсталявання, так як шына можа быць падключана да кампутара зборачнай лініі.
  • Даступнасць сумяшчальных з гэтым інтэрфейсам мікрасхем у VSO, SO і спецыялізаванай DIL-корпусе дазваляе істотна знізіць патрабаванні да памеру прылады.

Гэта толькі кароткі спіс пераваг, якімі адрозніваецца I2C інтэрфейс LCD1602 і іншыя. Акрамя таго, сумяшчальныя мікрасхемы дазваляюць значна павялічыць гнуткасць выкарыстоўванай сістэмы, забяспечваючы гранічна простае канструяванне розных варыянтаў абсталявання, а таксама адносна лёгкую мадэрнізацыю для далейшай падтрымкі распрацоўкі на сучасным узроўні. Такім чынам, можна распрацаваць цэлае сямейства рознага абсталявання, выкарыстоўваючы ў якасці асновы пэўную базавую мадэль.

Далейшая мадэрнізацыя абсталявання і пашырэнне яго функцый могуць ажыццяўляцца пры дапамозе стандартнага падлучэння да шыны адпаведнай мікрасхемы, якая выкарыстоўвае 2C інтэрфейс Arduino ці які-небудзь іншы з даступнага пераліку. Калі патрабуецца забеспячэнне большай ПЗУ, то ў такім выпадку дастаткова будзе толькі выбраць іншы мікракантролер, які мае павялічаны аб'ём ПЗУ. Так як абноўленыя мікрасхемы пры неабходнасці здольныя цалкам замясціць старыя, можна папросту дадаваць новыя ўласцівасці ў абсталяванне або павышаць яго агульную прадукцыйнасць з дапамогай звычайнага адлучэння ўжо састарэлых мікрасхем і далейшай замены іх на больш новае абсталяванне.

ACCESS.bus

За кошт таго, што шына мае двухпроводные прыроду, а таксама магчымасць праграмнай адрасавання, для ACCESS.bus адной з найбольш ідэальных платформаў з'яўляецца менавіта I2C інтэрфейс. Спецыфікацыя (апісанне на рускай прадстаўлена ў артыкуле) дадзенай прылады робіць яго значна больш таннай альтэрнатывай актыўна выкарыстоўваецца раней інтэрфейсу RS-232C для падлучэння рознай перыферыі да кампутараў, выкарыстоўваючы стандартны четырехконтактного коннектор.

Ўвядзенне ў спецыфікацыю

Для сучасных прыкладанняў 8-бітнага кіравання, у якіх выкарыстоўваюцца мікракантролеры, прадугледжваецца магчымасць ўстаноўкі некаторых канструктарскіх крытэрыяў:

  • поўная сістэма ў пераважнай большасці выпадку ўключае ў сябе адзін мікракантролер і іншыя перыферыйныя прылады, у тым ліку памяць і разнастайныя парты ўводу / высновы;
  • агульны кошт аб'яднання розных прылад ўнутры адной сістэмы павінна быць як мага больш мінімізаваная;
  • сістэма, на якую ўскладаюцца функцыі кіравання, не прадугледжвае неабходнасць у забеспячэнні высакахуткасны перадачы інфармацыі;
  • агульная эфектыўнасць непасрэдна залежыць ад абранага абсталявання, а таксама ад прыроды якая злучае шыны.

Для распрацоўкі сістэмы, якая поўнасцю адпавядае пералічаным крытэрам, трэба выкарыстоўваць шыну, у якой будзе выкарыстоўвацца паслядоўны інтэрфейс I2C. Нягледзячы на тое што ў паслядоўнай шыне няма прапускной здольнасці паралельных, ёй патрабуецца меншая колькасць злучэнняў, а таксама менш кантактаў мікрасхем. Пры гэтым не варта забываць пра тое, што шына ўключае ў сябе не толькі злучаюць драты, але яшчэ і розныя працэдуры і фарматы, неабходныя для забеспячэння сувязі ўнутры сістэмы.

Прылады, для сувязі якіх выкарыстоўваецца праграмная эмуляцыя інтэрфейсу I2C або адпаведная шына, павінны мець пэўны пратакол, які дазваляе папярэдзіць розныя магчымасці сутыкненняў, страты ці ж блакавання інфармацыі. У хуткіх прылад павінна быць магчымасць звязацца з павольнымі, і пры гэтым сістэма не павінна залежаць ад падлучанага да яе абсталявання, так як у адваротным выпадку ўсё паляпшэння і мадыфікацыі не змогуць быць выкарыстаны. Таксама трэба распрацоўваць працэдуру, з дапамогай якой рэальна ўсталяваць, якое канкрэтна прылада на дадзены момант забяспечвае кіраванне шынай і ў які момант часу. Акрамя гэтага, калі розныя прылады, якія маюць розныя тактавыя частоты, падлучаныя да адной шыне, трэба вызначыцца з крыніцай яе сінхранізацыі. Усім гэтым крытэрам адпавядае I2C інтэрфейс для AVR і любыя іншыя з гэтага пераліку.

Асноўная канцэпцыя

Шына I2C можа падтрымліваць любыя выкарыстоўваюцца тэхналогіі вырабу мікрасхем. Інтэрфейс I2C LabVIEW і іншыя аналагічныя яму прадугледжваюць выкарыстання двух ліній для пераносу інфармацыі - дадзеных і сінхранізацыі. Любое прылада, падлучанае такім чынам, распазнаецца за кошт унікальнага адрасы па-за залежнасці ад таго, ці ідзе гаворка пра ВКІ-буферы, мікракантролеры, памяці або інтэрфейсе клавіятуры, і пры гэтым можа працаваць у якасці прымача або перадатчыка ў залежнасці ад таго, для чаго канкрэтна прызначаецца дадзенае абсталяванне.

У пераважнай большасці выпадкаў ВКІ-буфер ўяўляе сабой стандартны прыёмнік, а памяць можа не толькі прымаць, але і перадаваць розныя дадзеныя. Акрамя ўсяго іншага, па працэсе перамяшчэння інфармацыі прыборы можна класіфікаваць як кіраваныя і вядучыя.

У дадзеным выпадку вядучым завецца прылада, якім ініцыюецца перадача дадзеных, а таксама выпрацоўваюцца сігналы сінхранізацыі. Пры гэтым любыя адрасаванай прыборы будуць лічыцца ў адносінах да яго кіраванымі.

Інтэрфейс сувязі I2C прадугледжвае наяўнасць адразу некалькіх вядучых, гэта значыць больш чым адна прылада, здольнае ажыццяўляць кіраванне шынай, здольна да яе падлучацца. Магчымасць выкарыстання больш аднаго мікракантролера ў адной шыне кажа пра тое, што больш чым ад аднаго вядучага можа ажыццяўляцца перасылка ў пэўны момант часу. Каб ліквідаваць патэнцыйны хаос, які рызыкуе з'явіцца пры ўзнікненні такой сітуацыі, распрацавана спецыялізаваная працэдура арбітражу, якую выкарыстоўвае I2C інтэрфейс. Пашыральнікі і іншыя прыборы прадугледжваюць падлучэнне прылад да шыны па так званаму правілу мантажнага І.

Генерацыя синхросигнала ўяўляе сабой абавязак вядучага, і кожны з іх выпрацоўвае уласны сігнал у працэсе перасылкі дадзеных, і ў далейшым ён можа змяняцца толькі ў тым выпадку, калі яго «выцягвае» павольнае вядзёнае прылада або іншае якое вядзе пры ўзнікненні сутыкнення.

агульныя параметры

Як SCL, так і SDA ўяўляюць сабой двунакіраваныя лініі, якія падключаюцца да станоўчага крыніцы харчавання пры дапамозе падцягваўся рэзістара. Калі шына аказваецца абсалютна свабоднай, кожная лінія знаходзіцца ў высокім становішчы. Выходныя каскады прылад, якія падлучаныя да шыны, павінны быць з адкрытым сцёкам або адкрытым калектарам, каб магла забяспечвацца функцыя мантажнага І. Інфармацыя праз I2C інтэрфейс можа перадавацца пры хуткасці не больш за 400 кбіт / с у хуткім рэжыме, у той час як у стандартным хуткасць не перавышае 100 кбіт / с. Агульная ж колькасць прылад, якія могуць быць адначасова падлучаныя да шыны, залежыць толькі ад аднаго параметру. Гэта ёмістасць лініі, складнік не больш за 400 пф.

пацвярджэнне

Пацверджанне ўяўляе сабой абавязковую працэдуру ў працэсе перадачы дадзеных. Вядучы генеруе адпаведны імпульс сінхранізацыі, у той час як перадатчык адпускае лінію SDA на працягу дадзенага сінхраімпульсу як пацверджанне. Пасля гэтага прыёмнік павінен забяспечыць стабільнае ўтрыманне лініі SDA на працягу высокага стану сінхраімпульсу ў стабільна нізкім стане. У дадзеным выпадку трэба абавязкова браць пад увагу час ўстаноўкі і ўтрымання.

У пераважнай большасці выпадкаў адрасаваны прыёмнік павінен у абавязковым парадку згенераваць пацверджанне пасля кожнага атрыманага байта, і адзіным выключэннем тут з'яўляюцца толькі тыя сітуацыі, калі пачало пасылкі ўключае ў сябе адрас CBUS.

Калі ў кіраванага-прымача няма магчымасці адправіць пацвярджэнне ўласнай адрасы, трэба пакідаць лінію дадзеных у высокім стане, і пасля гэтага ў вядучага будзе магчымасць выдачы сігналу "Стоп", які перапыніць адпраўку ўсёй інфармацыі. Калі ж адрас быў пацверджаны, але пры гэтым кіраваны не можа на працягу доўгага часу больш прымаць якія-небудзь дадзеныя, вядучым таксама павінна быць перапынена пасылка. Каб гэта зрабіць, якое вядуць не пацвярджае наступны атрыманы байт і проста пакідае лінію дадзеных у высокім стане, з прычыны чаго вядучым генеруецца сігнал "Стоп".

Калі ж у працэдуры перасылкі прадугледжваецца наяўнасць вядучага-прымача, то ў такім выпадку ён павінен паведамляць кіраванаму аб заканчэнні праведзенай перадачы, і робіцца гэта з дапамогай непацвярджэння апошняга атрыманага байта. Пры гэтым кіраваны-перадатчык адразу вызваляе лінію дадзеных, каб вядучы мог выдаць сігнал "Стоп" або зноў паўтарыць сігнал "Старт".

Каб праверыць працаздольнасць абсталявання, можна паспрабаваць ўвесці стандартныя прыклады скетчоў для інтэрфейсу I2C ў Arduino, як на фота вышэй.

арбітраж

Вядучым можа пачынацца перасылка інфармацыі толькі пасля поўнага вызвалення шыны, але пры гэтым два і больш вядучых могуць правесці генераванне сігналу пра старт пры часе мінімальнага ўтрымання. Гэта ў канчатковым выніку прыводзіць да вызначанага сігналу "Старт" на шыне.

Праца арбітражу ажыццяўляецца на шыне SDA ў тыя моманты, пакуль SCL-шына знаходзіцца ў высокім стане. Калі адзін з вядучых пачынае перадаваць на лінію дадзеных нізкі ўзровень, але пры гэтым іншай - высокі, то апошні цалкам адключаецца ад яе, таму што стан SDL з'яўляецца не якія адпавядаюць высокаму стане яго ўнутранай лініі.

Працяг арбітражу можа ажыццяўляцца на працягу некалькіх біт. За кошт таго, што спачатку ажыццяўляецца перадача адрасы, а потым дадзеных, арбітраж можа мець працягласць да заканчэння адрасы, а калі вядучымі будзе адрасавацца адно і тое ж прылада, то ў такім выпадку ў арбітражы будуць прымаць удзел і розныя звесткі. З прычыны такой схемы арбітражу пры ўзнікненні якіх-небудзь сутыкненняў дадзеныя не згубяцца.

Калі вядучы прайграе арбітраж, то ў такім выпадку ён можа выдаваць імпульсы сінхранізацыі ў SCL да канца байта, на працягу якога і быў страчаны доступ.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 be.delachieve.com. Theme powered by WordPress.