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

 
 
 
Reply to this topicStart new topic
> at91sam, flash
Daria
сообщение Feb 28 2011, 19:12
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 229
Регистрация: 24-02-08
Пользователь №: 35 345



Здравствуйте. Извините, что пишу старую проблему в новую тему, но в старую никто не заходит(( А очень нужна помощь!!!
В файле линкера размещаю секции.
Одна секция нужна мне для того, чтобы хранить в ней данные, она не должна стираться загрузчиком. Создается сегмент памяти, в нем размещается секция, а в программе идет запись значений в адреса, лежащие в этой секции.
файл линкера прилагается.
Еще три секции нужны для размещения в них константных массивов. так же создаю секции, в тексте программы - #pragma(location...) и помещаю константные массивы.
Но происходит вот что - выделенные секции блокируются, и при следующей прошивке, IAR не может их переписать. В истории видно, что последнее действие - попытка разблокировать адрес из этих секций.
В случае с первой секцией все правильно, она должна быть залочена. Но остальные-то получается, переписываются при каждой прошивке(чтобы записать туда константы). Не сумев разблокировать, так и виснет.
Что делать? Как разместить секции так, чтобы просто потом в программе указывать адреса размещений, но не блокировать область?
заранее благодарна за возможный ответsm.gif

Хотя я думала, что секции переписываться и не должны, программа-то туда не должна записываться. Там размещаются только константы...
На всякий случай вот файлы из board

Сообщение отредактировал Daria - Feb 28 2011, 19:43
Прикрепленные файлы
Прикрепленный файл  flash.txt ( 3 килобайт ) Кол-во скачиваний: 75
Прикрепленный файл  board_memories._.txt ( 3.92 килобайт ) Кол-во скачиваний: 24
Прикрепленный файл  cstartup.txt ( 6.08 килобайт ) Кол-во скачиваний: 109
Прикрепленный файл  LowLevel.txt ( 7.52 килобайт ) Кол-во скачиваний: 298
 
Go to the top of the page
 
+Quote Post
DpInRock
сообщение Mar 1 2011, 10:24
Сообщение #2


Гуру
******

Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515



Цитата
она не должна стираться загрузчиком

Так пусть не затирает... Или он врагами зашит?

Лично я бы не стал связываться с такой сложной организацией.
Выделяете страницу подходящую флэша и в ней храните данные (некоторое количество минимально стираемых областей).
Обращаетесь к этой области по типизированному указателю. (Можно по куче разных указателей - на вкус).
От компилятора вообще эту область скрываете. Типа нету ея совсем. Вот он и не будет туда лезть.

Что такое "залочено" я не очень понимаю. В смысле, понимать - понимаю, но как этот процесс может происходить вне вашего, ясно сформулированного желания - не понимаю.



--------------------
On the road again (Canned Heat)
Go to the top of the page
 
+Quote Post
Daria
сообщение Mar 1 2011, 18:37
Сообщение #3


Местный
***

Группа: Участник
Сообщений: 229
Регистрация: 24-02-08
Пользователь №: 35 345



Цитата(DpInRock @ Mar 1 2011, 13:24) *
Так пусть не затирает... Или он врагами зашит?

Лично я бы не стал связываться с такой сложной организацией.
Выделяете страницу подходящую флэша и в ней храните данные (некоторое количество минимально стираемых областей).

Выяснилось, что области тут вообще ни при чем wink.gif . Выкинула их из программы, и оказалось, что не грузится код, размером больше 64 кб. То есть, если сократить прогу до 63, допустим, все прошьется лучшим образом, а чуть добавляешь - и зависает. Прошивает 64 и зависает на следующем сегменте.
Что могло произойти? Раньше все грузилось, никаких проблем не возникало

Сообщение отредактировал Daria - Mar 1 2011, 18:39
Go to the top of the page
 
+Quote Post
DpInRock
сообщение Mar 1 2011, 18:45
Сообщение #4


Гуру
******

Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515



Теть Даш, вы бы обозначили как-то конкретный тип процессора, тулинг для прошивки какой.

Ибо прошиваете вы, а не призрак. Не бывает такого, прошиваю, а ОНО не прошивается. ОНО - это злые клоуны у Стивена Кинга.
А у вас на 100% детерминированная железка.


--------------------
On the road again (Canned Heat)
Go to the top of the page
 
+Quote Post
Daria
сообщение Mar 1 2011, 19:03
Сообщение #5


Местный
***

Группа: Участник
Сообщений: 229
Регистрация: 24-02-08
Пользователь №: 35 345



Цитата(DpInRock @ Mar 1 2011, 21:45) *
Теть Даш, вы бы обозначили как-то конкретный тип процессора, тулинг для прошивки какой.

Ибо прошиваете вы, а не призрак. Не бывает такого, прошиваю, а ОНО не прошивается. ОНО - это злые клоуны у Стивена Кинга.
А у вас на 100% детерминированная железка.

biggrin.gif Злые клоуны, точно! biggrin.gif at91sam7x512 IAR 5.41
Я уже задавала такой вопрос в другой теме, там все описала, и как-то не подумала, что тема-то новая, значит, и описать надо заново! laughing.gif Заработалась, наверное.
Go to the top of the page
 
+Quote Post
Daria
сообщение Mar 1 2011, 20:07
Сообщение #6


Местный
***

Группа: Участник
Сообщений: 229
Регистрация: 24-02-08
Пользователь №: 35 345



Нашла на форуме, уже когда-то поднимали такую тему!
http://electronix.ru/forum/index.php?showt...82&hl=ewarm
Ответ непонятный sad.gif И единственныйsad.gif Что такое RDI?
Но радует, что у кого-то такое уже случалось, значит, дело не в моей программе!
Go to the top of the page
 
+Quote Post
DpInRock
сообщение Mar 2 2011, 06:01
Сообщение #7


Гуру
******

Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515



Господь дал вам самбу, а вы пользуетесь какой-то ерундой. Никогда не пойму такого.


--------------------
On the road again (Canned Heat)
Go to the top of the page
 
+Quote Post
Daria
сообщение Mar 2 2011, 16:54
Сообщение #8


Местный
***

Группа: Участник
Сообщений: 229
Регистрация: 24-02-08
Пользователь №: 35 345



Цитата(DpInRock @ Mar 2 2011, 09:01) *
Господь дал вам самбу, а вы пользуетесь какой-то ерундой. Никогда не пойму такого.

Самба не позволит отлаживать программу.
Все дело в том, что объем проги не позволяет отлаживаться в debuge, она превышает размер ОЗУ, поэтому в последние несколько месяцев мне приходилось отлаживаться прямо в Release. А для этого надо загрузить прогу во flash. А она перестала грузиться.
Go to the top of the page
 
+Quote Post
DpInRock
сообщение Mar 2 2011, 17:59
Сообщение #9


Гуру
******

Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515



Debug, Release - даже не смешно.
Отладчик должен быть встроенным по жизни.
И зачем отлаживать в ОЗУ. Вот самба как раз позволит спокойно записать во флэш и с нее стартовать. (Без всяких перевертываний битиков NV). Т.е. стартует самба всегда, но вы с консоли переходите на программу во флэш... К примеру.

Ибо то, что работает в ОЗУ - это совсем не то, что будет работать во флэш. Сильно не то. Т.е. отлаживать или проверять все заново надо будет.


А заливка флэша ничуть не дольше заливки ОЗУ. Ну мож чуть дольше, разница непринципиальна.
Всю жизнь отлаживаюсь из флэша. 30 000 перезаписей не достигал ни разу.

А самбу надо свою, сопряженную с отладчиком. Вот стоит раз чуток написать себе свою самбу - и всю жизнь потом не знать проблем. (Там кода, если на дельфях - на два экрана всего)....




--------------------
On the road again (Canned Heat)
Go to the top of the page
 
+Quote Post

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

 


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


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