Перейти к содержанию
    

STM32L476 + OpenBLT Bootloader

Из документации читаю:

Quote

The Flash memory is divided into two banks allowing read-while-write operations. This
feature allows to perform a read operation from one bank while an erase or program
operation is performed to the other bank.

В микроконтроллере всего 2 банка. В мегабайтном варианте первый заканчивается адресом 0x0807 FFFF. Значит если бутлоадер выполняется в первом банке, для программирования доступен только второй.

Я же вижу

https://www.feaser.com/openblt/doku.php?id=manual:design

что пользовательская программа располагается сразу за бутлоадером в первой свободной двухкилобайтной странице. Как тогда это работает?

 

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

41 минуту назад, Димон Безпарольный сказал:

allows to perform a read operation from one bank while an erase or program
operation is performed to the other bank

"пока идёт стирание или запись в один банк, из другого банка есть возможность читать", т.е. можно одновременно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

5 часов назад, Димон Безпарольный сказал:

пользовательская программа располагается сразу за бутлоадером в первой свободной двухкилобайтной странице. Как тогда это работает?

Читайте отсюда и далее. Там это обсуждается с разных сторон, как и почему работает загрузчик при записи/стирании флеш-памяти.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Насколько понял от сюда, 

https://electronix.ru/forum/index.php?app=forums&module=forums&controller=topic&id=159180&page=3&tab=comments#comment-1728612

«During a write operation to the Flash memory, any attempt to read the Flash memory will stall the bus. The read operation will proceed correctly once the write operation has completed. This means that code or data fetches cannot be made while a write/erase operation is ongoing. For write and erase operations on the Flash memory (write/erase), the internal RC oscillator (HSI) must be ON»

 

Это stall не является ошибкой. Просто ожиданием. Но реализации у контроллеров бывают разные. 

 

https://electronix.ru/forum/index.php?app=forums&module=forums&controller=topic&id=159180&page=4&tab=comments#comment-1728702

 

 

так что может и вывалится в HF. В stm32L476 работает.

Изменено пользователем Димон Безпарольный

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...