|
|||||||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
ТС временной синхронизации. Таймер
Таймер в системах измерения и управления используется для привязки процессов измерения и управления к реальному времени. Таймер представляет собой управляемый делитель частоты. Выходной сигнал таймера может использоваться для прямого управления аппаратурой (например, для запуска АЦП) или как сигнал запроса на прерывание. Основным элементом таймера является счетчик с предустановкой, работающий на вычитание. Типичным примером аппаратной реализации таймера является БИС Intel 8253 (рис. 43).
Рис. 43
Intel 8253 - интервальный программируемый таймер (ПТ) - содержит три адресуемых регистра-счетчика: СТ0, СТ1 и СТ2, и регистр управления RGR. Каждый из регистров-счетчиков имеет счетный вход (CLK), вход разрешения счета (GATE) и выход (OUT). Выход одного счетчика может быть соединен с входом другого. Адресация регистров-счетчиков и регистра управления производится кодом субадреса A0 и А1. Сигналы на входах RD и WR определяют режим обращения к регистрам (чтение или запись). Вход CS (выбор кристалла) является входом разрешения работы ПТ. Таймер КР580ВИ53 является многорежимным устройством. Режим работы определяется управляющим словом, заносимым в регистр режима. Формат управляющего слова приведен в табл. 12. Табл. 12
Пример слова режима. для установки режима: § способ кодирования кода времени - двоичный; § режим 2 для всех счетчиков; § способ загрузки всех счетчиков - двумя байтами. Этим установкам режима соответствуют коды режима 34h, 74h и B4h для СТ0, СТ1 и СТ2 соответственно. Регистр режима - трехбайтовый, содержит три однобайтовых подрегистра. Каждый подрегистр соответствует одному каналу таймера. Доступ к подрегистрам - последовательный. Для работы ПТ необходима подача сигнала внешнего тактового генератора. Для БИС Intel 8253 частота следования импульсов должна быть не более 2 МГц. При подключении БИС ПТ к линиям интерфейса ISA IBM PC в качестве тактового сигнала может быть использован BCLK/4, имеющий частоту 1,193182 МГц. Удобнее использовать для этой цели кварцевый генератор импульсов с частотой 1,000000 МГц. ПТ на БИС Intel 8253 может быть использован как одно-, двух-, или трехканальный таймер. На рис.6.6 показан пример использования ПТ как двухканального таймера. Первый канал содержит счетчики СТ0 и СТ1, второй - счетчик СТ2. Пример кодирования времени 1 сек таймера. При частоте тактового сигнала на входе таймера 1 МГц необходимый коэффициент деления частоты равен 1 000 000. Используя один счетчик таймера можно коэффициент деления от 2 до 65536. Поэтому необходимо использовать два счетчика таймера. Коэффициенты деления К1 и К2 счетчиков таймера необходимо выбрать так, чтобы К1*К2=1 000 000, например, К1=50 000, К2=20 или К1=1000, К2=1000.
Пример программирования: _out (Base+19, KR); /*Задание режима. Например, для задания режима 0*/ /*назначения порта А на ввод, порта В, С - на вывод KR=0x90*/ _out (Base+16,data); /*Вывод байта данных через порт А*/ _out (Base+17,data); /*Вывод байта данных через порт В*/ _out (Base+18,data); /*Вывод байта данных через порт С*/ data=_inp(Base+16); /*Ввод байта данных через порт А*/ data=_inp(Base+17); /*Ввод байта данных через порт B*/ data=_inp(Base+18); /*Ввод байта данных через порт C*/
Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.003 сек.) |