WWW.REFERATCENTRAL.ORG.UA - Я ТУТ НАВЧАЮСЬ

... відкритий, безкоштовний архів рефератів, курсових, дипломних робіт

ГоловнаІнформатика, Компютерні науки → Обмін даними між зовнішніми пристроями та мікропроцесорною системою. Переривання. Система переривань. Сегментна організація пам’яті. Завантаження ОС L - Реферат

Обмін даними між зовнішніми пристроями та мікропроцесорною системою. Переривання. Система переривань. Сегментна організація пам’яті. Завантаження ОС L - Реферат


КОНТРОЛЬНА РОБОТА
на тему:
Обмін даними між зовнішніми пристроями та мікропроцесорною системою. Переривання. Система переривань. Сегментна організація пам'яті. Завантаження ОС Linux. Ініціалізація ядра
1. Обмін даними між зовнішніми пристроями та мікропроцесорною системою
Послідовне введення-виведення даних
Найбільш розповсюджений вид зв'язку між різними системами (чи комп'ютерами) - це послідовний обмін. У цьому випадку байт даних передається по єдиному проводі, біт за бітом, із забезпеченням синхронізації між приймачем і джерелом даних. Очевидна перевага послідовної передачі даних полягає в тому, що вона вимагає невеликої кількості ліній зв'язку.
Існує безліч стандартних послідовних протоколів передачі даних, що застосовуються в мікроконтролерах. У деяких мікроконтролерах ці протоколи реалізуються внутрішніми схемами, розміщеними на кристалі, що дозволяє спростити розробку різних програм.
Асинхронний послідовний обмін
Найбільш розповсюджена форма послідовного зв'язку - асинхронний обмін, при якому байт даних посилається як пакет, що включає інформацію про початок і кінець передачі даних, а також інформацію для контролю помилок.
Першим передається не біт даних, а старт-біт, що вказує на початок передачі даних (початок пакета). Цей біт використовується приймачем для синхронізації процесу читання даних, що випливають за старт-старт-битому (молодший біт даних йде першим). Після бітів даних може випливати біт парності (контрольний біт), що використовується для перевірки правильності отриманих даних. Існує два типи перевірки на парність. Перевірка на непарність (Odd) означає, що число одиниць у пакеті даних, включаючи біт парності, повинно бути непарним (наприклад, 0х55 буде мати біт парності рівним 1, щоб зробити число одиничних бітів рівним п'яти, тобто непарним). Перевірка на парність (Even), навпаки, означає що число одиничних бітів повинно бути парним (наприклад, при передачі числа 0х55 біт парності буде дорівнює 0).
У деяких мікроконтролерах значення біта парності повинне визначатися програмно, а потім міститися в регістр. Простий алгоритм реалізації цієї процедури полягає у виконанні логічної операції " виключне АБО" (XOR) над усіма бітами переданого байта. Для мікроконтролера 8051 дана процедура виконується за допомогою наступної програми:
mov Count, 8
mov A,0
P_Loop:
xrl A, Char
rrc A
djnz Count,P_Loop ;Обробити 8 біт
;Очистити регістр "А"
;Адреса повернення після обробки кожного біта
;Операція XOR над молодшими бітами
;Зрушити Char, щоб перейти до наступного біту
; Повторити 8 разів
Молодший біт регістра "А" буде містити біт парності (Even) для операнда "Char". Кількість одиничних бітів разом з бітом парності буде парним числом. Щоб реалізувати перевірку на непарність, необхідно інвертувати молодший біт у регістрі "А".
За бітом парності випливає стоп-біт, що використовується приймачем для обробки кінця передачі пакета.
Асинхронний пакет даних показаний на рис. 1. Існує набір параметрів, що повинний бути відомий при реалізації обміну. Одним з таких параметрів є число переданих біт даних, що визначається типом прийомного і передавального пристроїв. Пакет на рис. 1 містить тільки 5 біт даних (таке число біт використовувалося в телетайпах), але можливі пакети довжиною до 8 біт.
Поряд з бітами парності ("odd") чи непарності ("even") можливі інші варіанти контрольних бітів: "no", "mark" і "space". "No" означає відсутність біта парності в пакеті. "Mark" чи "space" означає, що замість біта парності завжди посилається "1" ("mark") чи "0" ("space"), відповідно. Ці варіанти контрольних бітів використовується досить рідко - у тих випадках, коли необхідно дати приймачу додатковий час на обробку пакета.
Рисунок 1 Асинхронна послідовна передача даних
Кількість стоп-бітів також може бути різним. Другий стоп-біт може вводитися для тієї ж мети, що і контрольні біти "mark" і "space" - щоб дати приймачу більше часу для обробки прийнятого пакета.
Практично всі сучасні пристрої використовують для асинхронного обміну формат даних "8-N-1", що означає передачу 8 біт даних, відсутність біта парності й один стоп-біт. Біт парності і додатковий стоп-біт звичайно не вимагаються для послідовного зв'язку.
Найбільш популярний протокол асинхронного послідовного зв'язку називається "RS-232", що у даний час є міжнародним стандартом. Це дуже старий стандарт, використовуваний для зв'язку комп'ютерів.
Асинхронний приймач чекає приходу старт-біт, коли на лінії встановлюється низький рівень. Через половину часу передачі одного біта (тривалість цього часу задається синхросигналом) лінія знову опитується, якщо на лінії усе ще встановлений низький рівень сигналу, то приймач чекає один період і зчитує дані (рис. 2). Якщо ж на лінії виявляється високий рівень сигналу, то приймач вважає, що відбулася помилка, і дані не приймаються. Цей метод використовується як при апаратній, так і при програмній реалізації асинхронного прийому даних. У програмно реалізованих приймачах використовуються програмні цикли для відліку затримок часу.
Інший розповсюджений метод асинхронної послідовної передачі даних - це використання коду типу "Манчестер" ("manchester"). При цьому методі передача кожного біту даних синхронізується імпульсом, а значення біта ("0" чи "1") визначається проміжком часу до наступного імпульсу (рис. 3). Після передачі заданого числа бітів даних випливає стоп-імпульс, а потім прийом даних припиняється. Особливість манчестерського кодування полягає в тім, що бит якісно відрізняється від "1" чи "0". Це дозволяє приймачу визначити, чи є дані, що надходять, початком чи серединою посланого пакета (в останньому випадку дані не будуть прийматися до приходу старт-бита). Манчестерське кодування гарно підходить для використання у випадках, коли потік переданих даних може бути легко перерваний. Тому такий метод передачі даних є основним для зв'язку за допомогою інфрачервоного випромінювання, наприклад, у пульті дистанційного керування телевізором.
Рисунок 2. Читання даних при асинхронному послідовному обміні
Рисунок 3 Послідовний обмін із манчестерським кодуванням
Синхронний послідовний обмін
При реалізації синхронного обміну разом з даними посилається синхросигнал, що використовується приймачем для стробування даних (рис. 4).
Рисунок 4 Форма сигналів при синхронній передачі даних
Типова схема для перетворення послідовних даних у паралельні показана на рис. 5. У цій схемі використовуються дві мікросхеми 8-розрядних регістрів типу 74LS374. Для більшості додатків не потрібно включення другого регістра. Це перетворення може також бути виконане за допомогою спеціальної мікросхеми, але деякі воліють використовувати 8-розрядні регістри, тому що їх звичайно легше знайти, чим інші типи мікросхем
Loading...

 
 

Цікаве