Мегаобучалка Главная | О нас | Обратная связь


Программируемый аппаратный модулятор



2019-08-14 208 Обсуждений (0)
Программируемый аппаратный модулятор 0.00 из 5.00 0 оценок




 

Программируемый аппаратный модулятор входит в состав периферийных устройств микроконтроллера тина t28.

Программируемый аппаратный модулятор включен между выходом Разряда PORTA.2 регистра PORTA (№ $1В) и внешним выводом РА2 порта РА. Вывод РА2 работает только в режиме выхода. Состояние разряда РА2НС регистра управления PACR (№ S1A) определяет в данном случае не направление передачи бита, а нагрузочную способность выхода. При РА2НС = 0 ток IоL может иметь величину до 15 мА (при Fcc = l,8 В), При РА2НС = 1 он может быть увеличен до 25 мА (при Vcc = l,8 В).

В состав модулятора входит регистр управления MODCR (№ $02), с помощью которого задаются длительность импульса и скважность импульсного сигнала на выходе РА2. Работа модулятора связана с работой таймера-счетчика Т/СО типа А, который у микроконтроллера типа t28 имеет некоторые особенности.

Управляющая импульсная последовательность с заданными параметрами формируется в пересчетной схеме модулятора (ПСМ), на один из входов которой поступает тактовый сигнал микроконтроллера (СК).

Длительность интервала, в течение которого сигнал на выходе РА2 имеет низкий уровень, определяется по формуле:

 

 

где (ONTIM) - число, код которого записан в разрядах ONTIM4 - ONTIM0 регистра MODCR; FCK ~ тактовая частота микроконтроллера.

где (ONTIM) - число, код которого записан в разрядах ONTIM4 - ONTIM0 регистра MODCR; FCK ~ тактовая частота микроконтроллера.

работа периферийных устройств

Скважность сигнала DC, определяемая по формуле

 

 

где Т - период следования импульсов, задается кодом, записанным в разрядах MCONF2-MCONF0 регистра MODCR в соответствии с табл. 20. В таблице указаны также состояние разряда PORTA2 регистра PORTA, период следования импульсов Т и состояние выхода РА2 (L - низкий уровень, Н - высокий уровень, ИМП - импульсная последовательность)

 

Таблица 20

MCONF2 - 0 PORTA2 DC T PA2
000 0 100% - L
001 0 50% 2 TON имп.
010 0 33% 3 TON имп.
011 0 25% 4 TON имп.
100 0 67% 3 TON имп.
101 0 75% 4 TON имп.
110 0 - - ?
111 0 50% 2/FCK имп.
XXX 1 0% - Н

- TON = 1/FCK

 

Выходной сигнал с заданной с использованием разряда РА2НС регистра PACR допустимой величиной тока нагрузки формируется на выходе управляющей схемы модулятора (УСМ).

В таймере-счетчике Т/СО пересчетная схема ПС делит частоту тактового сигнала на 64, 256 и 1024. Сигнал с трех выходов пересчетной системы поступает в схему управления СУ1, в которую также поступают сигнал с вывода ТО, тактовый сигнал микроконтроллера и сигнал с дополнительного выхода пересчетной схемы модулятора.

Схема управления СУ1 в зависимости от комбинации состояний Разрядов CS00-CS02 регистра TCCR0 (№ $ 04) передает один из сиг-Налов на счетный вход базового счетчика TCNT0 (№ $03) в соответствии с табл.21.

При переполнении базового счетчика устанавливается в единичное состояние разряд TOV0 регистра IFR (№ $05) и при единичном состоянии разряда TOIE0 регистра ICR (№ $06) в блок прерываний Поступает запрос прерывания Т/СО OVF.

Кроме того, сигнал переполнения поступает в схему управления СУ2, которая в зависимости от комбинации состояний разрядов ООМОО и ООМ01 регистра TCCRO изменяет состояние разряда PORT2 регистра PORTA в соответствии с табл.22.

 

Таблица 21

CS02 CS01 CS00 Сигнал
0 0 0 нет
0 0 1 СК
0 1 0 пcм
0 1 1 СК/64
1 0 0 СК/256
1 0 1 СК/1024
1 1 0 отрицательный фронт на ТО
1 1 1 положительный фронт на ТО

 

Таблица 22

ООМ01 ООМОО  (PORTA2)
0 0 не изменяется
0 1 изменяется
1 0 0
1 1  

 

При установке в единичное состояние разряда FOV0 регистра TCCRO сбрасывается в пулевое состояние базовый счетчик TCNT0 и поступает сигнал переполнения в схему СУ2.

Запрос прерывания Т/СО OVF при этом не формируется. Разряд FOV0 сбрасывается в нулевое состояние аппаратно.

Блок прерываний

 

Блок прерывании принимает запросы прерывания и организует переход к выполнению определенной прерывающей программы. Запросы прерывания поступают из внешних источников и из источников, расположенных в различных устройствах микроконтроллера.

