ZED 0 29 декабря, 2010 Опубликовано 29 декабря, 2010 · Жалоба В sdram.icf задано: define symbol __ICFEDIT_size_cstack__ = 0x1000; P.S. Забыл указать, что прошиваю и отлаживаюсь с помощью J-Link for ARM от IAR System. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DpInRock 0 29 декабря, 2010 Опубликовано 29 декабря, 2010 (изменено) · Жалоба А IRQ стек? Вообще, я отлаживаюсь последовательным интерфейсом. Rs232. Дешево и сердито. А главное - быстро и надежно. У вас память 2х4к оказывается... А программа где сама? Кто ее туда грузит? Кто инициализирует стеки? Изменено 29 декабря, 2010 пользователем DpInRock Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ZED 0 29 декабря, 2010 Опубликовано 29 декабря, 2010 (изменено) · Жалоба А IRQ стек? define symbol __ICFEDIT_size_irqstack__ = 0x60; Только ругается он на CSTACK. Изменено 29 декабря, 2010 пользователем ZED Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DpInRock 0 29 декабря, 2010 Опубликовано 29 декабря, 2010 (изменено) · Жалоба Насколько я представляю, у вас не отлажена среда работы. Т.е. вы доверяете ИАРу грузить программу и совершать необходимые манипуляции. Я лично не так доверчив. 1. Написать свой загрузчик. Который бы грузил нечто в SRAM. 2. Это нечто из SRAM может по командам с PC либо записать что-то во флэшку, либо записать нечто в SDRAM и запустить это нечто (Предварительно, разумеется, инициализировав SDRAM). Таким образом в ходу будут две программы - маленький загрузчик и основная прогграмма (которая компилируется под SDRAM). Тут вы управляете всеми процессами ЛИЧНО. Ну, а отладочная консоль естественным образом проистекает от DBGU. На все это у вас уйдет пара дней. Зато потом будет легко. Вообще-то у вас варнинг и на IRQ есть... (0x1000 на CS - это дофига. У меня стоит 0x300. И то столько не нужно. Программа километровая... С переключателем задач, USB, кучей всякой дряни...) Изменено 29 декабря, 2010 пользователем DpInRock Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ZED 0 29 декабря, 2010 Опубликовано 29 декабря, 2010 (изменено) · Жалоба Ну я вообщето взял готовый проект getting-started-project-at91sam9260-ek и просто вставил туда свой код. 1. Написать свой загрузчик. Который бы грузил нечто в SRAM. 2. Это нечто из SRAM может по командам с PC либо записать что-то во флэшку, либо записать нечто в SDRAM и запустить это нечто (Предварительно, разумеется, инициализировав SDRAM). А можно пример? Изменено 29 декабря, 2010 пользователем ZED Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SII 0 29 декабря, 2010 Опубликовано 29 декабря, 2010 · Жалоба правильно ли я понимаю: TLB располагаем в конце SDRAM Неправильно :) TLB -- это внутренний узел устройства управления памятью (MMU), а посему в памяти ну никак находиться не может. Говоря упрощённо, TLB -- это кэш-память, в которой хранятся последние использованные строки таблиц переадресации. А вот эти самые таблицы действительно хранятся в памяти, откуда MMU их по мере надобности считывает и кэширует в TLB. Местоположение таблиц в памяти роли само по себе не играет, надо лишь обеспечить их правильное выравнивание (граница 16 Кбайт для таблицы первого уровня, если склероз не подводит). Так что выделяете под них то место, какое для Вас лично удобно, и всё. Ну я вообщето взял готовый проект getting-started-project-at91sam9260-ek и просто вставил туда свой код. К готовым проектам относитесь настороженно и достаточно критически: их качество оставляет желать. Меня в своё время поразил стартовый код для 9261, я даже по этому поводу небольшим сообщением разродился. А можно пример? Вообще, эта задача, хотя и не слишком сложная, тривиальной тоже не является. Фактически всякие там SAM-BA и прочие средства программирования примерно так и работают: по JTAG загружают в оперативу некий код и запускают его на выполнение, а уже он обеспечивает запись во флэш-память, при необходимости подгружая информацию с ПК. В общем, пример не такой маленький получится, да и не уверен, что найти его просто... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DpInRock 0 29 декабря, 2010 Опубликовано 29 декабря, 2010 · Жалоба По поводу примера. Это действительно не так чтоб очень,но большая работа. Но вполне по силам любому. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ZED 0 30 декабря, 2010 Опубликовано 30 декабря, 2010 (изменено) · Жалоба По поводу примера. Это действительно не так чтоб очень,но большая работа. Но вполне по силам любому. А счего начать? Я даже не совсем представляю как все это должно выглядеть. Изменено 30 декабря, 2010 пользователем ZED Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DpInRock 0 30 декабря, 2010 Опубликовано 30 декабря, 2010 · Жалоба Перед вами плата. Перед вами PC. Шнурок RS232 между ними. Руководящий документ - абзац из даташита с описанием SAM-BA. ------ 1. Пишите PC программу, которая сможет загонять в SRAM файл и запускать его. 2. Тренируетесь. Мигаете светодиодами и пр. 3. Теперь загоняете не абы какую программу, а программу, которая умеет взаимодействовать с PC. В целях записи некоего файла во флэшку. Также с целью заполнения уже SDRAM неким файлом и запуском этого файла. 4. Тренируетесь. 5. Загоняете во флэшку программу, которая: Загрузившись в SRAM (это делает за вас сам процессор): 1. Инициализирует SDRAM 2. Переписывает туда программу 3. Запускает ея. Все. Ну, естественно, RS232 на всех этапах служит для отладки. Я вот так именно и поступал. Если умеете программировать - там нечего делать практически. Алгоритм SAM-BA - это примерно 3\4 15" экрана в Дельфи. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
JeDay 0 14 января, 2011 Опубликовано 14 января, 2011 · Жалоба 1. Пишите PC программу, которая сможет загонять в SRAM файл и запускать его. Зачем советовать человеку изобретать велосипед? :) Для этих целей есть SAB-BA. Если не будете доверять штатному инструментарию, то у вас не останется времени на сам проект... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться