ble_app_uart не может быть загружен полностью на nRF 51822 - PullRequest
0 голосов
/ 31 августа 2018

У меня проблема с перепрошивкой основной программы и SoftDevice на модуле nrf 51822. У меня Keil версии 5.24, и я использую SDK v12.3.

Я могу легко прошить SoftDevice, но после этого не могу прошить основную программу на устройстве. в Кейле он просто показывает ошибку сбой стирания, неудачная загрузка флеш - "cortex-m0". Но если я пытаюсь выполнить этот процесс в студии nRFgo, после этого я прошил SoftDevice, когда я пытаюсь прошить основную программу, она выдает ошибку: Этот шестнадцатеричный файл содержит данные в области SoftDevice. Попробуйте запрограммировать, используя «Программирование SoftDevice», или сотрите все перед программированием.

Может ли это быть причиной из-за конфигурации области памяти ПЗУ и адресов? Если так, как я могу это исправить?

Спасибо за ваше внимание.

1 Ответ

0 голосов
/ 29 сентября 2018

Через некоторое время я наконец-то узнал, где была заложена проблема. Я попытался изменить распределение памяти в ПЗУ для SoftDevice и основной программы, и оно наконец работает.

В основном выделение SoftDevice должно быть ниже основной программы в памяти. Например, если у нас есть форма памяти от 0x00 до 0xff, SoftDevice может быть выделен от 0x00 до 0x2f, а оставшаяся область от 0x2f до конца должна быть зарезервирована для основной программы.

В зависимости от того, какой SoftDevice (SD) вы используете, например. S110, S130 и т. Д., Размер SD может варьироваться. Таким образом, выделение памяти для SD начинается с 0x00, но конечная точка зависит от того, какую SD вы используете, поэтому я изменил адрес выделения памяти в Киле, и могу получить информацию о совместимости SD с Возможности устройств nRF и SD на сайте:

https://infocenter.nordicsemi.com

Вот еще одна полезная ссылка:

https://devzone.nordicsemi.com/f/nordic-q-a/38067/ble_app_uart-can-not-be-loaded-completely-on-nrf-51822

...