Пользовательская флеш-память

32-разрядные микроконтроллеры разработки ОАО "НИИЭТ"

Модераторы: pip, _sva_

Ответить
Аватара пользователя
MR.Smith
Сообщения: 76
Зарегистрирован: 25 апр 2016, 10:56

Пользовательская флеш-память

Сообщение MR.Smith » 29 авг 2017, 18:37

Здравствуйте!

Не подучатся стереть пользовательскую флеш-память ни полностью, ни постранично.
После выполнения операции содержимое памяти остается неизменным (не заполняется 0xFF).

Полностью стираю так:

Код: Выделить всё

NT_USERFLASH->FCIC = 0x3;
NT_USERFLASH->FCIM = 0xA4420000 | 0x00000004;
Постранично так:

Код: Выделить всё

NT_USERFLASH->FCIC = 0x3;
NT_USERFLASH->FMA = (3 << 8);   // Стираем страницу 3
NT_USERFLASH->FCIM = 0xA4420000 | 0x00000002;
Запись и чтение происходят корректно. Хотя запись в НЕ очищенную страницу нельзя назвать корректной. ТО требует предварительно ее очищать (примечание на стр.40).

Что я делаю не так?

hgost
Сообщения: 49
Зарегистрирован: 14 дек 2015, 12:07
Предприятие: АО НИИЭТ
Откуда: НИИЭТ
Contact:

Re: Пользовательская флеш-память

Сообщение hgost » 30 авг 2017, 09:02

Добрый день.

Код: Выделить всё

 NT_USERFLASH->FMC= 0xA4420000 | 0x00000004;
FCIM, который Вы пишете - решистр маски прерываний, разрешает генерирование прерывания по завершении
операции чтения/записи/стирания

Аватара пользователя
MR.Smith
Сообщения: 76
Зарегистрирован: 25 апр 2016, 10:56

Re: Пользовательская флеш-память

Сообщение MR.Smith » 30 авг 2017, 09:08

hgost, большое спасибо!

Ответить

Вернуться в «32-разрядные микроконтроллеры на ядре ARM Cortex»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 2 гостя