You are on page 1of 7

ТЕМА 11: Вход/изход на данни.

Интерфейси
1. Интерфейс- същност, класификация

А) Същност

Интерфейсът е наборът от проводници и магистали , електрически схеми, а така също


и протоколи, чрез които се извършва обема на информация между устройстватана
микропроцесорната система и външните устройства.

Интерфейсът е устройство, което преобразува сигналите от системната магистрала в


стандартизирани сигнали към външните устройства и обратно.

В микропроцесорната система всяко устройство се представя чрез набор от клетки и


всяка клетка трябва да има собствен адрес. Взаимодействието на микропроцесора, с
което и да е устройство се осъществява само чрез четене или запис на данните в
клетките, чрез които е представено това устройство. Клетките на интерфейсните схеми
играят ролята на „представители“ на външните устройства. Те се намират на
определени адреси в адресното пространство и независимо от това какво устройстово
ще се включи към даден порт, взаимодействието с него ще е с едни и същи клетки. По
такъв начин използването на интерфейсни схеми позволява адресното пространство на
МПС да остава винаги едно и също, независещо от това какви външни устройства ще се
включат.

Б) Класификация

Взаимодействието между МП, паметта и интерфейсите на външните устройства се


осъществява чрез системната магистрала, която по същество представлява набор от
проводници. Следователно всички устройства, които са свързани към тази магистрала,
трябва да имат еднакви електрически характеристики и да са пригодени за работа по
една обща логика и времедиаграма.

Видове интерфейси- Интерфейсите могат да се класифицират по няколко показатели.


Основен показател е броят на проводниците, които се използват за връзка с външното
устройство и свързания с това начин на предаване на данните. В най-икономичния
случай се използват два проводника, по които данните се предават последователно бит
по бит. Съответно интерфейсът се нарича последователен (сериен).

Ако се използват повече проводници за връзка с външното устройство, става възможно


едновременното предаване на няколко бита. Съответно интерфейсът се нарича
паралелен.

Предимството на паралелния интерфейс в сравнение с последователния е това, че за


едно и също време предава по-голям обем данни (8 пъти при 8-битова връзка, приедна
и съща скорост на предаване на сигналите в линията).

2. Начини за организиране на вход-изход на данни


Най-лесно се реализира вход-изход, когато микропроцесорът е по- бавен от външното
устройство , когато приема данни от него. При това положение инстукциите за вход и
изход могат да се изпълняват една след друга без опасение, че някои данни няма да
бъдат записани или прочетени, понеже и в двата случея устройството, което предава
данни, е по-бавно от приемащото. В МПС, за организиране на обмена с външните
устройства, се използват няколко начина, които осигуряват съгласуваност на скоростта
на обмен на информация и гарантират достоверност на данните.

Най- лесно се реализира вход –изход, когато МП е по- бавен от външното устройство в
случаите на изваждане на данни и по-бърз от външното устройство, когато приема
данни от него. При това положение инструкциите за вход и изход могат да се
изпълняват без опасение, че някои данни няма да бъдат записани или прочетени,понеже
и в двата устройството, което предава данни, е по-бавно от приемащото. На практика
не може да се разчита на такова съвпадение и затова се използват по-сложни решения,
като в зависимост от бързодействието на външното устройство и обема на обменяните
данни се избира най-подходящото за конкретния случай.

Когато обменът е с външно устройство, което е по-бавно от МП, тогава в програмата се


включват инструкции, които периодично проверяват порта, в който се отразява
информацията за готовността на външното устройство. Обменът на данни към
устройството се осъществява едва след като е получена информацията, че то има
готовност за тази операция. Този начин се нарича програмен вход/изход.

При втория начин, за разлика от първия, програмата не проверява портовете за


готовност на външното устройство. Тази функция е предоставена на специален вход за
прекъсване. При готовност от страна на външното устройство за обменяне на данни на
този вход се подава сигнал. Под действие на този сигнал МП прекъсва програмата,
която изпълнява в момента и изпълнява инструкция за обмен с външното устройство.

Този начин се нарича вход/изход чрез прекъсвания.

При третия начин за обмен с външните устройства се използва специално устройство


(микросхема). МП задава еднократно чрез запис в регистрите за режим функциите на
тази схема. След това тя самостоятелно анализира готовността на външното
устройство, към което е включено и извършва всички необходими операции за обмен
на данни. В този процес МП не участва и може да работи по-изпълнително на своя
програма. Обменът се извършва директно между устройството и предавателно заделена
област от паметта, затова този начин се нарича директен достъп до паметта (ДДП).

Устройството, което осъществява това, се нарича контролер за директен достъп до


