- •Отличительные особенности микроконтроллеров at91 на базе ядра arm® Thumb®
- •. Описание
- •2. Краткий обзор конфигурации семейства at91sam7s
- •3. Структурная схема
- •4. Назначение выводов
- •5. Назначение внешних выводов для различных корпусов
- •6. Питание
- •7. Порты ввода-вывода
- •8. Архитектура ядра процессора
- •9. Память
- •10. Системный контроллер
- •10.1 Организация памяти системного контроллера
- •10.2 Контроллер сброса
- •10.3 Тактовый генератор
- •10.4 Контроллер управления потребляемой мощностью
- •Расширенный контроллер прерываний и модуль внутрисхемной отладки
- •Таймеры, контроллер портов ввода-вывода и контроллер режимов стабилизатора напряжения питания
- •11. Периферийные модули
- •11.1 Организация памяти периферийных модулей
- •11.2 Дополнительные функции портов ввода-вывода
- •11.3 Функции портов pa0…pa31
- •11.4 Идентификаторы периферийных модулей
- •11.5 Последовательный периферийный интерфейс
- •Двухпроводной интерфейс, usart, spi
- •11.9 Таймер-счетчик (tc)
- •Шим контроллер, usb, ацп
- •12. Обзор процессора arm7tdmi
- •13. Отличительные способности средств отладки и тестирования Описание и структурная схема
- •13.3 Примеры применения
- •13.4 Описание выводов для отладки и тестирования
- •13.5 Функциональное описание
- •14. Контроллер сброса (rstc) Обзор и структурная схема
- •14.3 Функциональное описание
- •14.4 Пользовательский интерфейс контроллера сброса
- •15. Таймер реального времени (rtt)
- •15.3 Функциональное описание
- •15.4 Пользовательский интерфейс таймера реально времени
- •16. Интервальный таймер (pit)
- •16.3 Функциональное описание
- •16.4 Пользовательский интерфейс интервального таймера
- •17. Сторожевой таймер (wdt)
- •17.3 Функциональное описание
- •17.4 Пользовательский интерфейс сторожевого таймера
- •18. Контроллер режимов стабилизатора напряжения (vreg)
- •19. Контроллер памяти (mc)
- •19.3 Функциональное описание
- •19.4 Пользовательский интерфейс контроллера памяти
- •20. Контроллер встроенной флэш-памяти (efc)
- •20.3 Пользовательский интерфейс контроллера встроенной флэш-памяти
- •21. Интерфейс программирования флэш-памяти (ffpi)
- •21.3. Последовательный интерфейс программирования флэш-памяти
- •22. Стартовый загрузчик at91sam7 (бут загрузчик)
- •23. Контроллер пдп (dma) периферийных модулей
- •23.3 Функционирование контроллера dma
- •23.4 Контроллер пдп (pdc). Интерфейс работы
- •24. Расширенный Контроллер Прерываний (aic)
- •24.6 Особенности контроллеров at91 серии
- •24.7 Функциональное описание
- •24.8 Контроллер прерываний aic. Интерфейс пользователя
- •25. Тактовый генератор
- •26. Контроллер управления потребляемой мощности (pmc)
- •26.5 Контроллер тактовых сигналов периферийных модулей (Peripheral Clock Controller)
- •26.6 Контроллер программно управляемых внешних тактовых сигнала
- •6.7 Последовательность программирования
- •26.8 Переключение тактовых сигналов
- •26.9 Регистры контроллера управления потребляемой мощности
- •27. Модуль внутрисхемной отладки (dbgu)
- •27.4. Работа уапп (uart)
- •27.5 Пользовательский интерфейс модуля внутрисхемной отладки
- •28. Контроллер параллельного ввода-вывода
- •8.5 Функциональное описание
- •28.7. Пользовательский интерфейс контроллера параллельного ввода - вывода
- •9. Последовательный периферийный интерфейс (spi)
- •29.6 Функциональное описание
- •29.7 Пользовательский интерфейс последовательно - параллельного интерфейса (spi)
- •30. Двухпроводной интерфейс
- •30.5 Функциональное описание
- •30.6. Пользовательский интерфейс двухпроводного интерфейса
- •33. Таймер-счетчик (тс)
- •33.5 Функциональное описание
- •33.6 Пользовательский интерфейс таймера-счетчика (тс)
- •34. Контроллер широтно-импульсной модуляции (шим)
- •34.5 Функциональное описание
- •34.6 Пользовательский интерфейс шим-контроллера (pwm)
- •35. Порт usb-устройства (udp)
- •35.5. Функциональное описание
- •35.5.2.8 Транзакция "Статус"
- •35.6. Пользовательский интерфейс usb порта (udp)
- •36. Аналогово-цифровой преобразователь (ацп)
- •36.5 Функциональное описание
- •36.6 Пользовательский интерфейс ацп
19.4 Пользовательский интерфейс контроллера памяти
Базовый адрес: 0xFFFF FF00
Таблица 19-1. Карта распределения регистров контроллера памяти (MC)
|
Смещение |
Регистр |
Название |
Вид доступа |
Состояние после сброса |
|
0x00 |
Регистр управления перераспределением памяти |
MC_RCR |
Только для записи |
- |
|
0x04 |
Регистр статуса аварийной исключительной ситуации |
MC_ASR |
Только для чтения |
0x0000 0000 |
|
0x08 |
Регистр адреса возникновения аварийной исключительной ситуации |
MC_AASR |
Только для чтения |
0x0000 0000 |
|
0x0C…0x5C |
Зарезервировано |
- |
- |
- |
|
0x60 |
Регистр настроек встроенной флэш-памяти |
См. главу 20 "Контроллер встроенной флэш-памяти" | ||
19.4.1 Регистр управления перераспределением памяти
Название регистра: MC_RCR
Вид доступа: только для записи
Смещение: 0x00
|
31 |
30 |
29 |
28 |
27 |
26 |
25 |
24 |
|
- |
- |
- |
- |
- |
- |
- |
- |
|
23 |
22 |
21 |
20 |
19 |
18 |
17 |
16 |
|
- |
- |
- |
- |
- |
- |
- |
- |
|
15 |
14 |
13 |
12 |
11 |
10 |
9 |
8 |
|
- |
- |
- |
- |
- |
- |
- |
- |
|
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|
- |
- |
- |
- |
- |
- |
- |
RCB |
RCB: флаг команды перераспределения памяти
0 = нет эффекта.
1 = этот флаг работает по принципу переключателя: каждая его установка вызывает либо активацию команды перераспределения памяти, либо ее отмену (см. п.п. 19.3.3).
19.4.2 Регистр статуса контроллера памяти
Название регистра: MC_ASR
Вид доступа: только для чтения
После сброса: 0x0000 0000
Смещение: 0x04
|
31 |
30 |
29 |
28 |
27 |
26 |
25 |
24 |
|
- |
- |
- |
- |
- |
- |
SVMST1 |
SVMST0 |
|
23 |
22 |
21 |
20 |
19 |
18 |
17 |
16 |
|
- |
- |
- |
- |
- |
- |
MST1 |
MST0 |
|
15 |
14 |
13 |
12 |
11 |
10 |
9 |
8 |
|
- |
- |
- |
- |
ABTTYP |
ABTSZ | ||
|
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|
- |
- |
- |
- |
- |
- |
MISADD |
UNDADD |
UNDADD: флаг аварийной ситуации при попытке доступа к нереализованной области памяти
0 = последняя зафиксированная аварийная ситуация была вызвана не по причине попытки доступа к нереализованной области памяти.
1 = последняя зафиксированная аварийная ситуация была вызвана по причине попытки доступа к нереализованной области памяти в адресном пространстве.
MISADD: флаг аварийной ситуации при попытке доступа к ячейке памяти с невыровненным адресом
0 = последняя зафиксированная аварийная ситуация была вызвана не по причине попытки доступа к ячейке памяти с невыровненным адресом.
1 = последняя зафиксированная аварийная ситуация была вызвана по причине попытки доступа к ячейке памяти с адресом, невыровненным по соответствующей границе памяти.
ABTSZ: размер ячейки памяти, доступ к которой вызвал аварийную ситуацию
|
ABTSZ |
Размер ячейки памяти | |
|
0 |
0 |
Байт (8 бит) |
|
0 |
1 |
Полуслово (16 бит) |
|
1 |
0 |
Слово (32 бита) |
|
1 |
1 |
Зарезервировано |
ABTTYP: тип доступа ячейке памяти, доступ к которой вызвал аварийную ситуацию
|
ABTTYP |
Тип аварийной ситуации | |
|
0 |
0 |
Чтение данных |
|
0 |
1 |
Запись данных |
|
1 |
0 |
Выборка кода команды |
|
1 |
1 |
Зарезервировано |
MST0: источником аварийной ситуации является контроллер ПДП
0 = последняя зафиксированная аварийная ситуация была вызвана не из-за работы контроллера ПДП.
1 = последняя зафиксированная аварийная ситуация была вызвана по причине работы контроллера ПДП.
MST1: источником аварийной ситуации является процессор ARM7TDMI
0 = последняя зафиксированная аварийная ситуация была вызвана не из-за работы процессора ARM7TDMI.
1 = последняя зафиксированная аварийная ситуация была вызвана по причине работы процессора ARM7TDMI.
SVMST0: флаг факта возникновения повторной аварийной ситуации от контроллера ПДП
0 = больше не было зафиксировано ни одной аварийной ситуации с момент ее предыдущего возникновения от контроллера ПДП.
1 = была зафиксирован еще как минимум одна аварийная ситуация с момент ее предыдущего возникновения от контроллера ПДП.
SVMST1: флаг факта возникновения повторной аварийной ситуации от процессора ARM7TDMI
0 = больше не было зафиксировано ни одной аварийной ситуации с момент ее предыдущего возникновения от процессора ARM7TDM.
1 = была зафиксирован еще как минимум одна аварийная ситуация с момент ее предыдущего возникновения от процессора ARM7TDM.
19.4.3 Регистр адреса аварийной ситуации
Название регистра: MC_AASR
Вид доступа: только для чтения
После сброса: 0x0000 0000
Смещение: 0x08
|
31 |
30 |
29 |
28 |
27 |
26 |
25 |
24 |
|
ABTADD | |||||||
|
23 |
22 |
21 |
20 |
19 |
18 |
17 |
16 |
|
ABTADD | |||||||
|
15 |
14 |
13 |
12 |
11 |
10 |
9 |
8 |
|
ABTADD | |||||||
|
7 |
6 |
5 |
4 |
3 |
2 |
1 |
0 |
|
ABTADD | |||||||
ABTADD: адрес ячейки памяти, произошла аварийная ситуация
Это поле содержит адрес ячейки памяти, доступ к которой вызвал последнюю возникшую аварийную ситуацию
