реклама на сайте
подробности

 
 
> STM32F4: странный эффект после Erase Sector Flash
k000858
сообщение Jun 19 2014, 06:06
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 319
Регистрация: 31-01-12
Пользователь №: 69 978



Стираю определенный сектор, проверяю сектор - везде 0xFFFFFFFF (то есть чисто), перезапускаю контроллер (по питанию или дебаггером), проверяю сектор на чистоту - везде 0
Эффект проявляется в 1 из 5-30 случаев интерации цикла: включение, чтение, стирание, чтение, сброс.

Кто нибудь сталкивался с подобным?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
scifi
сообщение Jun 19 2014, 06:53
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136



Осмелюсь предположить, что ваша программа сама записывает туда 0, вы просто этого не замечаете.
Go to the top of the page
 
+Quote Post
k000858
сообщение Jun 19 2014, 07:12
Сообщение #3


Местный
***

Группа: Участник
Сообщений: 319
Регистрация: 31-01-12
Пользователь №: 69 978



Цитата(scifi @ Jun 19 2014, 10:53) *
Осмелюсь предположить, что ваша программа сама записывает туда 0, вы просто этого не замечаете.

нет, ну всякое конечно возможно..
именно поэтому после стирания сектора проверяю сектор на чистоту. везде 0xFF
передергиваю питание - 0 0 0 0
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Jun 19 2014, 08:37
Сообщение #4


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(k000858 @ Jun 19 2014, 10:12) *
нет, ну всякое конечно возможно..
Дайте внешний сброс не снимая питания. Если ситуация повторится - сотрите, зажмите сброс, подключитесь отладчиком, поставьте точку останова в начале программы (в Reset_handler()), отпустите сброс и дальше по шагам.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
k000858
сообщение Jun 19 2014, 08:49
Сообщение #5


Местный
***

Группа: Участник
Сообщений: 319
Регистрация: 31-01-12
Пользователь №: 69 978



Цитата(Сергей Борщ @ Jun 19 2014, 12:37) *
Дайте внешний сброс не снимая питания. Если ситуация повторится - сотрите, зажмите сброс, подключитесь отладчиком, поставьте точку останова в начале программы (в Reset_handler()), отпустите сброс и дальше по шагам.

Эффект проявляется как при сбросе по питанию, так и по внешнему сбросу.
Все бы ничего, но далеко не каждый раз срабатывает. Иногда приходится раз 30 ребутнуть до проявления эффекта. соответственно отладчиком шагать придется долго (
Go to the top of the page
 
+Quote Post
scifi
сообщение Jun 19 2014, 08:59
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 3 020
Регистрация: 7-02-07
Пользователь №: 25 136



Цитата(k000858 @ Jun 19 2014, 12:49) *
отладчиком шагать придется долго

Наверное, можно поставить Watchpoint на регистр FLASH_CR.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- k000858   STM32F4: странный эффект после Erase Sector Flash   Jun 19 2014, 06:06
|- - scifi   Цитата(Сергей Борщ @ Jun 19 2014, 12:37) ...   Jun 19 2014, 08:42
- - k000858   Итак. нашлась причина эффекта. как устранить пока ...   Jun 19 2014, 11:06
|- - Сергей Борщ   Может отладчик при запуске переписывает? Скажем, з...   Jun 19 2014, 11:13
|- - k000858   Цитата(Сергей Борщ @ Jun 19 2014, 15:13) ...   Jun 19 2014, 11:18
||- - Сергей Борщ   Цитата(k000858 @ Jun 19 2014, 14:18) обла...   Jun 20 2014, 07:16
||- - k000858   Цитата(Сергей Борщ @ Jun 20 2014, 11:16) ...   Jun 20 2014, 09:55
||- - Сергей Борщ   Цитата(k000858 @ Jun 20 2014, 12:55) дост...   Jun 20 2014, 10:18
|- - scifi   Цитата(Сергей Борщ @ Jun 19 2014, 15:13) ...   Jun 19 2014, 11:36
- - k000858   Вчера чуть голова не вспухла от таких выкрутасов. ...   Jun 20 2014, 04:20


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 25th July 2025 - 21:05
Рейтинг@Mail.ru


Страница сгенерированна за 0.0144 секунд с 7
ELECTRONIX ©2004-2016