В качестве входов для приема запросов из внешних источников используются выводы параллельных портов ввода-вывода, для которых эта функция является альтернативной. При выполнении альтернативной функции вывод порта имеет альтернативное имя INTx (х = 0, 1,..., 7).

Запрос прерывания из внешнего источника может быть представлен низким уровнем сигнала (L), переходом от высокого уровня к низкому (HL), переходом от низкого уровня к высокому (LH) или переходом любого направления (LH/HL). Выбор способа представления определяется комбинацией состоянии разрядов ISCxO и ISCxl в регистре MCUCR (№ $D5), в микроконтроллере типа ml03 - в регистре EICR (№ $ЗА).

В табл.23 указаны способы представления запроса прерывания при разных комбинациях состояний названных разрядов.

 

Таблица 23

ISCX1 ISCX0 Способ
0 0 L
0 1 LH/HL
1 0 HL
1 1 LH

 

В микроконтроллерах серии ATtiny в качестве запроса прерывания могут использоваться любые изменения значения сигнала (для микроконтроллеров типа t1l, t12, t15) или низкий уровень сигнала (для микроконтроллера типа г28) на любом выводе порта РВ. Запрос прерывания, формируемый при этом, имеет имя I/O PINS, а в микроконтроллере типа t28 - LLI PINS.

В табл.24 указаны выводы параллельных портов, выполняющие альтернативную функцию приема запроса прерывания из внешнего источника, и отмечены особенности представления запроса прерывания у микроконтроллеров разных типов.

Любой запрос прерывания поступает в блок прерываний, если прерывания в микроконтроллере разрешены (I = SREG.7 = 1) и разрешено прерывание по данному запросу. Прерывание по отдельному запросу разрешено, если в единичном состоянии находится маскирующий разряд (MASK) для данного запроса прерывания, расположенный в одном из регистров ввода-вывода.

При появлении запроса прерывания устанавливается в единичное состояние флажковый разряд (FLAG) для данного запроса прерывания, расположенный в одном из регистров ввода-вывода. Состояние флажкового разряда опрашивается аппаратно и, кроме того, может быть опрошено программными средствами.

В табл.25 указаны устройства, в которых расположены источники запросов прерывания, приведены в виде дроби имена маскирующих и флажковых разрядов (в числителе) и регистров ввода-вывода, в которых они расположены, (в знаменателе) у микроконтроллеров разных типов.

 

Таблица 24

Тип МК INTO   INT1 I/O PINS
t11, t12 PB1     PBO-PB5 (2)
t15 PB2     PBO-PB5 (2)
2323, 2343 PB1 (1)      
1200 PD2 (1)      
2313 PD2 (1)   PD3 (1)  
t28 PB3   PB4 PBO-PB7 (3)
4433 PD2   PD3  
8515 PD2 (1)   PD3 (1)  
8535 PD2 (1)   PD3 (1)  
m163 PD2   PD3  
m103  

INTO-INT3

INT4-INT7
   

PDO-PD3 (3)

PE4 - PE7 (1)

 (1) - кроме LH/HL, (2) - только LH/HL, (3) - только L

 

Таблица 25

Устройство Запрос прерывания MASK FLAG
CPU, WDT RESET    

Внешние

INT0 INT1 INT0/GIMSK INT1/GIMSK INTF0/GIFR INTF1/GIFR
INT0 - INT3 INT4 - INT7 INT0 - INT3/EIMSK INT4 - INT7/EIMSK INTF4 - INTF7/EIFR
I/O PINS LLI PINS PCIE/GIMSK LLIE/ICR PCIF/GIFR
T/C2 T/C2 COMP T/C2 OVF OCIE2/TIMSK TOIE2/TIMSK OCF2/TIFR TOV2/TIFR
T/C1 T/C1 CAPT T/C1 COMPA T/C1 COMP B T/C1 OVF TICIE1/TIMSK OCIE1A/ TIMSK* OCIE1B/ TIMSK TOIE1/ TIMSK ICF1/TIFR OCF1A/TIFR* OCF1B/TIFR TOV1/TIFR
T/C0 T/C0 COMP T/C0 OVF OCIE0/TIMSK TOIE0/TIMSK OCF0/TIFR TOV0/TIFR
SPI SPI STC SPIE/SPCR SPIF/SPSR
UART UART RXC UART UDRE UART TXC RXCIE/UCR** UDRIE/UCR   RXC/USR** UDRE/USR
ADC ADC CC ADIE/ADCSR ADIF/ADCSR
EEPROM EE RDY EERIE/EECR  
AC ANA COMP ACIE/ACSR ACI/ACSR
TWSI TWSI TWIE/TWCR TWINT/TWCR

* - у МК типа 4433 OCIE1 и OCF1

* - у МК типа 163 UCR = UCSRB USR = UCSRA

 

