Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Особенности последовательного интерфейса микроконтрол-леров семейства MCS51Содержание книги
Поиск на нашем сайте Последовательный порт в контроллерах MCS51 позволяет осуществлять последовательный дуплексный ввод-вывод в синхронном и асинхронном режимах с разными скоростями обмена. Помимо обычного ввода-вывода, в нем предусмотрена аппаратная поддержка взаимодействия нескольких микроконтроллеров.
Рис. 4. Схема интерфейса RS-232C. Схематически контроллер порта можно представлен на рис. 5. Как видно из рисунка, регистр SBUF, доступный пользователю для чтения и записи, представляет собой физически два регистра, в один из которых можно только записывать, а из другого читать. Контроллер позволяет дуплексный обмен данными, т.е. одновременно может передавать и принимать информацию по линиям TxD (P3.1) и RxD (P3.0) соответственно.
Рис. 5. Контроллер последовательного порта Передача инициируется записью в SBUF байта данных. Этот байт переписывается в сдвиговый регистр, из которого пересылается бит за битом. Как только байт будет переслан целиком, устанавливается флаг TI, сигнализирующий о том, что контроллер готов к передаче очередного байта. Прием осуществляется в обратном порядке: после начала процесса приема принятые биты данных последовательно сдвигаются в сдвиговом регистре, пока не будет принято их установленное количество, затем содержимое сдвигового регистра переписывается в SBUF и устанавливается флаг RI. После этого возможен прием следующей последовательности бит. Необходимо отметить, что запись принятого байта из сдвигового регистра в SBUF происходит только при условии, что RI=0, поэтому при считывании пользовательской программой очередного байта из SBUF ей необходимо сбрасывать этот флаг, иначе принятый в сдвиговый регистр, но не записанный в SBUF, следующий байт будет безвозвратно утерян. Контроллер последовательного порта может работать в одном из четырех режимов (один синхронный и три асинхронных), различающихся скоростями обмена и количеством передаваемых/при-нимаемых бит: · Режим 0 (синхронный): данные передаются и принимаются через RxD, TxD является синхронизирующим (выдает импульсы сдвига). Скорость в этом режиме фиксирована (1/12 частоты тактового генератора). · Режим 1 (8 бит данных, асинхронный, переменная скорость). Передаются 10 бит: старт-бит, 8 бит данных (SBUF) и стоп-бит. · Режим 2 (9 бит данных, асинхронный, фиксированная скорость). Передаются 11 бит: старт-бит, 8 бит (SBUF), бит TB8/RB8 (посылка/прием соответственно) и 1 стоп-бит. Биты ТВ8 и RB8 содержатся в регистре SCON (биты 3 и 2 соответственно), первый устанавливается программно, а второй содержит 9-й бит принятой комбинации. С помощью них можно организовать, например, контроль четности или обмен с двумя стоп-битами. · Режим 3 (9 бит данных, асинхронный, переменная скорость). То же, что и режим 2, только скорость обмена переменная. Режим контроллера, а также другие параметры его работы задаются в регистре SCON (098h) (рис. 6). Описание битов регистра приведены в таблице 1.
Рис. 6. Регистр SCON микроконтроллера
Таблица 1. Назначение битов регистра SCON.
Скорости обмена в разных режимах различаются. В двух из них скорости фиксированы, а в двух других переменные. Рассмотрим подробнее способы задания скорости обмена в каждом из режимов. · Режим 0. Фиксированная скорость обмена. В этом режиме скорость вычисляется следующим образом: · Режим 2. Скорость обмена зависит от значения бита SMOD (старший бит в регистре PCON(087h)). Если SMOD=0 (по умолчанию), то скорость определяется как 1/64 тактовой частоты. SMOD=l удваивает это значение. В общем случае: · Режимы 1 и 3. В этих режимах порт можно синхронизировать от двух источников: от встроенного генератора импульсов и от таймера 1. Источник синхронизации определяется значением бита BD (старший бит регистра ADCON(0D8h)): если BD=1, то используется встроенный генератор импульсов, в противном случае используется таймер 1. Встроенный генератор импульсов делит тактовую частоту МП на 2500 и, если SMOD=l, то полученное значение удваивается. Например, при тактовой частоте МП 12MHz можно получить стандартные скорости 12MHz/2500=4800 бод и (12MHz/2500)*2=9600 бод. В общем случае:
При использовании таймера 1 скорость обмена определяется временем переполнения таймера и значением бита SMOD:
где TMlOVrate – время переполнения таймера 1, зависящее от режима его работы. Таймер 1 может быть установлен как «таймер» или как «счетчик», в любом режиме работы. Прерывание от таймера при этом обычно запрещается. Чаще всего таймер 1 устанавливают как «таймер» в режиме 2: для этого старшая тетрада регистра TMOD(089h) должна равняться 0010b. При таком использовании после каждого переполнения регистра таймера ТL1 в него загружается значение из регистра ТН1. Скорость обмена в этом случае вычисляется по формуле:
В таблице 2 приведены способы задания некоторых стандартных скоростей обмена.
Таблица 2. Способы задания стандартных скоростей обмена.
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
Последнее изменение этой страницы: 2017-01-25; просмотров: 334; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.216.156 (0.009 с.) |