МИКРОСХЕМА ИНТЕГРАЛЬНАЯ 1921ВК035. Руководство пользователя - часть 6

 

  Главная      Книги - Разные     МИКРОСХЕМА ИНТЕГРАЛЬНАЯ 1921ВК035. Руководство пользователя

 

поиск по сайту            правообладателям  

 

   

 

   

 

содержание      ..     4      5      6      7     ..

 

 

 

МИКРОСХЕМА ИНТЕГРАЛЬНАЯ 1921ВК035. Руководство пользователя - часть 6

 

 

CMPA - регистр порога срабатывания А
Таблица А.13.8 - Структура регистра CMPA
Смещение: 18h
Сброс: 00000000h
Поле
Биты
Описание
CMPA
31-16
Активное значение порога срабатывания канала А, которое
сравнивается со значением счетчика таймера.
При совпадении значений формируется событие CTR = CMPA,
которое влияет на поведение сигналов на линиях PWMA и PWMB
-
15-0
Зарезервировано
CMPB - регистр порога срабатывания B
Таблица А.13.9 - Структура регистра CMPB
Смещение: 1Сh
Сброс: 00000000h
Поле
Биты
Описание
CMPB
31-16
Активное значение порога срабатывания канала B, которое
сравнивается со значением счетчика таймера.
При совпадении значений формируется событие CTR = CMPB,
которое влияет на поведение сигналов на линиях PWMA и PWMB
-
15-0
Зарезервировано
317
AQCTLA - регистр обработчика для выхода A
Таблица А.13.10 - Структура регистра AQCTLA
Смещение: 20h
Сброс: 00000000h
Поле
Биты
Описание
CBD
11-10
Действие на выводе PWMA/PWMB при CTR = CMPB при счете вниз
CBU
9-8
Действие на выводе PWMA/PWMB при CTR = CMPB при счете вверх
CAD
7-6
Действие на выводе PWMA/PWMB при CTR = CMPA при счете вниз
CAU
5-4
Действие на выводе PWMA/PWMB при CTR = CMPA при счете вверх
PRD
3-2
Действие на выводе PWMA/PWMB при CTR = PRD
ZRO
1-0
Действие на выводе PWMA/PWMB при CTR = Zero
31-12
Зарезервировано
Для каждого события может быть задано одно из четырех действий:
00 - Нет реакции;
01 - Переключение PWMA/PWMB в ноль;
10 - Переключение PWMA/PWMB в единицу;
11 - Инверсия PWMA/PWMB
AQCTLB - регистр обработчика для выхода B
Таблица А.13.11 - Структура регистра AQCTLB
Смещение: 24h
Сброс: 00000000h
Функционирование и устройство битовых полей аналогично регистру AQCTLA
318
AQSFRC - регистр программного управления однократным действием
Таблица А.13.12 - Структура регистра AQSFRC
Смещение: 28h
Сброс: 00000000h
Поле
Биты
Описание
OTSFB
5
Запись единицы инициирует ожидание события CTR = Zero для
однократного переключения вывода в состояние, согласно ACTSFB
ACTSFB
4-3
Выбор действия с выходным сигналом на выводе
00
Нет действий
01
PWMB = 0
10
PWMB = 1
11
Инверсия PWMB
OTSFA
2
Запись единицы инициирует ожидание события CTR = Zero для
однократного переключения вывода в состояние, согласно ACTSFA
ACTSFA
1-0
Выбор действия с выходным сигналом на выводе
00
Нет действий
01
PWMA = 0
10
PWMA = 1
11
Инверсия PWMA
31-6
Зарезервировано
AQCSFRC - регистр обработчика для циклического программного управления
Таблица А.13.13 - Структура регистра AQCSFRC
Смещение: 2Ch
Сброс: 00000000h
CSFB/
3-2/
Поле задания циклического воздействия на выход PWMB/PWMA
CSFA
1-0
31-4
Зарезервировано
Может быть задано одно из четырех воздействий:
00, 11 - Нет реакции;
01 - Значение 0 на выходе PWMB/PWMA;
10 - Значение 1 на выходе PWMB/PWMA;
319
DBCTL - регистр управления генератором «мертвого времени» ШИМ
Таблица А.13.14 - Структура регистра DBCTL
Смещение: 30h
Сброс: 00000000h
Поле
Биты
Описание
INMODE
5-4
Поле выбора источника для контроля по фронту и срезу. Старший
бит поля управляет ключом S5, младший
- ключом S4
(см. рисунок 14.12)
00
Сигнал PWMA используется для контроля по переднему и
заднему фронтам
01
Сигнал PWMA используется для контроля по заднему
фронту, а сигнал PWMB - по переднему
10
Сигнал PWMA используется для контроля по переднему
фронту, а сигнал PWMB - по заднему
11
Сигнал PWMB используется для контроля по переднему и
заднему фронтам
POLSEL
3-2
Поле задания полярности сигнала на выходе. Старший бит поля
управляет ключом S3, а младший
- ключом S2
(см. рисунок 14.12)
00
Инверсия запрещена
01
Инверсия только на выводе PWMA
10
Инверсия только на выводе PWMB
11
Инверсия на выводах PWMA и PWMB
OUTMODE
1-0
Поле выбора фронта, для которого включена задержка («мертвое
время»). Старший бит поля управляет ключом S1, а младший -
ключом S0 (см. рисунок 14.12)
00
Не задано
01
Задний фронт PWMB
10
Передний фронт PWMA
11
Передний фронт PWMA и задний фронт PWMB
31-6
Зарезервировано
320
DBRED - регистр управления «мертвым временем» переднего фронта
Таблица А.13.15 - Структура регистра DBRED
Смещение: 34h
Сброс: 00000000h
Поле
Биты
Описание
DEL
9-0
Величина задержки переднего фронта для генератора «мертвого
времени» ШИМ (в периодах тактового сигнала TBCLK)
-
31-10
Зарезервировано
DBFED - регистр управления «мертвым временем» заднего фронта
Таблица А.13.16 - Структура регистра DBFED
Смещение: 38h
Сброс: 00000000h
Поле
Биты
Описание
DEL
9-0
Величина задержки заднего фронта для генератора «мертвого
времени» ШИМ (в периодах тактового сигнала TBCLK)
-
31-10
Зарезервировано
321
TZSEL - регистр источника сигнала аварии
Таблица А.13.17 - Структура регистра TZSEL
Смещение: 3Сh
Сброс: 00000000h
Поле
Бит
Описание
OST
8
Бит разрешения источника сигнала аварии с вывода PWM_TZ в
однократном режиме
0
Запрещено
1
Разрешено
CBC
0
Бит разрешения источника сигнала аварии с вывода PWM_TZ в
циклическом режиме
0
Запрещено
1
Разрешено
31-9,
Зарезервировано
7-1
TZCTL - регистр управления детектором сигнала аварии
Таблица А.13.18 - Структура регистра TZCTL
Смещение: 40h
Сброс: 00000000h
Поле
Биты
Описание
TZB/
3-2/
Поле задания поведения вывода PWM_B/PWM_A в случае получения
TZA
1-0
сигнала аварии.
Источник сигнала аварии при этом определяется регистром TZSEL
00
Переключение в третье состояние
01
Переключение в единицу
10
Переключение в ноль
11
Нет действий
31-4
Зарезервировано
322
TZEINT - регистр маски прерываний детектора сигнала аварии
Таблица А.13.19 - Структура регистра TZEINT
Смещение: 44h
Сброс: 00000000h
Поле
Бит
Описание
OST
2
Бит разрешения генерации прерывания в однократном режиме
обработки аварии
0
Запрещено
1
Разрешено
CBC
1
Бит разрешения генерации прерывания в циклическом режиме
обработки аварии
0
Запрещено
1
Разрешено
31-3, 0
Зарезервировано
TZFLG - регистр флагов прерываний детектора сигнала аварии
Таблица А.13.20 - Структура регистра TZFLG
Смещение: 48h
Сброс: 00000000h
Поле
Бит
Описание
OST
2
Флаг прерывания в однократном режиме обработки аварии
0
Нет прерывания
1
Запрос на прерывание
При этом действие на выходе продолжается вплоть до обнуления
счетчика таймера, если сигнал аварии не перестал быть активным к этому
моменту. Если флаг сброшен, а источник сигнала аварии остался, флаг
установится снова
323
Окончание таблицы А.13.20
Поле
Биты
Описание
CBC
1
Флаг прерывания в циклическом режиме обработки аварии
0
Нет прерывания
1
Запрос на прерывание
При этом действие на выходе продолжается вплоть до обнуления
счетчика таймера, если сигнал аварии не перестал быть активным к
этому моменту. Если флаг сброшен, а источник сигнала аварии остался,
флаг установится снова
INT
0
Флаг внешнего прерывания NVIC
0
Нет прерывания
1
Запрос на прерывание
Если флаг был сброшен, а один из флагов CBC или OST установлен,
флаг установится снова
-
31-3
Зарезервировано
TZCLR - регистр сброса флагов прерываний детектора сигнала аварии
Таблица А.13.21 - Структура регистра TZCLR
Смещение: 4Сh
Сброс: 00000000h
OST
2
Бит сброса флага прерывания в однократном режиме обработки аварии.
Запись единицы сбрасывает бит OST в регистре TZFLG
CBC
1
Бит сброса флага прерывания в циклическом режиме обработки аварии.
Запись единицы сбрасывает бит CBC в регистре TZFLG
INT
0
Бит сброса флага внешнего прерывания NVIC.
Запись единицы сбрасывает бит INT в регистре TZFLG
-
31-3
Зарезервировано
324
TZFRC - регистр программной эмуляции сигнала аварии
Таблица А.13.22 - Структура регистра TZFRC
Смещение: 50h
Сброс: 00000000h
Поле
Бит
Описание
OST
2
Бит программной генерации сигнала аварии в однократном режиме.
Запись единицы устанавливает бит OST в регистре TZFLG
CBC
1
Бит программной генерации сигнала аварии в циклическом режиме.
Запись единицы устанавливает бит CBC в регистре TZFLG
-
31-3,
Зарезервировано
0
Примечание - Чтение битов OST и CBC всегда возвращает нули.
ETSEL - регистр источника триггера событий
Таблица А.13.23 - Структура регистра ETSEL
Смещение: 54h
Сброс: 00000000h
Поле
Биты
Описание
DRQBEN/
23/
Бит разрешения генерации запроса DMA
DRQAEN
19
0
Запрещено
1
Разрешено
SOCBEN/
15/
Бит разрешения генерации внешнего сигнала PWM_SOCB/
SOCAEN
11
PWM_SOCA для запуска АЦП
0
Запрещено
1
Разрешено
325
Окончание таблицы А.13.23
Поле
Биты
Описание
DRQBSEL/
22-20/
Поле выбора события, по которому будет сформирован импульс
DRQASEL/
18-16
DMA_REQB/DMA_REQA/PWM_SOCB/PWM_SOCA/PWM_INT
SOCBSEL/
14-12/
000
Зарезервировано
SOCASEL/
10-8/
001
CTR = Zero
INTSEL
2-0
010
CTR = PRD
011
Зарезервировано
100
CTR = CMPA при счете вверх
101
CTR = CMPA при счете вниз
110
CTR = CMPB при счете вверх
111
CTR = CMPB при счете вниз
INTEN
3
Бит разрешения генерации внешнего прерывания PWM_INT
0
Запрещено
1
Разрешено
31-24, 7-4
Зарезервировано
ETPS - регистр предделителя триггера событий
Таблица А.13.24 - Структура регистра ETPS
Смещение: 58h
Сброс: 00000000h
Поле
Биты
Описание
DRQBCNT/
23-22/
Счетчик событий сигнала DMA_REQB/DMA_REQB/PWM_SOCB/
DRQACNT/
19-18/
PWM_SOCA
SOCBCNT/
15-14/
00
Не было ни одного события
SOCACNT
11-10
01
Одно событие
10
Два события
11
Три события
DRQBPRD/
21-20/
Поле задания количества событий, заданных полем DRQBSEL/
DRQAPRD
17-16
/ DRQASEL регистра ETSEL, по которым будет сформирован
сигнал запуска DMA _REQB/DMA_REQA.
Для разрешения генерации сигнала нужно установить бит
DRQBEN / DRQAEN регистра ETSEL.
Сигнал будет сформирован, даже если флаг DRQB/DRQA (регистр
ETFLG) предыдущего сигнала не был сброшен. Как только сигнал
DMA_REQB/ DMA_REQA отправлен, счетчик
DRQBCNT/DRQACNT автоматически сбрасывается
00
Выдача сигнала DMA_REQB / DMA_REQA запрещена
01
По первому событию (DREQBCNT/DREQACNT = 01)
10
По второму событию (DREQBCNT/DREQACNT = 10)
11
По третьему событию (DREQBCNT/DREQACNT = 11)
326
Окончание таблицы А.13.24
Поле
Биты
Описание
SOCBPRD/
13-12/
Поле задания количества событий, заданных полем
SOCAPRD
9-8
SOCBSEL/SOCASEL регистра ETSEL, по которым будет
сформирован сигнал запуска АЦП PWM_SOCB/PWM_SOCA.
Для разрешения генерации сигнала нужно установить бит
SOCBEN/ SOCAEN регистра ETSEL.
Сигнал будет сформирован, даже если флаг SOCB/SOCA (регистр
ETFLG) предыдущего сигнала не был сброшен. Как только сигнал
PWM_SOCB/PWM_SOCA отправлен, счетчик
SOCBCNT/SOCACNT автоматически сбрасывается
00
Выдача сигнала PWM_SOCBA/PWM_SOCA запрещена
01
По первому событию (SOCBCNT/SOCACNT = 01)
10
По второму событию (SOCBCNT/SOCACNT = 10)
11
По третьему событию (SOCBCNT/SOCACNT = 11)
INTCNT
3-2
Значение счетчика событий прерываний
00
Не было ни одного события
01
Одно событие
10
Два события
11
Три события
Счетчик автоматически сбрасывается, когда сформировано
прерывание и перестает считать, когда достигает значения
INTPRD
INTPRD
1-0
Поле задания количества событий, заданных полем INTSEL
регистра ETSEL, по которым будет сформировано внешнее
прерывание PWM_INT. Для разрешения генерации прерывания
нужно установить бит INTEN в регистре ETSEL. Если флаг
прерывания INT (регистр ETFLG) установлен от предыдущего
прерывания, то текущее прерывание не будет активировано до
сброса этого флага (сбрасывается записью единицы в бит INT
регистра ETCLR). Такой механизм позволяет обрабатывать одно
прерывание, в то время как другое ждет своей очереди
00
Прерывания по каждому событию
01
Прерывания по первому событию (INTCNT = 01)
10
Прерывания по второму событию (INTCNT = 10)
11
Прерывания по третьему событию (INTCNT = 11)
31-24,
Зарезервировано
7-4
327
ETFLG - регистр флагов триггера событий
Таблица А.13.25 - Структура регистра ETFLG
Смещение: 5Сh
Сброс: 00000000h
Поле
Бит
Описание
DRQB/
5/
Флаг запроса DMA_REQB/ DMA_REQA
DRQA
4
0
Не установлен или сброшен
1
Установлен
SOCB/
3/
Флаг внешнего сигнала АЦП PWM_SOCB/PWM_SOCA/PWM_INT
SOCA/
2/
0
Не установлен или сброшен
INT
0
1
Установлен
31-6, 1
Зарезервировано
ETCLR - регистр сброса флагов триггера событий
Таблица А.13.26 - Структура регистра ETCLR
Смещение: 60h
Сброс: 00000000h
Поле
Бит
Описание
DRQB/
5/
Бит сброса флага DRQB /DRQA в регистре ETFLG
DRQA
4
0
Нет действий
1
Запись единицы сбрасывает флаг
SOCB/
3/
Бит сброса флага SOCB/SOCA/INT в регистре ETFLG
SOCA/
2/
0
Нет действий
INT
0
1
Запись единицы сбрасывает флаг
31-6, 1
Зарезервировано
328
ETFRC - регистр программной эмуляции флагов триггера событий
Таблица А.13.27 - Структура регистра ETFRC
Смещение: 64h
Сброс: 00000000h
Поле
Бит
Описание
DRQB/
5/
Бит программной установки флага DRQB /DRQA в регистре ETFLG
DRQA
4
0
Нет действий
1
Запись единицы устанавливает флаг
SOCB/
3/
Бит программной установки флага SOCB/SOCA/INT в регистре ETFLG
SOCA/
2/
0
Нет действий
INT
0
1
Запись единицы устанавливает флаг
31-4, 1
Зарезервировано
PCCTL - регистр управления модулятором
Таблица А.13.28 - Структура регистра PCCTL
Смещение: 68h
Сброс: 00000000h
Поле
Биты
Описание
CHPDUTY
10-8
Поле задания скважности второго и последующих импульсов
000
1/8 (13,5 %)
001
2/8 (25,0 %)
110
7/8 (87,5 %)
111
Зарезервировано
SHPFREQ
7-5
Поле выбора делителя частоты синхронизации для задания частоты
второго и последующих импульсов
000
1
001
1/2
110
1/7
111
1/8
329
Окончание таблицы А.13.28
Поле
Биты
Описание
OSTWTH
4-1
Поле задания ширины первого импульса
0h
1 × fclk/8
1h
2 × fclk/8
Eh
15 × fclk/8
Fh
16 × fclk/8
CHPEN
0
Бит разрешения работы модулятора
0
Запрещено
1
Разрешено
31-11
Зарезервировано
FWDTH - регистр ширины фильтрации
Таблица А.13.29 - Структура регистра FWDTH
Смещение: 70h
Сброс: 00000000h
Поле
Биты
Описание
FWDTH
7-0
Поле задания ширины фильтрации коротких импульсов
(от 0 до 25,6 мкс с шагом 0,1 мкс)
0h
Фильтр выключен
1h
Фильтр 0,1 мкс
Fh
25,6 мкс
31-8
Зарезервировано
HDSEL - регистр источника сигнала события удержания
Таблица А.13.30 - Структура регистра HDSEL
Смещение: 88h
Сброс: 00000000h
330
Окончание таблицы А.13.30
Поле
Биты
Описание
OST
31
Бит разрешения события по источнику ADCDC в однократном
режиме обработки аварии
0
Запрещено
1
Разрешено
CBC
28
Бит разрешения события по источнику ADCDC в циклическом
режиме обработки аварии
0
Запрещено
1
Разрешено
ADCDC3-
3-0
Бит выбора цифрового компаратора (0 - 3) блока АЦП, с выхода
ADCDC0
которого берется сигнал для формирования события удержания
0
Не выбран
1
Выбран
30,
Зарезервировано
29,
27-4
HDCTL - регистр управления детектором событий удержания
Таблица А.13.31 - Структура регистра HDCTL
Смещение: 8Сh
Сброс: 00000000h
Поле
Биты
Описание
HDB/
3-2/
Поле задания поведения сигнала PWMB/PWMA в случае сбоя (аварии).
HDA
1-0
(Источник сбоя определяется регистром HDSEL)
00
Зарезервировано
01
Переключается в состояние единицы
10
Переключается в состояние нуля
11
Остается без изменений
31-4
Зарезервировано
331
HDEINT - регистр маски прерывания порогового выключателя
Таблица А.13.32 - Структура регистра HDEINT
Смещение: 90h
Сброс: 00000000h
Поле
Бит
Описание
OST
2
Бит разрешения генерации прерывания в однократном режиме
0
Запрещено
1
Разрешено
CBC
1
Бит разрешения генерации прерывания в циклическом режиме
0
Запрещено
1
Разрешено
31-3, 0
Зарезервировано
HDFLG - регистр флагов прерывания порогового выключателя
Таблица А.13.32 - Структура регистра HDFLG
Смещение: 94h
Сброс: 00000000h
Поле
Бит
Описание
OST,
2,
Флаг прерывания в однократном режиме,
CBC
1
флаг прерывания в циклическом режиме
0
Нет прерывания
1
Запрос на прерывание
При этом действие на выходе продолжается вплоть до обнуления
счетчика таймера, если сигнал аварии не перестал быть активным к
этому моменту. Если флаг сброшен, а источник сигнала аварии остался,
флаг установится снова
INT
0
Флаг внешнего прерывания NVIC
0
Нет прерывания
1
Запрос на прерывание
Если флаг был сброшен, а один из флагов CBC или OST установлен,
флаг установится снова
-
31-3
Зарезервировано
332
HDCLR - регистр сброса флагов порогового выключателя
Таблица А.13.33 - Структура регистра HDCLR
Смещение: 98h
Сброс: 00000000h
Поле
Бит
Описание
OST
2
Бит сброса флага прерывания в однократном режиме
CBC
1
Бит сброса флага прерывания в циклическом режиме
INT
0
Бит сброса флага внешнего прерывания NVIC
31-3
Зарезервировано
Запись единицы в бит регистра сбрасывает соответствующий бит в регистре HDFLG
HDFRC - регистр программной активации порогового выключателя
Таблица А.13.34 - Структура регистра HDFRC
Смещение: 9Сh
Сброс: 00000000h
Поле
Бит
Описание
OST
2
Бит активации порогового выключателя в однократном режиме
обработки аварии
0
Нет действий
1
Запись единицы активирует выключатель и устанавливает флаг OST в
регистре HDFLG
CBC
1
Бит активации порогового выключателя в циклическом режиме
обработки аварии
0
Нет действий
1
Запись единицы активирует выключатель и устанавливает флаг CBC в
регистре HDFLG
-
31-3,
Зарезервировано
0
333
HDINTCLR - регистр сброса прерывания порогового выключателя
Таблица А.13.35 - Структура регистра HDINTCLR
Смещение: A0h
Сброс: 00000000h
Поле
Бит
Описание
INT
0
Бит сброса прерывания.
Запись единицы в бит сбрасывает запрос прерывания.
Запись в бит должна производиться программой обработки прерывания, во
избежание повторного запуска программы обслуживания прерывания
-
31-1
Зарезервировано
TZINTCLR - регистр сброса прерывания детектора событий аварии
Таблица А.13.36 - Структура регистра TZINTCLR
Смещение: A4h
Сброс: 00000000h
Расположение и функционирование полей аналогично HDINTCLR
INTCLR - регистр сброса прерывания таймера блока ШИМ
Таблица А.13.37 - Структура регистра INTCLR
Смещение: A8h
Сброс: 00000000h
Расположение и функционирование полей аналогично HDINTCLR
334
A.14 Регистры квадратурного декодера
Базовые адреса и смещения
Таблица A.14.1 - Базовый адрес блока квадратурного декодера
Адрес
Название
Описание
4004F000h
QEP
Базовый адрес регистров блока квадратурного декодера
QPOSCNT - регистр счета счетчика позиции
Таблица А.14.2 - Структура регистра QPOSCNT
Смещение: 00h
Сброс: 00000000h
Поле
Биты
Описание
VAL
31-0
Значение счета счетчика позиции
QPOSINIT - регистр инициализации счетчика позиции
Таблица А.14.3 - Структура регистра QPOSINIT
Смещение: 04h
Сброс: 00000000h
Поле
Биты
Описание
VAL
31-0
Значение инициализации счетчика позиции
335
QPOSMAX - регистр максимального значения счетчика позиции
Таблица А.14.4 - Структура регистра QPOSMAX
Смещение: 08h
Сброс: 00000000h
Поле
Биты
Описание
VAL
31-0
Значение максимального значения счетчика позиции
QPOSCMP - регистр сравнения счетчика позиции
Таблица А.14.5 - Структура регистра QPOSCMP
Смещение: 0Сh
Сброс: 00000000h
Поле
Биты
Описание
VAL
31-0
Значение сравнения счетчика позиции
QPOSILAT - регистр хранения позиции по индексации
Таблица А.14.6 - Структура регистра QPOSILAT
Смещение: 10h
Сброс: 00000000h
Поле
Биты
Описание
VAL
31-0
Значение хранения позиции по индексации
336
QPOSSLAT - регистр хранения позиции по стробу
Таблица А.14.7 - Структура регистра QPOSSLAT
Смещение: 14h
Сброс: 00000000h
Поле
Биты
Описание
VAL
31-0
Значение хранения позиции по стробу
QPOSLAT - регистр хранения позиции по таймеру временных отсчетов
Таблица А.14.8 - Структура регистра QPOSLAT
Смещение: 18h
Сброс: 00000000h
Поле
Биты
Описание
VAL
31-0
Значение хранения позиции по таймеру временных отсчетов
QUTMR - регистр таймера временных отсчетов
Таблица А.14.9 - Структура регистра QUTMR
Смещение: 1Сh
Сброс: 00000000h
Поле
Биты
Описание
VAL
31-0
Значение таймера временных отсчетов
337
QUPRD - регистр длительности счета таймера временных отсчетов
Таблица А.14.10 - Структура регистра QUPRD
Смещение: 20h
Сброс: 00000000h
Поле
Биты
Описание
VAL
31-0
Значение длительности счета таймера временных отсчетов
QWDTMR - регистр счета сторожевого таймера
Таблица А.14.11 - Структура регистра QWDTMR
Смещение: 24h
Сброс: 00000000h
Поле
Биты
Описание
VAL
31-0
Значение счета сторожевого таймера
QWDPRD - регистр длительности счета сторожевого таймера
Таблица А.14.12 - Структура регистра QWDPRD
Смещение: 28h
Сброс: 00000000h
Поле
Биты
Описание
VAL
31-0
Значение длительности счета сторожевого таймера
338
QDECCTL - регистр управления входами
Таблица А.14.13 - Структура регистра QDECCTL
Смещение: 2Сh
Сброс: 00000000h
Поле
Биты
Описание
QSRC
15-14
Режим работы
00
Квадратурный
01
Счета/направления
10
Счет вверх (QCLK=xCLK, QDIR=1),
11
Счет вниз (QCLK=xCLK, QDIR=0).
SOEN
13
Бит разрешения выдачи выходного сигнала компаратора
0
Запрещено
1
Разрешено
SPSEL
12
Бит выбора вывода для выдачи выходного сигнала компаратора
0
Стробирующий вывод
1
Индексный вывод
XCR
11
Бит выбора фронта квадратурного входа
0
Передний фронт
1
Передний и задний фронты
SWAP
10
Бит обмена входов QEPA и QEPB
0
Нет действий
1
Входы QEPA и QEPB меняются местами
IGATE
9
Бит включения стробирования входного сигнала индексации
QAP
8
Бит включения инвертирования входного сигнала с QEPA
QBP
7
Бит включения инвертирования входного сигнала с QEPB
QIP
6
Бит включения инвертирования входного сигнала с QEPI
QSP
5
Бит включения инвертирования входного сигнала с QEPS
31-16,
Зарезервировано
4-0
Примечание - Для битов с 9 по 5 справедливо: 0 - выключено, 1 - включено.
339
QEPCTL - регистр управления квадратурного декодера
Таблица А.14.14 - Структура регистра QEPCTL
Смещение: 30h
Сброс: 00000000h
Поле
Биты
Описание
FREESOFT
15-14
Поле управления счетчиками QPOSCNT, QWDTMR, QUTMR, QCTMR
в режиме отладки
00
Принудительная блокировка счета
01
Счет до переполнения
10, 11
Разблокирование счета
PCRM
13-12
Поле задания события для сброса счетчика позиции
00
Событие индексации
01
Достижение максимальной позиции
10
Первое событие индексации
11
Окончание временного отсчета
SEI
11-10
Поле задания события стробирования для инициализации счетчика
позиции (QPOSCNT = QPOSINIT)
00, 01
Работа без инициализации
10
Передний фронт сигнала QEPS
11
Передний фронт QEPS при вращении по часовой стрелке
или задний фронт QEPS при вращении против часовой
стрелки
IEI
9-8
Поле задания события индексации для инициализации счетчика
позиции (QPOSCNT = QPOSINIT)
00,
Работа без инициализации
01
10
По переднему фронту сигнала QEPI
11
По заднему фронту сигнала QEPI
SWI
7
Бит программной инициализации счетчика позиции. Не сбрасывается
аппаратно
0
Нет действий
1
Запись единицы загружает счетчик позиции QPOSCNT значением
QPOSINIT
SEL
6
Бит задания события стробирования для сохранения значения счетчика
позиции (QPOSSLAT = POSCNT)
0
По переднему фронту QEPS
1
По переднему фронту QEPS при вращении по часовой стрелке или
по заднему фронту QEPS при вращении против часовой стрелки
340
Окончание таблицы А.14.14
Поле
Биты
Описание
IEL
5-4
Поле задания события индексации для сохранения значения счетчика
позиции (QPOSILAT = POSCNT)
00
Без сохранения
01
По переднему фронту сигнала индексации
10
По заднему фронту сигнала индексации
11
По маркеру индексации
QPEN
3
Бит разрешения работы счетчика позиции
0
Запись нуля останавливает счетчик и сбрасывает его
1
Работа разрешена
QCLM
2
Бит задания события сохранения значения регистров модуля захвата
0
По чтению QPOSCNT регистры QCTMR и QCPRD сохраняются в
регистры QCTMRLAT и QCPRDLAT соответственно.
1
По окончанию временного отсчета регистры QPOSCNT, QCTMR и
QCPRD сохраняются в регистры QPOSLAT, QCTMRLAT и
QCPRDLAT соответственно
UTE
1
Бит разрешения работы таймера временных отсчетов
0
Запрещено
1
Разрешено
WDE
0
Бит разрешения работы сторожевого таймера
0
Запрещено
1
Разрешено
31-16
Зарезервировано
QCAPCTL - регистр управления захватом
Таблица А.14.15 - Структура регистра QCAPCTL
Смещение: 34h
Сброс: 00000000h
Поле
Биты
Описание
EPSLD
16
Бит включения улучшенного режима теневой загрузки UPPS/CCPS
0
Запрещено
1
Разрешено
CEN
15
Бит разрешения работы модуля захвата времени
0
Запрещено
1
Разрешено
SELEVNT
7
Бит сброса таймера
0
По деленному квадратурному событию
1
По получении сигнала PCSOUT от Компаратора
341
Окончание таблицы А.14.15
Поле
Биты
Описание
CCPS
6-4
Поле задания делителя системного такта
000
Нет деления
001
1/2
010
1/4
011
1/8
100
1/16
101
1/32
110
1/64
111
1/128
UPPS
3-0
Поле задания делителя квадратурного сигнала
0h
Нет деления
1h
1/2
2h
1/4
3h
1/8
4h
1/16
5h
1/32
6h
1/64
7h
1/128
8h
1/256
9h
1/512
Ah
1/1024
Bh
1/2048
Ch-Fh
Зарезервировано
31-16,
Зарезервировано
14-8
QPOSCTL - регистр управления счетчиком позиции
Таблица А.14.16 - Структура регистра QPOSCTL
Смещение: 38h
Сброс: 00000000h
Поле
Биты
Описание
PCSHDW
15
Бит разрешения режима отложенной загрузки
0
Запрещено
1
Разрешено
PCLOAD
14
Бит выбора события загрузки в режиме отложенной записи
0
Загрузка отложенного значения в активный регистр по событию
QPOSCNT = 0.
1
Загрузка по QPOSCNT = QPOSCMP
342
Окончание таблицы А.14.16
Поле
Биты
Описание
PCPOL
13
Бит выбора полярности выхода синхронизации
0
Активная единица
1
Активный ноль
PCE
12
Бит разрешения работы компаратора
0
Запрещено
1
Разрешено
PCSPW
11-0
Поле задания ширины импульса выхода синхронизации
000h
Отсутствие импульса
001h
2 × P
007h
8 × P
FFFh
4096 × P
P - период системного тактового сигнала
-
31-16
Зарезервировано
QEINT - регистр масок прерываний
Таблица А.14.17 - Структура регистра QEINT
Смещение: 3Сh
Сброс: 00000000h
Поле
Бит
Описание
UTO
11
Бит разрешения прерывания по срабатыванию таймера временных отсчетов
IEL
10
Бит разрешения прерывания по событию индексации
SEL
9
Бит разрешения прерывания по событию стробирования
PCM
8
Бит разрешения прерывания по срабатыванию компаратора
PCR
7
Бит разрешения прерывания по готовности компаратора к загрузке
значения сравнения из отложенного регистра
PCO
6
Бит разрешения прерывания по переполнению счетчиком позиции
QPOSMAX при счете вверх
PCU
5
Бит разрешения прерывания по переходу счетчиком позиции через
минимальное значение при счете вниз
WTO
4
Бит разрешения прерывания при срабатывании сторожевого таймера
QDC
3
Бит разрешения прерывания при смене направления вращения
QPE
2
Бит разрешения прерывания по ошибке фазы на квадратурном входе
PCE
1
Бит разрешения прерывания счетчика позиции
31-
Зарезервировано
12, 0
Установленный бит разрешает генерирование соответствующего прерывания,
сброшенный - запрещает
343
QFLG - регистр флагов прерываний
Таблица А.14.18 - Структура регистра QFLG
Смещение: 40h
Сброс: 00000000h
Поле
Бит
Описание
QFLGLAT
27-16
Защелкивает биты 11-0 регистра QFLG по событию чтения регистра
QPOSCNT. Поле доступно только для чтения.
UTO
11
Флаг прерывания по срабатыванию таймера временных отсчетов
IEL
10
Флаг прерывания по событию индексации
SEL
9
Флаг прерывания по событию стробирования
PCM
8
Флаг прерывания по срабатыванию компаратора
PCR
7
Флаг прерывания по готовности компаратора к загрузке значения
сравнения из отложенного регистра
PCO
6
Флаг прерывания по переполнению счетчиком позиции QPOSMAX
при счете вверх
PCU
5
Флаг прерывания по переходу счетчиком позиции через
минимальное значение при счете вниз
WTO
4
Флаг прерывания при срабатывании сторожевого таймера
QDC
3
Флаг прерывания при смене направления вращения
QPE
2
Флаг прерывания по ошибке фазы на квадратурном входе
PCE
1
Флаг прерывания ошибки счетчика позиции
INT
0
Флаг выходного прерывания блока квадратурного декодера
31-28,
Зарезервировано
15-12
Установленный бит является индикатором запроса соответствующего прерывания.
Сброс флагов прерываний осуществляется посредством регистра QCLR
QCLR - регистр сброса флагов прерываний
Таблица А.14.19 - Структура регистра QCLR
Смещение: 44h
Сброс: 00000000h
344
Окончание таблицы А.14.19
Поле
Бит
Описание
UTO
11
Запись единицы сбрасывает флаг прерывания по срабатыванию
таймера временных отсчетов
IEL
10
Запись единицы сбрасывает флаг прерывания по событию
индексации
SEL
9
Запись единицы сбрасывает флаг прерывания по событию
стробирования
PCM
8
Запись единицы сбрасывает флаг прерывания по срабатыванию
компаратора
PCR
7
Запись единицы сбрасывает флаг прерывания по готовности
компаратора к загрузке значения сравнения из отложенного регистра
PCO
6
Запись единицы сбрасывает флаг прерывания по переполнению
счетчиком позиции QPOSMAX при счете вверх
PCU
5
Запись единицы сбрасывает флаг прерывания по переходу
счетчиком позиции через минимальное значение при счете вниз
WTO
4
Запись единицы сбрасывает флаг прерывания при срабатывании
сторожевого таймера
QDC
3
Запись единицы сбрасывает флаг прерывания при смене
направления вращения
QPE
2
Запись единицы сбрасывает флаг прерывания по ошибке фазы на
квадратурном входе
PCE
1
Запись единицы сбрасывает флаг прерывания ошибки счетчика
позиции
INT
0
Запись единицы сбрасывает флаг выходного прерывания блока
квадратурного декодера
-
31-12
Зарезервировано
QFRC - регистр эмуляции прерываний
Таблица А.14.20 - Структура регистра QFRC
Смещение: 48h
Сброс: 00000000h
Поле
Бит
Описание
UTO
11
Запись единицы сбрасывает флаг прерывания по срабатыванию
таймера временных отсчетов
IEL
10
Запись единицы сбрасывает флаг прерывания по событию
индексации
SEL
9
Запись единицы сбрасывает флаг прерывания по событию
стробирования
PCM
8
Запись единицы сбрасывает флаг прерывания по срабатыванию
компаратора
345
Окончание таблицы А.14.20
Поле
Бит
Описание
PCR
7
Запись единицы сбрасывает флаг прерывания по готовности
компаратора к загрузке значения сравнения из отложенного регистра
PCO
6
Запись единицы сбрасывает флаг прерывания по переполнению
счетчиком позиции QPOSMAX при счете вверх
PCU
5
Запись единицы сбрасывает флаг прерывания по переходу
счетчиком позиции через минимальное значение при счете вниз
WTO
4
Запись единицы сбрасывает флаг прерывания при срабатывании
сторожевого таймера
QDC
3
Запись единицы сбрасывает флаг прерывания при смене
направления вращения
QPE
2
Запись единицы сбрасывает флаг прерывания по ошибке фазы на
квадратурном входе
PCE
1
Запись единицы сбрасывает флаг прерывания ошибки счетчика
позиции
INT
0
Запись единицы сбрасывает флаг выходного прерывания блока
квадратурного декодера
-
31-12
Зарезервировано
QEPSTS - регистр статуса
Таблица А.14.21 - Структура регистра QEPSTS
Смещение: 4Сh
Сброс: 00000000h
Поле
Бит
Описание
DCF
8
Флаг изменения направления вращения вала ротора
0
Направление не изменялось
1
Произошло изменение направления вращения
Сбрасывается записью 1
UPEVNT
7
Флаг сброса QCTMR и обновления QCPRD
0
Нет событий
1
Зафиксировано событие сброса и обновления
Сбрасывается записью 1.
FIDF
6
Индикатор направления вращения по событию первого импульса
индексации
0
Против часовой стрелки (счет вниз)
1
По часовой стрелке (счет вверх)
Доступен только для чтения
346
Окончание таблицы А.14.21
Поле
Бит
Описание
QDF
5
Флаг направления вращения. Обновляется по каждому событию на
входах квадратур
0
Вращение вала ротора против часовой стрелки
1
Вращение вала ротора по часовой стрелке.
Доступен только для чтения.
QDLF
4
Флаг направления вращения. Обновляется по каждому сигналу
индексации
0
Вращение вала ротора против часовой стрелки
1
Вращение вала ротора по часовой стрелке.
Доступен только для чтения.
COEF
3
Флаг ошибки переполнения счетчика QCTMR модуля захвата
0
Ошибка отсутствует
1
Произошло переполнение
Сбрасывается записью 1
CDEF
2
Флаг ошибки изменения направления вращения вала ротора между
двумя событиями UPEVNT
0
Ошибка отсутствует
1
Произошло изменение направления вращения во время измерения
Сбрасывается записью 1
FIMF
1
Флаг приема первого импульса сигнала индексации
0
Импульсов нет, либо первый импульс уже был принят
1
Принят первый импульс сигнала индексации
Сбрасывается записью 1
PCEF
0
Флаг ошибки счетчика позиции. Обновляется по каждому сигналу
индексации
0
Во время последнего сигнала индексации ошибки не возникло
1
Ошибка счетчика позиции
Доступен только для чтения.
-
31-9
Зарезервировано
QCTMR - регистр таймера блока захвата
Таблица А.14.22 - Структура регистра QCTMR
Смещение: 50h
Сброс: 00000000h
Поле
Биты
Описание
VAL
31-0
Значение таймера блока захвата
347
QCPRD - регистр длительности измерения блока захвата
Таблица А.14.23 - Структура регистра QCPRD
Смещение: 54h
Сброс: 00000000h
Поле
Биты
Описание
VAL
31-0
Значение длительности измерения блока захвата
QCTMRLAT - регистр хранения таймера блока захвата
Таблица А.14.24 - Структура регистра QCTMRLAT
Смещение: 58h
Сброс: 00000000h
Поле
Биты
Описание
VAL
31-0
Значение хранения таймера блока захвата
QCPRDLAT - регистр хранения длительности измерения блока захвата
Таблица А.14.25 - Структура регистра QCPRDLAT
Смещение: 5Сh
Сброс: 00000000h
Поле
Биты
Описание
VAL
31-0
Значение хранения длительности измерения блока захвата
348
DMAREQ - регистр управления запросом DMA
Таблица А.14.26 - Структура регистра DMAREQ
Смещение: 60h
Сброс: 00000000h
Поле
Бит
Описание
DMAEN
0
Разрешение генерации запроса DMA. Запрос генерируется каждый
раз когда флаг UPEVNT (регистра EPSTS) переходит из 0 в 1. Если
UPEVNT будет оставаться несброшенным, то запросы
генерироваться не будут. При этом, когда происходит чтение
QCPRD при DMAEN=1 флаг UPEVNT сбрасывается автоматически.
0
Нет запроса
1
Запрос разрешен
31-1
Зарезервировано
INTCLR - регистр сброса прерывания
Таблица А.14.27 - Структура регистра INTCLR
Смещение: 70h
Сброс: 00000000h
Поле
Бит
Описание
INT
0
Бит сброса прерывания. Чтение возвращает текущий статус активности
прерывания.
Запись единицы в бит сбрасывает запрос прерывания. Активный запрос
способен вызывать повторные запуски обработчика прерывания.
-
31-1
Зарезервировано
349
A.15 Регистры контроллера I2С
Базовые адреса и смещения
Таблица A.15.1 - Базовый адрес блока I2C
Адрес
Название
Описание
40050000h
I2C
Базовый адрес регистров I2C
SDA - регистр данных
Таблица А.15.2 - Структура регистра SDA
Смещение: 00h
Сброс: 00XXh
Поле
Биты
Описание
DATA
7-0
Поле данных
15-8
Зарезервировано
ST - регистр состояния
Таблица А.15.3 - Структура регистра ST
Смещение: 04h
Сброс: 0000h
Поле
Бит
Описание
INT
7
Флаг прерывания.
Устанавливается после девятого такта сигнала SCL (когда SCL = 0) в любое
запрограммированное время. Условия выставления флага INT:
- во время приема/передачи, как в режиме мастера, так и в режиме
ведомого;
- при совпадении адреса (адреса ведомого, адреса отклика или адреса
общего вызова) содержимое регистра SDA должно контролироваться
программно для определения типа полученного адреса;
- после успешного формирования стартового состояния или состояния
повторного старта;
- в случае неквитирования переданной информации;
- при потере арбитража во время передачи последнего бита;
- при обнаружении валидного состояния останова или состояния
повторного старта;
- при обнаружении ошибки на шине.
Пока установлен флаг INT, на линии SCL удерживается низкий уровень
сигнала.
Флаг INT может быть сброшен установкой бита CLRST в регистре CTL0
или выключением модуля I2C (обнуление бита ENABLE в регистре CTL1).
350
Окончание таблицы А.15.3
Поле
Бит
Описание
INT
7
Условия выставления флага INT (не влияющие на уровень сигнала на
линии SCL):
- простой на линии SCL;
- состояние останова в режиме ведомого (MODE = 1Ch);
- потеря арбитража, вследствие чего ведомый переключился в
безадресный режим (MODE = 03h или MODE = 23h);
- неквитированная передача байта данных (MODE = 17h)
MODE
5-0
Код состояния.
Возникновение того или иного состояния в течение функционирования
модуля I2C сопровождается записью соответствующего кода в поле
MODE
-
15-8,
Зарезервировано
6
CST - регистр управления и статуса
Таблица А.15.4 - Структура регистра CST
Смещение: 08h
Сброс: 0000h
Поле
Бит
Описание
PECFAULT
7
Флаг ошибки.
Устанавливается в случае, если после расчета контрольной суммы для
пакета данных и сравнения ее с полученной суммой, значение во
внутреннем регистре ошибок не нулевое
PECNEXT
6
Бит управления отправкой байта контрольной суммы.
Установка бита указывает на то, что следующий передаваемый байт
будет байтом CRC (байт контрольной суммы). Реакция на установку
бита PECNEXT зависит от режима работы.
В режиме мастера передатчика установка бита PECNEXT вызовет
загрузку результата вычисления CRC в регистр SDA. После сброса
флага INT начнется передача байта CRC.
В режиме приемника установка этого бита будет указывать логике
управления на то, что следующий байт, который будет принят, будет
байтом CRC. В режиме ведомого приемника модуль I2C
автоматически будет квитировать или не квитировать прием байта
CRC, в зависимости от того, будет ли выявлена ошибка пакета
данных или нет. В режиме мастера приемника по окончании приема
байта CRC, будет отправлено значение бита ACK регистра CTL0
TGSCL
5
Бит переключения SCL.
Бит позволяет переключать вывод SCL во время восстановления
после ошибки. Когда на выводе SDA - низкий уровень сигнала,
запись «1» в бит TGSCL переключит вывод SCL на один такт.
Когда на SDA высокий уровень сигнала, запись «1» в бит TGSCL
игнорируется.
Бит очищается аппаратно по окончании такта
351
Окончание таблицы А.15.4
Поле
Бит
Описание
TSDA
4
Бит тестирования SDA.
Содержит текущее значение SDA. Этот бит можно использовать для
отслеживания окончания процесса восстановления после ошибки, в
течение которого ведомый постоянно поддерживает низкий уровень
сигнала на выводе SDA
TOERR
3
Флаг ошибки простоя на шине.
Если TOERR = 1b, это указывает на то, что на линии SCL был
обнаружен простой. Флаг TOERR выставляется по обнулению
основного счетчика времени простоя и может быть сброшен записью
«1» в бит CLRST регистра CTL0
TOCDIV
2-1
Поле коэффициента делителя.
Устанавливает коэффициент деления системного тактового сигнала,
подаваемого на предделитель времени простоя линии SCL
00
Тактовый сигнал отсутствует
01
Деление на 4
10
Деление на 8
11
Деление на 16
BB
0
Флаг занятости шины.
Если BB = 1b, это указывает на то, что шина занята. Устанавливается,
как только шина переходит в активное состояние (одновременное
появление низкого уровня сигнала на выводах SDA и SCL или хотя
бы на одном из них) или в стартовое состояние.
Сбрасывается при выключении интерфейса I2C, либо при
обнаружении состояния останова
-
15-8
Зарезервировано
CTL0 - регистр управления 0
Таблица А.15.5 - Структура регистра CTL0
Смещение: 0Сh
Сброс: 0000h
Поле
Бит
Описание
CLRST
7
Бит сброса флага прерывания INT.
Запись «0» в бит CLR игнорируется.
Запись «1» в бит CLR сбросит флаг INT в регистре ST.
Чтение этого бита всегда возвращает «0»
SMBARE
6
Бит управления реакцией на получение адреса отклика
0
Полученный адрес не проверяется на совпадение с адресом
отклика
1
Адрес, полученный сразу после старта, проверяется на совпадение
с адресом отклика (0001_100b)
Бит очищается при выходе ведомого из режима IDLE
352
Окончание таблицы А.15.5
Поле
Бит
Описание
GCMEN
5
Бит управления реакцией на получение адреса общего вызова
0
Полученный адрес не проверяется на совпадение с адресом общего
вызова
1
Адрес, полученный сразу после старта, проверяется на совпадение с
адресом общего вызова (0000_000b)
Бит очищается при выходе ведомого из режима IDLE
ACK
4
Бит квитирования приема.
В режиме передатчика не используется.
В режиме приемника (мастера/ведомого) содержит значение, которое
передается в течение цикла отклика на запрос передатчика подтвердить
прием. Передача нуля по окончании передачи байта (квитирование)
означает, что данные успешно получены. Передача единицы
(неквитирование) означает, что приемник не может продолжать работу
по каким-либо причинам. Бит ACK очищается аппаратно по окончании
цикла отклика
INTEN
2
Бит разрешения прерывания
0
Запрещено
1
Разрешено
STOP
1
Бит останова.
В режиме мастера установка бита STOP генерирует состояние останова,
которое завершает или прерывает текущую передачу. После
прекращения передачи бит STOP очищается аппаратно
START
0
Бит старта.
Этот бит устанавливается, когда требуется сформировать стартовое
состояние на шине. Бит START очищается аппаратно по окончании цикла
стартового состояния, а также при обнаружении ошибки на шине
(состояние с кодом 1Fh)
-
15-
Зарезервировано
8, 3
ADDR - регистр собственного адреса
Таблица А.15.6 - Структура регистра ADDR
Смещение: 10h
Сброс: 0000h
Поле
Бит
Описание
SAEN
7
Бит разрешения распознавания адреса
0
Безадресный режим
1
Включена функция распознавания принятого адреса
ADDR
6-0
Поле собственного 7-битного адреса.
При работе в режиме ведомого первые 7 бит, принятые после стартового
состояния, сравниваются со значением ADDR. Если обнаружено
совпадение и установлен бит SAEN, ведомый переходит в режим
приемника или передатчика (в зависимости от состояния бита
направления R/W#)
353
Окончание таблицы А.15.6
Поле
Бит
Описание
15-8
Зарезервировано
CTL1 - регистр управления 1
Таблица А.15.7 - Структура регистра CTL1
Смещение: 14h
Сброс: 0000h
Поле
Биты
Описание
SCLFRQ
7-1
Младшие разряды поля выбора частоты fSCL сигнала на выводе SCL в
режиме мастера.
Длительности высокого(TSCLH) и низкого(TSCLL) уровней сигнала SCL
зависят от тактовой частоты Fpclk модуля I2C и рассчитываются по
формуле
TSCLH = TSCLL = 2 × SCLFRQ × (1/Fpclk).
(А.8.1)
Таким образом, частота сигнала на выводе SCL равна
fSCL = 1/(TSCLH + TSCLL).
(А.8.2)
В поле SCLFRQ можно записать любое значение в диапазоне от 4h до
7FFFh (старшие разряды находятся в регистре CLT3). При попытке
записи любого значения меньше 4h, оно будет записано со смещением
4h. Например, при записи числа 2h, к нему будет аппаратно добавлено
смещение 4h и, в итоге, в поле SCLFRQ окажется значение 6h.
ENABLE
0
Бит включения модуля I2C
0
Модуль выключен.
Тактирование не осуществляется.
Регистры CTL0, ST, CST сброшены
1
Модуль включен
15-8
Зарезервировано
TOPR - регистр загрузки предделителя
Таблица А.15.8 - Структура регистра TOPR
Смещение: 18h
Сброс: 0000h
Поле
Биты
Описание
SMBTOPR
7-0
Поле значения перезагрузки предделителя
15-8
Зарезервировано
354
CTL2 - регистр управления 2
Таблица А.15.9 - Структура регистра CTL2
Смещение: 1Сh
Сброс: 0000h
Поле
Биты
Описание
HSDIV
7-4
Младшие разряды поля выбора частоты fSCL сигнала на выводе SCL в
режиме HS мастера.
Длительности высокого(THSCLH) и низкого(THSCLL) уровней сигнала на
выводе SCL зависят от тактовой частоты Fpclk модуля I2C и
рассчитываются по формулам
THSCLH = HSDIV × (1/ Fpclk),
(А.8.3)
THSCLL = 2 × HSDIV × (1/ Fpclk).
(А.8.4)
Таким образом, частота сигнала на выводе SCL равна
fSCL = 1/(THSCLH + THSCLL).
(А.8.5)
В поле HSDIV можно записать любое значение в диапазоне от 2h до
1000h (старшие разряды находятся в регистре CTL4). При попытке
записи любого значения меньше 2 в поле HSDIV, оно будет записано со
смещением 2. Например, при записи числа 1 к нему будет аппаратно
добавлено смещение 2 и, в итоге, в поле HSDIV окажется значение 3.
S10EN
3
Бит разрешения 10-битной адресации ведомого
0
Запрещена
1
Разрешена при условии, что установлен бит SAEN в регистре
ADDR
S10ADR
2-0
Поле старших битов 10-битного адреса ведомого.
Поле содержит старшие три разряда адреса ведомого при
10-битной адресации.
Первый принятый байт адреса сравнивается со значением
[11110b, S10ADR[2:1]], второй байт адреса - со значением
[S10ADR[0], ADDR]
-
15-8
Зарезервировано
CTL3 - регистр управления 3
Таблица А.15.10 - Структура регистра CTL3
Смещение: 20h
Сброс: 0000h
Поле
Биты
Описание
SCLFRQ
7-0
Старшие разряды делителя SCLFRQ. См. основное описание поля в
регистре CTL1 (таблица А.15.7).
-
15-8
Зарезервировано
355
CTL4 - регистр управления 4
Таблица А.15.11 - Структура регистра CTL4
Смещение: 24h
Сброс: 0000h
Поле
Биты
Описание
HSDIV
7-0
Старшие разряды делителя HSDIV. См. основное описание поля в
регистре CTL2 (таблица А.15.9).
-
15-8
Зарезервировано
356
A.16 Регистры блока захвата
Базовые адреса и смещения
Таблица A.16.1 - Базовые адреса блоков захвата
Адрес
Название
Описание
40051000h
ECAP0
Базовый адрес регистров блока захвата 0
40052000h
ECAP1
Базовый адрес регистров блока захвата 1
40053000h
ECAP2
Базовый адрес регистров блока захвата 2
TSCTR - регистр счетчика таймера
Таблица А.16.2 - Структура регистра TSCTR
Смещение: 00h
Сброс: 00000000h
Поле
Биты
Описание
VAL
31-0
Запись задает начальное значение таймера.
Чтение возвращает текущее значение таймера.
CTRPHS - регистр отложенной загрузки таймера
Таблица А.16.3 - Структура регистра CTRPHS
Смещение: 04h
Сброс: 00000000h
Поле
Биты
Описание
VAL
31-0
Значение из регистра загружается в таймер по событиям SYNCI
или под управлением процессора. Регистр используется для
синхронизации с другими блоками CAP/PWM.
357
CAP0 - регистр захвата 0
Таблица А.16.4 - Структура регистра CAP0
Смещение: 08h
Сброс: 00000000h
Поле
Биты
Описание
VAL
31-0
Регистр используется только в режиме захвата и содержит
значение таймера, сохраненное по событию EV0.
PRD - регистр периода
Таблица А.16.5 - Структура регистра PRD
Смещение: 08h
Сброс: 00000000h
Поле
Биты
Описание
VAL
31-0
Регистр используется только в режиме APWM и содержит
значение периода генерации. Величина может быть обновлена из
регистра отложенной загрузки PRDSHDW.
CAP1 - регистр захвата 1
Таблица А.16.6 - Структура регистра CAP0
Смещение: 0Сh
Сброс: 00000000h
358
Окончание таблицы А.16.6
Поле
Биты
Описание
VAL
31-0
Регистр используется только в режиме захвата и содержит
значение таймера, сохраненное по событию EV1.
CMP - регистр сравнения
Таблица А.16.7 - Структура регистра CMP
Смещение: 0Ch
Сброс: 00000000h
Поле
Биты
Описание
VAL
31-0
Регистр используется только в режиме APWM и содержит
значение сравнения. Величина может быть обновлена из регистра
отложенной загрузки CMPSHDW.
CAP2 - регистр захвата 2
Таблица А.16.8 - Структура регистра CAP2
Смещение: 10h
Сброс: 00000000h
Поле
Биты
Описание
VAL
31-0
Регистр используется только в режиме захвата и содержит
значение таймера, сохраненное по событию EV2.
359
PRDSHDW - регистр отложенной загрузки периода
Таблица А.16.9 - Структура регистра PRDSHDW
Смещение: 10h
Сброс: 00000000h
Поле
Биты
Описание
VAL
31-0
Регистр используется только в режиме APWM и содержит
значение отложенной загрузки периода. По событию CTR=PRD
значение будете перенсено в регистр PRD.
CAP3 - регистр захвата 3
Таблица А.16.10 - Структура регистра CAP3
Смещение: 14h
Сброс: 00000000h
Поле
Биты
Описание
VAL
31-0
Регистр используется только в режиме захвата и содержит
значение таймера, сохраненное по событию EV3.
CMPSHDW - регистр отложенной загрузки сравнения
Таблица А.16.11 - Структура регистра CMPSHDW
Смещение: 14h
Сброс: 00000000h
360
Окончание таблицы А.16.11
Поле
Биты
Описание
VAL
31-0
Регистр используется только в режиме APWM и содержит
значение отложенной загрузки сравнения. По событию CTR=PRD
значение будете перенсено в регистр CMP.
ECCTL0 - регистр контроля 0
Таблица А.16.12 - Структура регистра ECCTL0
Смещение: 28h
Сброс: 00000000h
Поле
Биты
Описание
FREESOFT
15-14
Управление остановкой таймера в режиме отладки
00
Моментальная остановка таймера
01
Остановка таймера по переполнению
10, 11
Таймер не останавливается
PRESCALE
13-9
Предварительный делитель.
Если записано значение 00h - делитель выключен.
CAPLDEN
8
Бит разрешения захвата регистрами CAP0 - CAP3
0
Запрещено
1
Разрешено
CTRRSTn
7, 5,
Бит сброса таймера после события n (n от 0 до 3)
3, 1
0
Нет действий
1
Сброс таймера после события n
CAPnPOL
6, 4,
Бит выбора фронта захвата (n от 0 до 3)
2, 0
0
Захват по переднему фронту
1
Захват по заднему фронту
31-16
Зарезервировано
ECCTL1 - регистр контроля 1
Таблица А.16.13 - Структура регистра ECCTL1
Смещение: 2Сh
Сброс: 00000000h
361
Окончание таблицы А.16.13
Поле
Бит
Описание
APWMPOL
10
Бит задания активного уровня в режиме APWM
0
Высокий
1
Низкий
CAPAPWM
9
Бит выбора режима
0
Работа в режиме захвата. Блокирование сброса таймера по событию
CTR=PRD. Блокирование отложенной загрузки PRD, CMP.
Разрешение захвата CAP0-CAP3. Внешний порт работает на вход.
1
Работа в режиме APWM. Разрешение сброса таймера по CTR =
PRD. Разрешение теневой загрузки PRD, CMP. Блокирование
захвата CAP0-CAP3. Внешний порт работает на выход.
SWSYNC
8
Межблочная синхронизация таймеров
0
Нет действий
1
Запись единицы:
- загружает значение таймера из отложенного регистра при
условии, что установлен бит SYNCIEN;
- генерирует выходной сигнал синхронизации SYNCO при
условии, что в поле SYNCOSEL записано 00b.
Примечание - В режиме APWM синхронизация также
происходит автоматически по событию CTR = PRD.
SYNCOSEL
7-6
Выбор источника выходного синхросигнала SYNCO
00
Пропуск сигнала синхронизации с SYNCI или SWSYNC
01
Передача события CTR = PRD в качестве выходного
сигнала синхронизации
10, 11
Запрет выходного сигнала синхронизации
SYNCIEN
5
Бит разрешения синхронизации
0
Запрещено
1
Разрешено
TSCTRSTOP
4
Бит управления работой таймера
0
Остановлен
1
Запущен
REARM
3
Запись единицы запускает следующую последовательность
действий: сброс управляющего контроллера, разрешение работы
управляющего контроллера и загрузку регистров захвата
STOPWRAP
2-1
Значение компаратора остановки в режимах захвата
00
Останов при значениии счетчика 00
01
Останов при значениии счетчика 01
10
Останов при значениии счетчика 10
11
Останов при значениии счетчика 11
Примечание - Остановка управляющего контроллера
приводит также к блокировке загрузки регистров захвата.
CONTOST
0
Режим работы захвата
0
Циклический
1
Однократный
31-
Зарезервировано
16,
7-3
362
ECEINT - регистр маски прерываний
Таблица А.16.14 - Структура регистра ECEINT
Смещение: 30h
Сброс: 00000000h
Поле
Бит
Описание
CTRCMP
7
Бит разрешения генерации прерывания по событию CTR = CMP
CTRPRD
6
Бит разрешения генерации прерывания по событию CTR = PRD
CTROVF
5
Бит разрешения генерации прерывания по событию CTROVF
CEVTn
4-1
Бит разрешения генерации прерывания по событию CEVTn (n от 0
до 3)
-
31-8,
Зарезервировано
0
Для всех бит: установленный бит разрешает прерывание, а сброшенный - запрещает
ECFLG - регистр статуса прерываний
Таблица А.16.14 - Структура регистра ECFLG
Смещение: 34h
Сброс: 00000000h
Поле
Бит
Описание
CTRCMP
7
Флаг прерывания по событию CTR = CMP
0
Событие не произошло
1
Событие произошло
CTRPRD
6
Флаг прерывания по событию CTR = PRD
0
Событие не произошло
1
Событие произошло
CTROVF
5
Флаг прерывания по событию CTROVF
0
Событие не произошло
1
Событие произошло
CEVTn
4-1
Флаг прерывания по событию CEVTn (n от 0 до 3)
0
Событие не произошло
1
Событие произошло
INT
0
Флаг прерывания
363
Окончание таблицы А.16.14
Поле
Бит
Описание
31-8
Зарезервировано
Примечание - Все флаги сбрасываются записью единиц в биты регистра ECCLR.
ECCLR - регистр сброса прерываний
Таблица А.16.15 - Структура регистра ECCLR
Смещение: 38h
Сброс: 00000000h
Поле
Бит
Описание
CTRCMP
7
Запись единицы сбрасывает флаг прерывания по событию CTR =
CMP
CTRPRD
6
Запись единицы сбрасывает флаг прерывания по событию CTR =
PRD
CTROVF
5
Запись единицы сбрасывает флаг прерывания по событию
CTROVF
CEVTn
4-1
Запись единицы сбрасывает флаг прерывания по событию CEVTn
(n от 0 до 3)
INT
0
Запись единицы сбрасывает флаг прерывания
31-8
Зарезервировано
ECFRC - регистр программных прерываний
Таблица А.16.16 - Структура регистра ECFRC
Смещение: 3Ch
Сброс: 00000000h
Поле
Бит
Описание
CTRCMP
7
Запись единицы генерирует прерывание по событию CTR = CMP
CTRPRD
6
Запись единицы генерирует прерывание по событию CTR = PRD
CTROVF
5
Запись единицы генерирует прерывание по событию CTROVF
CEVTn
4-1
Запись единицы генерирует прерывание по событию CEVTn (n от 0
до 3)
364
Окончание таблицы А.16.16
Поле
Бит
Описание
31-8
Зарезервировано
PEINT - регистр активного прерывания
Таблица А.16.17 - Структура регистра PEINT
Смещение: 40h
Сброс: 00000000h
Поле
Бит
Описание
PEINT
0
Флаг активного прерывания.
Устанавливается при возникновении прерывания блока.
Сбрасывается только программно, записью единицы
-
31-1
Зарезервировано
365
Приложение Б (обязательное) Коды состояний функционирования блока I2C
В таблицах Б.1 - Б.11 представлена информация о соответствии кодов и операций.
Условные обозначения, принятые в таблицах:
- [ADR, 0], [ADR, 1] - 8-разрядное значение, состоящее из 7-разрядного адреса ADR
и бита направления передачи R/W#, значение которого
«0» или
«1» указывается
непосредственно;
- DAT - байт данных;
- код мастера - 8-разрядное значение 0000_1хххb, где «ххх» - уникальный код
каждого мастера в системе нескольких устройств;
- «с ACK» - выражение, обозначающее, что после передачи адреса/байта в ответ на
запрос подтверждения передачи (бит ACK) передатчик получает подтверждение передачи
от ведомого (квитирование);
- «с NACK» - выражение, обозначающее, что после передачи адреса/байта в ответ на
запрос подтверждения передачи (бит ACK) передатчик получает неподтверждение
передачи от ведомого (неквитирование);
- Х - бит может быть установленным (1b) или сброшенным (0b), в зависимости от
режима работы, состояния и дальнейших действий модуля I2C.
Таблица Б.1 - Исключительные состояния
Биты регистра
CTL0
Описание
Регистр
Возможные дальнейшие действия
состояния
SDA
и коды результатов их выполнения
Ожидать завершения текущей передачи
00h
IDLE
-
-
-
-
-
байта
Ошибка
Функционировать в режиме безадресного
1Fh
-
1
0
0
0
на шине
ведомого (00h)
Таблица Б.2 - Режим FS мастера передатчика (дополнительно см. таблицу Б.4)
Биты регистра
CTL0
Описание
Регистр
Возможные дальнейшие действия
состояния
SDA
и коды результатов их выполнения
1
2
3
4
5
6
7
8
Код
Передать код мастера и перейти в
01h
Старт
мастера 1
0
0
0
режим HS (0Сh/ 21h)
[ADR, 0]
Передать адрес ведомого (04h/ 05h)
[ADR, 0]
Передать адрес ведомого (04h/ 05h)
Повторный
Передать адрес ведомого, после чего
02h
1
0
0
0
Старт
[ADR, 1]
перейти в режим приемника (08h/
09h)
366
Окончание таблицы Б.2
1
2
3
4
5
6
7
8
Потеря
Функционировать в режиме
арбитража,
безадресного ведомого (00h)
мастер
03h
перешел
-
1
0
0
0
в режим
безадресного
ведомого
DAT
1
0
0
0
Передать байт данных (06h/ 07h)
Отправлен
1
0
0
1
Сделать повторный старт (02h)
адрес
04h
1
0
1
0
Остановить передачу (00h)
ведомого
1
0
1
1
Остановить передачу, а затем сделать
с ACK
повторный старт (01h)
1
0
0
1
Сделать повторный старт (02h)
Отправлен
адрес
1
0
1
0
Остановить передачу (00h)
05h
-
ведомого
1
0
1
1
Остановить передачу, а затем сделать
с NACK
повторный старт (01h)
DAT
1
0
0
0
Передать байт данных (06h/ 07h)
Отправлен
1
0
0
1
Сделать повторный старт (02h)
байт
06h
1
0
1
0
Остановить передачу (00h)
данных
1
0
1
1
Остановить передачу, а затем сделать
с ACK
повторный старт (01h)
1
0
0
1
Сделать повторный старт (02h)
Отправлен
байт
1
0
1
0
Остановить передачу (00h)
07h
-
данных
1
0
1
1
Остановить передачу, а затем сделать
с NACK
повторный старт (01h)
Таблица Б.3 - Режим FS мастера приемника
Биты регистра
CTL0
Описание
Регистр
Возможные дальнейшие действия
состояния
SDA
и коды результатов их выполнения
1
2
3
4
5
6
7
8
Отправлен
1
0
0
0
Получить байт данных, квитировать
адрес
прием (0Ah)
08h
ведомого
1
1
0
0
Получить байт данных, не квитировать
с ACK
прием (0Вh)
1
0
0
1
Сделать повторный старт (02h)
Отправлен
адрес
1
0
1
0
Остановить передачу (00h)
09h
-
ведомого
1
0
1
1
Остановить передачу, а затем сделать
с NACK
повторный старт (01h)
Принят
1
0
0
0
Получить байт данных, квитировать
байт
DAT
прием (0Ah)
0Ah
данных и
1
1
0
0
Получить байт данных, не квитировать
квити-
прием (0Вh)
рован
367
Окончание таблицы Б.3
1
2
3
4
5
6
7
8
Принят
1
0
0
1
Сделать повторный старт (02h)
байт
1
0
1
0
Остановить передачу (00h)
0Bh
данных и
DAT
1
0
1
1
Остановить передачу, а затем сделать
не квити-
повторный старт (01h)
рован
Таблица Б.4 - Режим FS мастера передатчика (дополнительно см. таблицу Б.2)
Биты регистра CTL0
Возможные дальнейшие
Описание
Регистр
действия
состояния
SDA
и коды результатов их
выполнения
1
0
0
1
Сделать повторный старт (02h)
Отправлен код
мастера,
1
0
1
0
Остановить передачу (00h)
0Ch
-
обнаружена
1
0
1
1
Остановить передачу, а затем
ошибка (ACK)
сделать повторный старт (01h)
Таблица Б.5 - Режим FS ведомого приемника (дополнительно см. таблицу Б.7)
Биты регистра
CTL0
Описание
Регистр
Возможные дальнейшие действия
состояния
SDA
и коды результатов их выполнения
Принят
1
0
0
0
Получить байт данных, квитировать
адрес и
прием (12h)
10h
квити-
1
1
0
0
Получить байт данных, не квитировать
рован
прием (13h)
Принят
1
0
0
0
Получить байт данных, квитировать
адрес пос-
прием (12h)
лепотери
1
1
0
0
Получить байт данных, не квитировать
11h
арбитража
прием (13h)
и квити-
рован
Принят
1
0
0
0
Получить байт данных, квитировать
байт
прием (12h)
12h
данных и
DAT
1
1
0
0
Получить байт данных, не квитировать
квити-
прием (13h)
рован
Принят
1
0
0
0
Функционировать в режиме безадресного
байт
ведомого (00h)
13h
данных и
DAT
1
0
0
1
Функционировать в режиме безадресного
не квити-
ведомого,
сделать
старт
после
рован
освобождения шины (00h, 01h)
368
Таблица Б.6 - Режим FS ведомого передатчика
Биты регистра
CTL0
Описание
Регистр
Возможные дальнейшие действия
состояния
SDA
и коды результатов их выполнения
1
2
3
4
5
6
7
8
Принят
адрес и
Передать байт данных, квитировать/
14h
DAT
1
X
0
0
квити-
не квитировать (16h/17h)
рован
Принят
адрес
после
Передать байт данных, квитировать/
15h
потери
DAT
1
X
0
0
не квитировать (16h/17h)
арбитража
и квити-
рован
Отправлен
байт
Передать байт данных, квитировать/
16h
DAT
1
X
0
0
данных
не квитировать (16h/17h)
с ACK
Функционировать в режиме
Отправлен
1
X
0
0
безадресного ведомого (00h)
байт
17h
-
Функционировать в режиме безадресного
данных
1
Х
0
1
ведомого, сделать старт после освобождения
с NACK
шины (00h, 01h)
Принят
адрес
Передать байт данных, квитировать/
18h
отклика и
DAT
1
X
0
0
не квитировать (1Аh/1Вh)
квити-
рован
Принят
адрес
отклика
после
Передать байт данных, квитировать/
19h
DAT
1
X
0
0
потери
не квитировать (1Аh/1Вh)
арбитража
и квити-
рован
Отправлен
байт
данных в
ответ на
Передать байт данных, квитировать/
1Аh
DAT
1
X
0
0
получение
не квитировать (1Аh/1Вh)
адреса
отклика
с ACK
369
Окончание таблицы Б.6
1
2
3
4
5
6
7
8
Отправлен
1
X
0
0
Функционировать в режиме безадресного
байт
ведомого (00h)
данных в
1
X
0
1
Функционировать в режиме безадресного
ответ на
1Bh
ведомого,
сделать
старт
после
получение
освобождения шины (00h, 01h)
адреса
отклика
с NACK
Таблица Б.7 - Режим FS ведомого приемника (дополнительно см. таблицу Б.5)
Биты регистра
CTL0
Описание
Регистр
Возможные дальнейшие действия
состояния
SDA
и коды результатов их выполнения
1
0
0
0
Функционировать в режиме
безадресного ведомого (00h)
1Ch
Стоп
-
1
0
0
1
Функционировать в режиме
безадресного ведомого, сделать старт
после освобождения шины (00h, 01h)
Принят
1
0
0
0
Получить байт данных, квитировать
адрес
прием (12h)
общего
1
1
0
0
Получить байт данных, не квитировать
1Dh
-
вызова и
прием (13h)
квити-
рован
Принят
1
0
0
0
Получить байт данных, квитировать
адрес
прием (12h)
общего
1
1
0
0
Получить байт данных, не квитировать
вызова
прием (13h)
1Eh
после
-
потери
арбитража
и квити-
рован
370
Таблица Б.8 - Режим HS мастера передатчика
Биты регистра
CTL0
Описание
Регистр
Возможные дальнейшие действия
состояния
SDA
и коды результатов их выполнения
Успешно
Сделать повторный старт (22h)
отправлен
код мастера,
21h
-
1
0
0
1
мастер
перешел в
режим HS
Повторный
[ADR, 0]
Передать адрес ведомого (28h/29h)
старт
Передать адрес ведомого, после
22h
[ADR, 1]
1
0
0
0
квитирования/не квитирования
переключиться в режим мастера
приемника (28h/29h)
Потеря
Функционировать в режиме
арбитража,
безадресного ведомого (00h)
мастер
23h
перешел в
-
1
0
0
0
режим HS
безадресного
ведомого
DAT
1
0
0
0
Передать байт данных (26h/27h)
Отправлен
1
0
0
1
Сделать повторный старт (22h)
адрес
24h
1
0
1
0
Остановить передачу (00h)
ведомого
1
0
1
1
Остановить передачу, а затем сделать
с ACK
повторный старт (01h)
Отправлен
1
0
0
1
Сделать повторный старт (22h)
адрес
1
0
1
0
Остановить передачу (00h)
25h
-
ведомого
1
0
1
1
Остановить передачу, а затем сделать
с NACK
повторный старт (01h)
DAT
1
0
0
0
Передать байт данных (26h/27h)
Отправлен
1
0
0
1
Сделать повторный старт (22h)
байт
26h
1
0
1
0
Остановить передачу (00h)
данных
1
0
1
1
Остановить передачу, а затем сделать
с ACK
повторный старт (01h)
Отправлен
1
0
0
1
Сделать повторный старт (22h)
байт
1
0
1
0
Остановить передачу (00h)
27h
-
данных
1
0
1
1
Остановить передачу, а затем сделать
с NACK
повторный старт (01h)
371
Таблица Б.9 - Режим HS мастера приемника
Биты регистра
CTL0
Описание
Регистр
Возможные дальнейшие действия
состояния
SDA
и коды результатов их выполнения
Отправлен
1
0
0
0
Получить байт данных, квитировать
адрес
прием (2Ah)
28h
ведомого
1
1
0
0
Получить байт данных, не квитировать
с ACK
прием (2Вh)
Отправлен
1
0
0
1
Сделать повторный старт (02h)
адрес
1
0
1
0
Остановить передачу (00h)
29h
ведомого
1
0
1
1
Остановить передачу, а затем сделать
с NACK
повторный старт (01h)
Принят
1
0
0
0
Получить байт данных, квитировать
байт
прием (2Ah)
2Ah
данных и
DAT
1
1
0
0
Получить байт данных, не квитировать
квити-
прием (2Вh)
рован
Принят
1
0
0
1
Сделать повторный старт (02h)
байт
1
0
1
0
Остановить передачу (00h)
2Bh
данных и
DAT
1
0
1
1
Остановить передачу, а затем сделать
не квити-
повторный старт (01h)
рован
Таблица Б.10 - Режим HS ведомого приемника
Биты регистра
CTL0
Описание
Регистр
Возможные дальнейшие действия
состояния
SDA
и коды результатов их выполнения
Принят
1
0
0
0
Получить байт данных, квитировать
адрес и
прием (32h)
30h
квити-
1
1
0
0
Получить байт данных, не квитировать
рован
прием (33h)
Принят
1
0
0
0
Получить байт данных, квитировать
байт
прием (32h)
32h
данных и
DAT
1
1
0
0
Получить байт данных, не квитировать
квити-
прием (33h)
рован
Принят
1
0
0
0
Функционировать в режиме безадресного
байт
ведомого (00h)
33h
данных и
DAT
1
0
0
1
Функционировать в режиме безадресного
не квити-
ведомого,
сделать
старт
после
рован
освобождения шины (00h, 01h)
372
Таблица Б.11 - Режим HS ведомого передатчика
Биты регистра
CTL0
Описание
Регистр
Возможные дальнейшие действия
состояния
SDA
и коды результатов их выполнения
Принят
Передать байт данных, квитировать/
адрес и
не квитировать (36h/37h)
34h
1
X
0
0
квити-
DAT
рован
Отправлен
Передать байт данных, квитировать/
байт
не квитировать (36h/37h)
36h
1
X
0
0
данных
DAT
с ACK
Отправлен
Функционировать в режиме безадресного
1
X
0
0
байт
ведомого (00h)
37h
данных
Функционировать в режиме безадресного
-
с NACK
1
Х
0
1
ведомого,
сделать
старт
после
освобождения шины (00h, 01h)
373
Приложение В (обязательное) Регистры прерываний
Для управления прерываниями используются пять групп регистров ISERi, ICERi,
ISPRi, ICPRi и IABRi, где индекс i = 0, 1, 2 (см. таблицу В.1). Группы имеют идентичную
структуру. Набор прерываний, которыми управляет регистр группы, зависит от индекса.
На рисунке Г.1 показана одна группа регистров и указано соответствие номеров векторов
прерываний и бит регистров. Управление прерыванием осуществляется записью единицы
или нуля в соответствующий бит. Допускается одновременное управление несколькими
прерываниями.
Рисунок В.1 - Соответствие векторов прерываний и бит управляющих регистров
Таблица В.1 - 32-разрядные регистры управления прерываниями
Операция над
Мнемоника и назначение
Влияние на соответствующее прерывание
битом
ISERi
Чтение
0
Прерывание запрещено
Регистр разрешения
1
Прерывание разрешено
прерываний от источников
Запись
0
Нет влияния
1
Разрешение прерывания
ICERi
Чтение
0
Прерывание запрещено
Регистр сброса разрешения
1
Прерывание разрешено
прерываний от источников
Запись
0
Нет влияния
1
Запрет прерывания
ISPRi
Чтение
0
Ждущего прерывания нет
Регистр ждущих прерываний
1
Есть ждущее прерывание
Запись
0
Нет влияния
1
Установка ждущего прерывания
(программное прерывание)
ICPRi
Чтение
0
Ждущего прерывания нет
Регистр сброса ждущих
1
Есть ждущее прерывание
прерываний
Запись
0
Нет влияния
1
Сброс ждущего прерывания
IABRi
Чтение
0
Флага прерывания нет
Регистр флагов прерываний
1
Флаг прерывания установлен.
Сбрасывается аппаратно по окончании
обслуживания прерывания
Для задания приоритетов прерываний используются регистры IPRi, где i индекс от 0
до 33. В таблице В.2 представлен формат регистра IPRi.
374
Таблица В.2 - Регистр приоритетов
IPRi
Сброс: 0000000h
Поле
Бит
Описание
PRIn+3
31-24
Поле задания приоритета (n+3)-ого вектора прерывания
PRIn+2
23-16
Поле задания приоритета (n+2)-ого вектора прерывания
PRIn+1
15-8
Поле задания приоритета (n+1)-ого вектора прерывания
PRIn
7-0
Поле задания приоритета n-ого вектора прерывания
n = 4 × i.
Примечание - Допустимые значения для записи в поля от 00h до 07h. Таким
образом, каждому вектору может быть назначен один из 8 уровней приоритета. Значения
8h - FFh не используются.
375
Лист регистрации изменений
Всего
Номера листов (страниц)
листов
Номер
Изм.
анну-
(страниц)
Подпись
Дата
изме-
документа
замененных
новых
лиро-
в
ненных
ванных
документе
376

 

 

 

 

 

 

 

содержание      ..     4      5      6      7     ..