паметта.

3.Паралелно и последователно предаване на данни

Паралелният интерфейс обезпечава едновременно едновременнопредаване на няколко


бита, най-често 8, по съответния брой линии. Използва се когато е необходимо да се
обменя голям обем данни с висока скорост.
При паралелна връзка на интерфейса с външните устройства няма строго фиксирани
стандарти. Ако обменът на данни се извършва в зависимост от наличието на
синхронизиращ сигнал, тогава се приема, че връзката е синхронна. Ако обменът на
данни се извършва в съответствие с вояавата на сигнали за готовност, потвърждение и
други сигнали за състоянието на интерфейса и устройството за вход-изход, тогава се
приема, че обменът е асинхронен.

Паралелният интерфейс може да бъде разработен с използването на един набор


проводници за вход и за изход или по отделни проводници за вход и отделно за изход,
както е показано на фиг. 1.4.1. Може да се реализира и паралелен интерфейс само за
вход или само за изход.

Интерфейсът от фиг.1.4.1 представлява най-често срещания случай на паралелен


интерфейс с отделни проводници за вход и за изход на данни и проводници за
готовност и потвърждение.

Процедурата при изход на данни е следната:

 В изходно състояние сигнал „готовност“ е равен на лог. 0, асигнал


„потвърждение“ – на лог. 1.
 МП чрез адресната шина и сигнал М/IO=0 избира изходния регистър на
интерфейса. С управляващ сигнал WR данните се записват в този регистър.
 Интерфейсната схема установява сигналът „готовност“ в лог. 1, с което
външното устройство се известява, че за него има записани данни.
 Външното устройство приема данните и връща сигнал „потвърждение“ = лог.0.
 Интерфейсът се връща в изходно състояние, при което сигналът „готовност“
става равен на лог. 0. След него и външното устройство променя сигнала
„потвърждение“ в лог. 1. С това процедурата за изход на един байт данни
завършва и интерфейсът е готов за обмен на следващия байт.

Процедурата при вход на данни е следната:


 Когато външното устройство има готови данни, които ще се въвеждат в МПС,
сигналът „готовност“ се установява в лог. 1 и данните се записват във входния
регистър на интерфейса.
 Интерфейсът установява „потвърждение“ в лог.1 и генерира заявка за
прекъсване, а външното устройство променя сигнал „готовност“ в лог.0. Докато
сигнал „потвърждение“ е равен на лог.1, външното устройство не може да
направи нов запис във входния регистър.
 Чрез процедурата за сканиране или прекъсване МП чрез управляващия сигнал
RD прочита съдържанието на входния регистър.
 След прочитането на входния регистър, интерфейсът променя сигнал
„потвърждение“ в лог.0. С това процесът приключва и МПС е готова да приема
следващия байт.

4. Асинхронно и синхронно предаване на данни

А) Принцип на асинхронно предаване на данни

За реализацията на асинхронно последователно предаване се използват интерфейсни


схеми, данните между които се предават последователно- бит по бит. За физическата
връзка между интерфейсните схеми може да се използват само два проводника. За това
този тип връзка се използва основно за пренасяне на данни на големи разстояния. При
това до разстояние 500м връзката може да бъде непосредствено между интерфейсните
устройства. При по-големи разстояния интерфейсите на предавателната и приемната
страни се включват към модеми, които обезпечават пренасянето на информация по
линията. Ако се използва една линия за предаване от интерфейс А към интерфейс Б, и
отделна линия за обратна връзка- от Б към А, е възможно обменът на данни да става
едновременно в двете посоки- режим на пълен дуплекс.

Принципът на асинхронен обмен на данни се състои в това, че между устройствата се


предава последователност от символи, като всеки символ представлява самостоятелно
завършено съобщение и може да бъде предаден в произволен момент. Символът
съдържа от 5 до 8 бита данни и няколко допълнителни бита. Предаването на бита
несинхронизира с приемната страна.

Линията която не е заета с предаване на символ, е в състояние лог.1.


Началото на предаване на символа започва с преход от състояние лог.1 в лог.0, тоест
първият бит на символа винаги е лог.0 и в приемната страна той служи като знак, че по
линията е започнало предаване на символ, за това се нарича стартов бит. След
стартовия бит се предават последователно от 5 до 8 бита данни, като се започва от най-
младшия бит. След това се предава бит за контрол. Стойността на този бит се определя
като се проверява дали броят на битовете от предадените данни, имащи стойност от
лог.1,е четен или нечетен. Символът завършва с предаването на сигнал за край- т. нар.
стопов бит. Този сигнал е с ниво лог.1. Времето между предаването на символите не се
регламентира и може да бъде произволно.

