Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: on-chip RAM LPC
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > ARM
SergoN
Здравствуйте!

Проблема состоит вот в чём. Нужно сделать учебный стенд для студентов (сам студент-дипломник). И чтобы не испортить flash многократными записями в неё, я хочу, чтобы моя программа написаная в Keil для LPC2292 ПОЛНОСТЬЮ записывалась в RAM. Прописал везде, где только можно(с моей точки зрения), что программа, переменные, константы и прерывания находятся в RAM'е. Но при отладке программы всё равно что-то записывается в самые мледшие адреса(0х00000000-0х00000020). Что это такое и как избавиться?Почитал эту ветку, почитал на сайте Keil'а, но ответа на свой вопрос не нашёл.

И ещё один вопрос: очищаю флеш через JTAG, всё проходит отлично, только с адреса 0х3FFF8400 остаётся что-то, что это "что-то"?

И ли я совсем ничего не понимаю в LPC?
Alexey Bishletov
Цитата(SergoN @ Nov 29 2006, 19:22) *
Проблема состоит вот в чём. Нужно сделать учебный стенд для студентов (сам студент-дипломник). И чтобы не испортить flash многократными записями в неё, я хочу, чтобы моя программа написаная в Keil для LPC2292 ПОЛНОСТЬЮ записывалась в RAM. Прописал везде, где только можно(с моей точки зрения), что программа, переменные, константы и прерывания находятся в RAM'е. Но при отладке программы всё равно что-то записывается в самые мледшие адреса(0х00000000-0х00000020). Что это такое и как избавиться?

startup.s (или что там у Keil-а) то же исправили? Обычно там что-то типа ORG 0 ... Программу записывать-запускать предполагается через JTAG?
zltigo
Цитата(SergoN @ Nov 29 2006, 18:22) *
всё равно что-то записывается в самые мледшие адреса(0х00000000-0х00000020).

А как Вам удалось еще не узнать, ЧТО находится у ARMов на младших адресах smile.gif
Укажите расположение векторов прерываний тоже в RAM.

Цитата
И ещё один вопрос: очищаю флеш через JTAG, всё проходит отлично, только с адреса 0х3FFF8400 остаётся что-то, что это "что-то"?
И ли я совсем ничего не понимаю в LPC?

А чему удивляться, если не прочитали даже первых страничек ни описания архитектуры ARM, ни первых страничек описания LPC, где описано распределение памяти в LPC и размер флеша, который сильно меньше гигабайта.
SergoN
Цитата(zltigo @ Nov 29 2006, 19:50) *
А как Вам удалось еще не узнать, ЧТО находится у ARMов на младших адресах smile.gif
Укажите расположение векторов прерываний тоже в RAM.

А чему удивляться, если не прочитали даже первых страничек ни описания архитектуры ARM, ни первых страничек описания LPC, где описано распределение памяти в LPC и размер флеша, который сильно меньше гигабайта.


Так дело в том, что вектора прерываний тоже находятся в RAM'е. А в младшие адреса всё-равно что-то пишется.

Про размер флеша и описание я уже прочитал и понял, что написал глупость.

Я, чесно говоря, недавно начал разбираться с LPC. Я буду очень рад, если кто-нибудь опишет мне как правильно всё записывать в ОЗУ.



Цитата(Alexey Bishletov @ Nov 29 2006, 19:37) *
startup.s (или что там у Keil-а) то же исправили? Обычно там что-то типа ORG 0 ... Программу записывать-запускать предполагается через JTAG?


Да, через JTAG.
zltigo
Цитата(SergoN @ Nov 29 2006, 19:22) *
Так дело в том, что вектора прерываний тоже находятся в RAM'е. А в младшие адреса всё-равно что-то пишется.

Если уверены в своих словах, то это не "пишется" а "ремапируется". Штатный загрузчик прыгает туда,
при отсутствии пользовательских программ.
SergoN
спасибо за информацию. значит получается, что во flash ничего не пишется?
zltigo
Цитата(SergoN @ Nov 29 2006, 22:16) *
значит получается, что во flash ничего не пишется?

Мне отсюда не видно smile.gif, как вариант - да.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.