При поступлении запроса блок прерываний организует аппаратный безусловный переход к выполнению команды, адрес которой (вектор прерывания) однозначно связан с именем запроса прерывания. По этому адресу в микроконтроллерах серий ATtiny и АТ90 должна быть записана команда безусловного перехода с мнемокодом RJMP k (№ 85), машинный код который имеет формат "слово", а в микроконтроллерах серии ATmega может быть записана команда безусловного перехода с мнемокодом JMP, и машинный код которой имеет формат "два слова". По этой команде выполняется программный безусловный переход к первой команде соответствующей прерывающей программы, которая может быть расположена в любом месте в Flash ROM.

При одновременном поступлении в блок прерываний нескольких запросов в блоке выделяется запрос с наиболее высоким приоритетом среди всех поступивших и выполняется переход по адресу, соответствующему этому запросу.

В табл.26 и 27 указаны в шестнадцатеричном коде адреса (векторы прерывания), по которым совершается аппаратный переход у микроконтроллеров разных типов. Высший приоритет имеет запрос прерывания RESET. Приоритет других запросов убывает в порядке увеличения адреса, по которому совершается переход. У микроконтроллеров разных типов запросам прерывания с одинаковым именем соответствуют разные векторы перехода.

 

Таблица 26

 

Запрос прерывания

    Тип MK    
t11 t12 t15 2323 2343 1200
RESET 000 000 000 000 000 000
INTO 001 001 001 001 001 001
I/O PINS 002 002 002      
T/C1 COMP     003      
T/C1 OVF     004      
T/CO OVF 003 003 005 002 002 002
EERDY   004 006      
ANA COMP 004 005 007     003
ADCCC     008      

 

При переходе к выполнению прерывающей программы разряд 1 в регистре SREG аппаратно сбрасывается в нулевое состояние и прерывания по всем запросам оказываются запрещенными. Разряд I устанавливается в единичное состояние при выполнении команды возврата из прерывающей программы с мнемокодом RETI (№ 90). Разряд I может быть установлен в единичное состояние программно по команде SEI в прерывающей программе. Программа, которая выполняется при пуске микроконтроллера и по запросу RESET, не содержит команды RETI и для выполнения прерываний должна содержать команду SEI.

Прерывание по запросу RESET выполняется вне зависимости от состояния разряда I в регистре SREG. Опрос состояния входов блока прерываний выполняется в каждом такте. При обнаружении запроса код из счетчика команд заносится в стек, на что затрачивается 2 такта, и выполняется безусловный переход по команде с мнемокодом RJMP к (2 такта) или JMP k (3 такта). Если при обнаружении запроса прерывания процессор не закончил выполнение текущей многотактовой команды, до перехода к прерывающей программе завершается выполнение этой команды.

 

Таблица 27

 

Запрос прерывания

Тип МК

2313 t28 4433 8515 8535 m163 m103
RESET 000 000 000 000 000 000 000
INTO 001 001 001 001 001 002 002
INT1 002 002 002 002 002 004 004
INT2             006
INT7             010
LLI PINS   003          
T/C2 COMP         003 006 012
T/C2 OVF         004 008 014
T/C1 CAPT 003   003 003 005 00A 016
T/C1 COMPA 004   004 004 006 OOC 018
T/C1 COMPB       005 007 00E 01A
T/C1 OVF 005   005 006 008 010 01C
T/CO COMP             01E
T/CO OVF 006 004 006 007 009 012 020
SPI STC     007 008 00A 014 022
UART RXC 007   008 009 00B 016 024
UART UDRE 008   009 00A OOC 018 026
UART TXC 009   00A 00B 00D 01A 028
ADCCC     00B   00E 01C 02A
EERDY     OOC   OOF 01E 02C
ANA COMP 00A 005 00D OOC 010 020 02E
TWSI           022  

 


Литература

 

1. Кибернетика - основа наук -под ред. проф. Карул К.В. - К. - 2009 г.

2. Основы микропроцессорных исчислений - под ред. Мозаев Г.Н. - М. - 2007 г.

3. Микроконтроллеры - под ред. д. т. н. Нелипова А.С. - Х. ХИРЕ - 2008 г.

4. Невлюдов И.Я. - Компьютеризация общества - Х. ХИРЕ - 2007 г.

5. Компьютерная техника и технологии - нпж - К. - 2008-2009 г. г.



2019-08-14 208 Обсуждений (0)
Программируемый аппаратный модулятор 0.00 из 5.00 0 оценок









Обсуждение в статье: Программируемый аппаратный модулятор

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:
Личность ребенка как объект и субъект в образовательной технологии: В настоящее время в России идет становление новой системы образования, ориентированного на вхождение...
Почему люди поддаются рекламе?: Только не надо искать ответы в качестве или количестве рекламы...
Почему двоичная система счисления так распространена?: Каждая цифра должна быть как-то представлена на физическом носителе...



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (208)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.008 сек.)