КАТЕГОРИИ:
АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника
|
Организация портов ввода-вывода микроконтроллера 8051. Устройство портов. Альтернативные функции портов.Базовая архитектура микроконтроллера 8051 содержит четыре параллельных порта ввода/вывода - P0 - P3. Они адресуются как регистры специальных функций и имеют фиксированные адреса в памяти данных микроконтроллера .Разрядность портов - 8 с возможностью побитной адресации разрядов. Направление обмена информацией через порты - все порты двунаправленные, причем имеется возможность в каждом порту часть разрядов использовать для ввода данных, а часть для вывода. Альтернативные функции.Из-за ограниченного количества выводов корпуса интегральной микросхемы микроконтроллера, большинство выводов используется для выполнения двух функций - в качестве линий портов и для альтернативных функций. Порты P0 и Р2используются при обращении к внешней памяти. При этом на выходах порта P0 младший байт адреса внешней памяти мультиплексируется с вводимым/выводимым байтом. Выходы порта Р2 содержат старший байт адреса внешней памяти, если адрес 16-разрядный. При использовании восьмиразрядного адреса портом Р2 можно пользоваться для ввода/вывода информации обычным образом. При обращении к внешней памяти в P0 автоматически заносятся единицы во все биты. Информация в разрядах порта Р2 при этом остается неизменной. Порт P3помимо обычного ввода и вывода информации используется для формирования и приема специальных управляющих и информационных сигналов. Разряды порта (все или частично) при этом могут выполнять альтернативные функции. Альтернативные функции порта Р3 указаны в таблице 2.3. Таблица 2.3 – Альтернативные функции порта Р3
Альтернативные функции могут быть активированы только в том случае, если в соответствующие биты порта P3 предварительно занесены «1». Неиспользуемые альтернативным образом разряды могут работать как обычно. Каждый из портов содержит регистр-защелку (SFR P0 — SFR P3), выходную цепь и входной буфер. 25 Таймеры-счетчики микроконтроллеров семейства 8051: регистр режима работы, регистр управления-статуса. Режимы работы таймеров-счетчиков. В базовых моделях семейства 8051 имеются два программируемых 16-битных таймера/счетчика (T/C0 и T/C1), которые могут быть использованы как в качестве таймеров, так и в качестве счетчиков внешних событий. В первом случае содержимое соответствующего таймера/счетчика (далее для краткости Т/С) инкрементируется в каждом машинном цикле, т.е. через каждые 12 периодов колебаний кварцевого резонатора, во втором оно инкрементируется под воздействием перехода из «1» в «0» внешнего входного сигнала, подаваемого на соответствующий (T0,T1) вывод микроконтроллера 8051. Для управления режимами работы Т/С и для организации их взаимодействия с системой прерываний используются два регистра специальных функций (TMOD и TCON), описание которых приведено в таблицах 2.4, 2.5. Так как на распознавание периода требуются два машинных цикла, максимальная частота подсчета входных сигналов равна 1/24 частоты резонатора. На длительность периода входных сигналов ограничений сверху нет. Для гарантированного прочтения входной сигнал должен удерживать значение 1, как минимум, в течение одного машинного цикла микроконтроллера. Четыре различных режима работы реконфигурируют структуру таймера для выполнения разнообразных задач. В этой структуре TLn и ТНn представляют 8 младших и 8 старших разрядов каждого таймера, где n – его номер (например, TL0 – младший 8-разрядный регистр таймера 0). Источником синхросигналов, переключающих таймер, могут быть тактовые импульсы, частота которых уменьшается при помощи делителя, или внешний сигнал. Выбор источника определяется битом С/Т в регистре TMOD таймера. Биты выбора режима в регистре TMOD определяют режим работы таймера. Таблица 2.4 - Регистр режима работы таймера/счетчика TMOD
Таблица 2.5 - Регистр управления/статуса таймера TCON
В режиме 0 таймер конфигурируется как 13-разрядный счетчик, переполнение которого фиксируется по возникновению переноса из разряда 4 регистра TLn. В режиме 1 таймер работает как 16-разрядный счетчик. Режим 2 обычно используется для задания скорости обмена встроенного последовательного порта. Для счета используется только счетчик TLn. Когда содержимое этого счетчика превышает OFFh, то в него загружается значение, которое содержится в регистре ТНп, и счет возобновляется. Последовательный порт может использовать сигнал переполнения, чтобы задать скорость обмена. В режиме 3 регистры TL0 и ТНО работают как два независимых таймера. Этот режим обеспечивается только в таймером 0, так как для его реализации требуются как внешний так и внутренний синхросигналы, а таймер 1 не может переключаться внешним сигналом. Таймер ТНО переключается внешними сигналами, a TL0 — внутренними тактовыми импульсами. Режим 3 может применяться для реализации тахометра, когда счетчик ТНО определяет количество событий (например, оборотов вала), a TL0 — промежуток времени, в течение которого они произошли.
|