Б) Принцип на синхронно предаване на данни

При синхроннто последователно предаване между два интерфейса обменяните данни,


също както при асинхронното, се предават по линия последователно- бит по бит, като
символът също може да има от 5 до 8 бита за данни и незадължителен контролен бит за
четност и нечетност. Разликата е , че няма стартови и стопови битове и символите се
предават един след друг без пауза. За да се определи момента, в който на входа на
приемника постъпва нов бит, е необходим допълнителен сигнал за синхронизация с
предавателя. Затова при синхорнното предаване на данни се използва сигнал за
синхронизация, който се предава по отделна линия между предаващия и приемния
интерфейси. За да може приемника да разпознае началото на предаване на данни,
предавателят започва предаването на данни със специална синхронизираща
последователност от битове, наречена синхросимвол. Синхросимволът е число
представено чрез последователност от битове. Сигналът за синхронизация е
електрически сигнал с определена честота, която се използва за определяне на
моментите за изпращане и приемане на отделните битове от символите, вкл. и на
битовете от синхросимвола. При стартиране на предаването приемникът започва да
проверява приемната последователност за налиие на синхросимвол и с приемането му
се започва началото на обмена на данни

Съществува вероятност последователността от битове, каквато има синхросимвола, да


се съдържа и в предаваните данни. Понеже приемникът проверява непрекъснато
приеманите битове за наличие на синхросимвол, в този случай той ще вземе грешно
решение, че това е начало на нов обмен на данни.
Предаващият и приемният интерфейси, освен регистър за задаване на параметрите на
символите, трябва да съдържат и регистър за синхросимвол. Съдържанието на
регистрите в предавателната и приемната страна трябва да бъде еднакво.

5. Комуникация по 12С шина при микроконтролерите

I2C e протокол за шина , който се използва за прехвърляне на данни между две


системи.

Предаването и получаването на информацията между две или повече от две устройства


изисква комуникационен път, наречен като шинна система. I2C шината е двупосочна
двупроводна последователна шина, която се използва за пренос на данни между
интегрални схеми. I2C означава „Интер интегрална схема“. За първи път е представен
от полупроводниците на Philips през 1982 г. I2C шината се състои от три скорости на
трансфер на данни, като стандартен, бърз режим и високоскоростен режим. I2C шината
поддържа 7-битово и 10-битово устройство за адресно пространство и неговата работа
се различава при ниски напрежения.

I2C е протокол за серийна шина, състоящ се от две сигнални линии като SCL и SDL
линии, които се използват за комуникация с устройствата. SCL означава „серийна
тактова линия“ и този сигнал винаги се задвижва от „главното устройство“. SDL
означава „серийна линия за данни“ и този сигнал се управлява от периферните
устройства на I2C.

Протоколът I2C работи в три режима като: бърз режим, високоскоростен режим и
стандартен режим, при които скоростта на данни в стандартен режим варира от 0Hz до
100Hz, а данните в бързия режим могат да се прехвърлят със скорост от 0Hz до 400
KHz и режим на висока скорост с 10 KHz до 100KHz.

Протоколът I2C шина се използва най-често в главна и подчинена комуникация, при


което главната комуникация се нарича „микроконтролер“, а подчинената се нарича
други устройства във вградената система. Броят на подчинените устройства е свързан с
главното устройство с помощта на I2C шината, при което всеки подчинен се състои от
уникален адрес, който да го комуникира.

Следните стъпки се използват за предаване от главното устройство към подчиненото


устройство:

Етап 1: Първо, главното устройство издава условие за стартиране, за да информира


всички подчинени устройства, така че те да слушат на линията за серийни данни.
Стъпка 2: Главното устройство изпраща адреса на целевото подчинено устройство,
което се сравнява с адресите на всички подчинени устройства като свързани към
линиите SCL и SDL. Ако някой адрес съвпада, това устройство е избрано, а останалите
всички устройства са изключени от линиите SCL и SDL.

Стъпка 3: Подчиненото устройство отговаря с потвърждение на главното устройство,


след което се установява комуникация между главното и подчиненото устройство на
шината за данни.

Стъпка 4: И главното, и подчиненото устройство получават и предават данните в


зависимост от това дали комуникацията се чете или записва.

Стъпка 5: След това главното устройство може да предаде 8-битови данни на


приемника, който отговаря с 1-битово потвърждение.

Предаването и получаването на информацията стъпка по стъпка последователно по


отношение на тактовите импулси се нарича I2C протокол. Това е междусистемен
протокол и протокол за къси разстояния, което означава, че се използва в платката за
комуникация на главното и подчиненото устройство.

You might also like