В HTML      В PDF
микроэлектроника, микросхема, транзистор, диод, микроконтроллер, память, msp430, Atmel, Maxim, LCD, hd44780, t6963, sed1335, avr, mega128
Предприятия Компоненты Документация Применения Статьи Новости

 
Пересюхтюмя


13-я Международная выставка электронных компонентов и комплектующих для электронной промышленности





Выставка Передовые Технологии Автоматизации





Главная страница > Обзоры по типам > Микроконтроллеры > ARM
Пересюхтюмя


13-я Международная выставка электронных компонентов и комплектующих для электронной промышленности





Выставка Передовые Технологии Автоматизации


20.3 Пользовательский интерфейс контроллера встроенной флэш-памяти

Пользовательский интерфейс EFCS встроен в контроллер памяти, базовый адрес которого 0xFFFF FF00

Таблица 20-3. Карта распределения регистров контроллера встроенной флэш-памяти (EFCS)

Смещение Регистр Название Вид доступа Состояние после сброса
0x60 Регистр режима флэш-памяти MC_FMR Для записи и чтения 0x0000 0000
0x64 Регистр команды флэш-памяти MC_FCR Только для записи -
0x68 Регистр статуса флэш-памяти MC_FSR Только для чтения -
0x6C Зарезервировано - - -

20.3.1 Регистр режима флэш-памяти

Название регистра: MC_FMR

Вид доступа: для записи и чтения

Смещение: 0x60

31 30 29 28 27 26 25 24
- - - - - - - -
23 22 21 20 19 18 17 16
FMCN
15 14 13 12 11 10 9 8
- - - - - - FWS
7 6 5 4 3 2 1 0
NEBP - - - - PROGE LOCKE FRDY
  • FDRY: флаг разрешения прерывания по готовности флэш-памяти
0 = прерывание по готовности флэш-памяти запрещено.
1 = прерывание по готовности флэш-памяти разрешено.
  • LOCK: флаг разрешения прерывания при ошибке защиты флэш-памяти
0 = прерывание при попытке программирования защищенной области флэш-памяти (Lock Error) запрещено.
1 = прерывание при попытке программирования защищенной области флэш-памяти разрешено.
  • PROGE: флаг разрешения прерывания при ошибке программирования флэш-памяти
0 = прерывание при ошибке программирования флэш-памяти (Programming Error) запрещено.
1 = прерывание при ошибке программирования флэш-памяти разрешено.
  • NEBP: флаг запрета стирания флэш-памяти перед ее программированием
0 = перед программированием флэш-памяти осуществляется стирание соответствующей страницы.
1 = перед программированием флэш-памяти не производится ее предварительное стирание.
  • FWS: число тактов ожидания при обращении к флэш-памяти

Это поле определяет количество тактов ожидания при выполнении команд чтении или записи флэш-памяти:

FWS Команды чтения Команды записи
0 1 такт ожидания 2 такта ожидания
1 2 такта ожидания 3 такта ожидания
2 3 такта ожидания 4 такта ожидания
3 4 такта ожидания 4 такта ожидания
  • FCMD: число тактов MCK для формирования микросекундных интервалов

Перед обращением к NVM-битам (биты защиты, NVM-биты общего назначения и бит секретности) в этом поле необходимо установить число тактов MCK таким образом, чтобы в итоге получился микросекундный интервал: FCMD.TMCK = 1 мкс, где TMCK - длительность одного периода сигнала MCK.

Предупреждение: FCMD = 0 допустимо только в том случае, если период сигнала MCK составляет не менее 30 мкс (частота MCK не превышает 33 МГц).

Предупреждение: в поле FCMD обязательно должно быть записано корректное значение, в противном случае не гарантируется корректное выполнение команд работы с флэш-памятью.

20.3.2 Регистр команды флэш-памяти

Название регистра: MC_FCR

Вид доступа: только для записи

Смещение: 0x64

31 30 29 28 27 26 25 24
KEY
23 22 21 20 19 18 17 16
- - - - - - PAGEN
15 14 13 12 11 10 9 8
PAGEN
7 6 5 4 3 2 1 0
- - - - FCMD
  • FCMD: код команды флэш-памяти

Это поле определяет код команды для работы с флэш-памятью.

FCMD Команда
0000 Нет команды.
Не оказывает влияния на флаг ошибки программирования PROGE в регистре статуса MC_FSR.
0001 Команда программирования страницы (WP):
Запускает процесс программирования одной страницы, номер которой указан в поле PAGEN.
0010 Команда установки бита защиты (SLB):
Запускает процесс установки защиты той области флэш-памяти, номер которой указан в поле PAGEN.
0011 Команда программирования страницы и установки соответствующего ей бита защиты (WPL):
Запускает процесс программирования одной страницы, номер которой указан в поле PAGEN. После завершения программирования автоматически устанавливается бит защиты, соответствующий этой странице.
0100 Команда очистки бита защиты (CLB):
Запускает процесс снятия защиты той области флэш-памяти, номер которой указан в поле PAGEN.
1000 Команда стирания всей флэш-памяти (EA):
Запускает процесс стирания всей реализованной на кристалле области флэш-памяти. Если защищена хотя бы одна страница с помощью бита защиты, то эта команда выполнена не будет.
1011 Команда установки NVM-бита общего назначения (SGPB):
Запускает процесс установки NVM-бита общего назначения, номер которого указан в поле PAGEN.
1101 Команда очистки NVM-бита общего назначения (CGPB):
Запускает процесс очистки NVM-бита общего назначения, номер которого указан в поле PAGEN.
1111 Команда установки бита секретности (SSB):
Установка бита секретности. Очистка бита секретности возможна только по внешнему выводу ERASE.
Остальные значения Зарезервировано.
Вызывает установку флага ошибки программирования PROGE в регистре статуса MC_FSR.
  • FCMD: код команды флэш-памяти
