Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Режим 2. Асинхронный девятиразрядный последовательный порт с фиксированной скоростью передачи

Обнулить флаг передатчика TI ;||+---------Обнулить девятый бит приёмника RB8 ;|+----------Обнулить девятый бит передатчика TB8 ;+-----------Разрешить работу приёмника ;||+------------Проверять ошибку кадра (приём нулевого бита на месте стоп-бита) ;++-------------Включить асинхронный режим работы последовательного порта   ;Настроить режим работы таймера T1 ---------------------------------------------------------------------------------------------- anl TMOD,#00001111b;Подготовить таймер T1 к настройке (таймер T0 не трогать!) orl TMOD,#00100000b;перевести таймер T1 вo второй режим работы (таймер T0 не трогать!) ;| ;||++--------------Перевести таймер T1 в режим автозагрузки ;|+----------------Синхронизироваться от внутреннего генератора ;+-----------------Запретить управление таймером от ножки INT1   ;Настроить таймер на генерацию 3-x микросекундного интервала времени-------------------------------------------------------------- mov TH0, #fdh;Загрузить старший байт таймера mov TL0, #fdh;Загрузить младший байт таймера setb TR1;Включить таймер 1   ;********************************************************************************************************************************* ;РАБОТА С ПОСЛЕДОВАТЕЛЬНЫМ ПОРТОМ ;********************************************************************************************************************************* JNB RI, $;Подождать окончания приёма байта по последовательному порту MOV A, SBUF;и скопировать его в аккумулятор Рисунок 8. Программа приёма одного байта по последовательному порту. Возможность работы в асинхронном режиме позволяет использовать последовательный порт для связи с универсальным компьютером через его последовательный COM порт. К сожалению уровни последовательного порта микроконтроллера не совпадают с уровнями последовательного порта компьютера, поэтому для подключения микроконтроллера к последовательному порту компьютера используются специализированные микросхемы согласования уровней. Эти же микросхемы обеспечивают защиту микроконтроллера от вывода из строя статическим потенциалом при подключении разъёмов. Обычно для работы используются только сигнальные цепи COM-порта компьютера. Тем не менее, оставшиеся буферы интерфейсной микросхемы могут быть использованы для контроля питания микроконтроллерной схемы. Типовая схема подключения компьютера к последовательному порту микроконтроллеров семейства MCS-51 с применением микросхемы ADM3202 приведена на рисунке 9. Рисунок 9. Подключение последовательного порта микроконтроллеров семейства MCS-51 к последовательному COM порту компьютера. Использование последовательного порта компьютера позволяет не только управлять микроконтроллерным устройством, используя клавиатуру компьютера, но и отображать внутреннюю информацию этого устройства, используя дисплей компьютера. Это значительно расширяет возможности ввода и вывода информации в микроконтроллерных устройствах. В последнее время дополнительно появилась возможность заносить программу во внутреннюю память программ наиболее современных микроконтроллеров.

Обнулить флаг приёмника RI ;

|| ;

В этом режиме последовательный порт работает на фиксированной скорости передачи также как и в нулевом режиме работы. Скорость передачи определяется значением бита SMOD и при частоте кварцевого резонатора 12 МГц составляет 375 кбит/с то есть для современных микроконтроллеров может превышать скорость передачи 1 Мбит/с.

Основной особенностью работы последовательного порта в этом режиме является передача девятого информационного бита, который может быть использован для контроля достоверности передаваемой информации. Для вычисления чётности передаваемого байта можно воспользоваться аппаратным вычислителем, подключенным к аккумулятору микроконтроллера A. Результат вычисления чётности байта сохраняется в бите чётности P регистра PSW, откуда его можно скопировать в девятый информационный бит последовательного порта TB8, расположенный в регистре управления последовательным портом SCON.

Ещё большие возможности для построения устройств предоставляет девятиразрядный режим работы при реализации многопроцессорных систем. Параллельные порты микроконтроллеров семейства MCS-51 построены по схеме с открытым стоком. Это позволяет объединять несколько выходов передатчиков в одну шину. Такое выполнение выходных каскадов микросхем облегчает построение многопроцессорных систем. В многопроцессорной системе один процессор должен быть главным (master), остальные - подчинёнными (slave). Естественно команды главного процессора должны восприниматься подчинёнными процессорами, поэтому выход передатчика главного процессора соединяется со входами приёмников подчинённых. Выходы же передатчиков подчинённых процессоров объединяются и подключаются ко входу приёмника главного процессора. Схема примера многопроцессорной системы приведена на рисунке 10.

Рисунок 10. Схема соединения нескольких микроконтроллеров между собой по последовательному порту, работающему в асинхронном режиме.

Команды главного процессора могут быть обращены к конкретному подчинённому процессору, поэтому в состав команд включается адрес подчинённого процессора. При работе в шине необходимо уметь отличать адресную информацию от данных. Это можно осуществить при помощи девятого бита. Обычно при передаче адреса в девятый бит записывают единицу, а в байтах данных и команд - 0. Таким образом микроконтроллер, даже подключившийся к шине позднее остальных, легко может осуществить синхронизацию с многопроцессорной шиной. Временная диаграмма работы многопроцессорной шины приведена на рисунке 11.

Рисунок 11. Временная диаграмма работы многопроцессорной шины.

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

<== предыдущая лекция | следующая лекция ==>
Режим 1. Асинхронный восьмиразрядный последовательный порт | Языки программирования для микроконтроллеров
Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 335; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.012 сек.