Команда Назначение поля PAGEN
Команда программирования страницы Содержимое поля PAGEN определяет номер страницы, которая должна быть запрограммирована.
Команда программирования страницы и установки ее защиты Содержимое поля PAGEN определяет номер страницы, которая должна быть запрограммирована и защищена.
Команда стирания всей флэш-памяти Содержимое поля PAGEN не имеет значения
Команда установки/очистки бита защиты Содержимое поля PAGEN определяет номер страницы, для которой должна быть установлена или снята защита.
Команда установка/очистки NVM-бита общего назначения Содержимое поля PAGEN определяет номер NVM-бита общего назначения
Команда установки бита секретности Содержимое поля PAGEN не имеет значения

Примечание: в зависимости от кода команды, неиспользуемые (незадействованные) биты поля PAGEN не имеют значения.

  • KEY: ключевое число

В это поле должно быть записано значение 0xA5, при этом игнорируется попытка записи в это поле любых других значений.

20.3.3 Регистр статуса флэш-памяти

Название регистра: MC_FSR

Вид доступа: только для чтения

Смещение: 0x68

31 30 29 28 27 26 25 24
LOCKS LOCKS14 LOCKS13 LOCKS12 LOCKS11 LOCKS10 LOCKS9 LOCKS8
23 22 21 20 19 18 17 16
LOCKS7 LOCKS6 LOCKS5 LOCKS4 LOCKS3 LOCKS2 LOCKS1 LOCKS0
15 14 13 12 11 10 9 8
- - - - - - GPNVN1 GPNVN0
7 6 5 4 3 2 1 0
- - - SECURITY PROGE LOCKE - FRDY
  • FDRY: флаг готовности флэш-памяти
0 = контроллер флэш-памяти (EFCS) занят - приостановлено выполнение очередной команды.
1 = контроллер флэш-памяти готов к выполнению очередной команды.
  • LOCK: флаг ошибки защиты флэш-памяти
0 = еще не возникло ни одной ошибки (с момента последнего чтения регистра MC_FSR) при попытке программирования или стирания защищенной области флэш-памяти (Lock Error).
1 = уже возникла как минимум одна ошибка (с момента последнего чтения регистра MC_FSR) при попытке программирования или стирания защищенной области флэш-памяти.
  • PROGE: флаг ошибки программирования флэш-памяти
0 = еще не возникло ни одной ошибки (с момента последнего чтения регистра MC_FSR) программирования флэш-памяти (Programming Error).
1 = уже возникла как минимум одна ошибка (с момента последнего чтения регистра MC_FSR) при программировании флэш-памяти.
  • SECURITY: состояние бита секретности
0 = бит секретности не установлен.
1 = установлен бит секретности.
  • GPNVMx: состояние NVM-бита общего назначения
0 = соответствующий NVM-бит не установлен.
1 = установлен соответствующий NVM-бит.
  • LOCKx: состояние бита защиты
0 = соответствующая область флэш-памяти не защищена от программирования и стирания.
1 = соответствующая область флэш-памяти защищена от программирования и стирания.

Карта распределения битов LOCKx регистра MC_FSR для микроконтроллеров семейства AT91SAM7S

AT91SAM7S256 AT91SAM7S128 AT91SAM7S64 AT91SAM7S321 AT91SAM7S32 Назначение
16 8 16 8 8 Число бит защиты
LOCK0 LOCK0 LOCK0 LOCK0 LOCK0 Защита области 0
LOCK1 LOCK1 LOCK1 LOCK1 LOCK1 Защита области 1
LOCK2 LOCK2 LOCK2 LOCK2 LOCK2 Защита области 2
LOCK3 LOCK3 LOCK3 LOCK3 LOCK3 Защита области 3
LOCK4 LOCK4 LOCK4 LOCK4 LOCK4 Защита области 4
LOCK5 LOCK5 LOCK5 LOCK5 LOCK5 Защита области 5
LOCK6 LOCK6 LOCK6 LOCK6 LOCK6 Защита области 6
LOCK7 LOCK7 LOCK7 LOCK7 LOCK7 Защита области 7
LOCK8 - LOCK8 - - Защита области 8
LOCK9 - LOCK9 - - Защита области 9
LOCK10 - LOCK10 - - Защита области 10
LOCK11 - LOCK11 - - Защита области 11
LOCK12 - LOCK12 - - Защита области 12
LOCK13 - LOCK13 - - Защита области 13
LOCK14 - LOCK14 - - Защита области 14
LOCK15 - LOCK15 - - Защита области 15


<--Предыдущая страница Оглавление Следующая страница -->