leen 0 4 мая, 2007 Опубликовано 4 мая, 2007 · Жалоба Для пользующихся RVCC c Keilом Засунуть функции в ОЗУ можно с малейшими усилиями. Пишу, т.к. не я первый пролетел на незнании этой фичи. Вариант 1: - в свойствах проекта на вкладке target указываем начало и длину участка памяти для размещения функций в ОЗУ. Для SAM7S256 это 0x208000 0x2000 (так у меня), указывается в RAM1. - в свойствах файла, функции которого должны быть в ОЗУ указываем для размещения кода регион RAM1. Вариант 2: использование scatter-файла такого вида: FLASH_LOAD 0x100000 { EXE +0 0x40000 { *.o (RESET, +FIRST) * (+RO) } DATA 0x200000 0x8000 { * (+RW +ZI) } ISR_EXE 0x208000 0x2000 { interrupt.o (+RO) } } Здесь: 0x100000 - начало флеша контроллера, +0 0x40000 - писать код и константы с начала флеша до 0x140000, 0x200000 - начало памяти данных, 0x8000 - длина памяти данных, 0x208000 0x2000 - начиная с адреса 0x208000 поместить функции из модуля interrupt. Длина до 0x2000. Если надо засунуть еще что-то - добавляем в последнюю секцию строки вида file1.o (+RO) file2.o (+RO) ... filen.o (+RO) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Штефан Виталий 0 3 апреля, 2008 Опубликовано 3 апреля, 2008 (изменено) · Жалоба Здраствуйте. Я вчера стал счастливым обладателем платы с LPC2124, стал разбираться как чего. И вообщем у меня тут путаница в голове, какую среду разработки использовать. Сам я имею опыт работы с кейлом и яром под 51 и авр. А что посоветуети по арм? Естьли платные компиляторы с лекарством от жадности? А что за компилятор еклипс и гну? Нашел на сахаре посты по лекарсв на IAR purgen2.rar но скачать не смог ссылки не работаю, намыльте пожалуста у кого это есть shtefan_v гав mail.ru Изменено 3 апреля, 2008 пользователем Штефан Виталий Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Tatsy 0 30 июня, 2008 Опубликовано 30 июня, 2008 · Жалоба Для пользующихся RVCC c Keilом Засунуть функции в ОЗУ можно с малейшими усилиями. Пишу, т.к. не я первый пролетел на незнании этой фичи. Вариант 1: - в свойствах проекта на вкладке target указываем начало и длину участка памяти для размещения функций в ОЗУ. Для SAM7S256 это 0x208000 0x2000 (так у меня), указывается в RAM1. - в свойствах файла, функции которого должны быть в ОЗУ указываем для размещения кода регион RAM1. Вариант 2: использование scatter-файла такого вида: FLASH_LOAD 0x100000 { EXE +0 0x40000 { *.o (RESET, +FIRST) * (+RO) } DATA 0x200000 0x8000 { * (+RW +ZI) } ISR_EXE 0x208000 0x2000 { interrupt.o (+RO) } } Здесь: 0x100000 - начало флеша контроллера, +0 0x40000 - писать код и константы с начала флеша до 0x140000, 0x200000 - начало памяти данных, 0x8000 - длина памяти данных, 0x208000 0x2000 - начиная с адреса 0x208000 поместить функции из модуля interrupt. Длина до 0x2000. Если надо засунуть еще что-то - добавляем в последнюю секцию строки вида file1.o (+RO) file2.o (+RO) ... filen.o (+RO) А скажите, пожалуйста, как можно указать место в памяти, куда нужно поместить код используемых в программе стандартных ANSI C функций? Например, в своей программе я использую стандартную функцию sprintf(). Как её расположить в памяти по нужному мне адресу? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 30 июня, 2008 Опубликовано 30 июня, 2008 · Жалоба Не совсем то , но ход мысли правильный. Находите библиотеку и прописываете ее в нужной секции. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Tatsy 0 30 июня, 2008 Опубликовано 30 июня, 2008 · Жалоба Не совсем то , но ход мысли правильный. Находите библиотеку и прописываете ее в нужной секции. Большое спасибо. А "вытащить" из этой библиотеки только то, что нужно для работы функции sprintf(), очень сложно? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 30 июня, 2008 Опубликовано 30 июня, 2008 · Жалоба Проще (и правильнее в данном случае) свой sprintf написать, чем кромсать библиотеки. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
leen 0 30 июня, 2008 Опубликовано 30 июня, 2008 · Жалоба А скажите, пожалуйста, как можно указать место в памяти, куда нужно поместить код используемых в программе стандартных ANSI C функций? Например, в своей программе я использую стандартную функцию sprintf(). Как её расположить в памяти по нужному мне адресу?Да так же, в принципе, только для начала соберите проект со всеми используемыми стандартными библ. функциями с опцией linker-listing. В map-файле надо посмотреть, какая функция на какую ссылается (т.е. вызывает) и в каком/их обектнике/ах это все лежит. А потом - так же, как в примере. Чтоб не получилось, что sprintf из sprintf.o лежит в РАМе и пашет на 50 МГц, а _sputc из _sputc.о - во флеше на 15 эффективных :). Может, есть путь прямее, не являясь знатоком стандартов С, утверждать не берусь. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Tatsy 0 30 июня, 2008 Опубликовано 30 июня, 2008 · Жалоба Да так же, в принципе, только для начала соберите проект со всеми используемыми стандартными библ. функциями с опцией linker-listing. В map-файле надо посмотреть, какая функция на какую ссылается (т.е. вызывает) и в каком/их обектнике/ах это все лежит. А потом - так же, как в примере. Чтоб не получилось, что sprintf из sprintf.o лежит в РАМе и пашет на 50 МГц, а _sputc из _sputc.о - во флеше на 15 эффективных :). Может, есть путь прямее, не являясь знатоком стандартов С, утверждать не берусь. Может это и "кривой" путь, но, похоже, это то, что от меня требуют. Спасибо :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Desenix 0 4 июля, 2008 Опубликовано 4 июля, 2008 · Жалоба Хотелось бы тут увидеть какой нить обзор по внутрисхемным отладчикам для ARM7/ARM9. Задумался о выборе. Интересует: Число точек останова поддержанных самим отладчиком Возможности отладчика Глючность дров/железа Гибкость настроек Цена и возможность купить. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Dron_Gus 2 9 июля, 2008 Опубликовано 9 июля, 2008 · Жалоба Число точек останова зависит от ядра. J-Link (MT-Link, Jet-Link) умеют добавлять точки перепрошивая флешь "на лету". Цены можете найти сами. Что имеется ввиду под "гибкостью" не понял. Равно как и под "возможностями". Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Desenix 0 9 июля, 2008 Опубликовано 9 июля, 2008 · Жалоба если сравнить J-TRACE-ARM-2M и J-LINK то станет понятно чем они по возможностям отличаются, вот только J-TRACE-ARM-2M стоит не гуманных денег :) А точки останова умеет добавлять не отладчик, а скорее драйвер, бо он прошивку правит перед заливкой. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Aleksandr_des 0 23 июля, 2008 Опубликовано 23 июля, 2008 · Жалоба Доброго времени суток. Извините если вопрос ламерский, первый раз работаю с арм. Ситуация такая. Есть АТ91RM9200. Пустой, т.е только запаяный чип. Как мне Залить линукс в проц? Т.е нужно сначало зашить бутлоадер, затем уже прошивку с линухом? Опишите пожалуйста кому не лель поэтапно. Другого места запостить не нашел но думаю это частый вопрос новичков. На плате rs232, DM9161E, два USB порта (хост и девайс) Заранее спасибо. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
v_shamaev 0 23 июля, 2008 Опубликовано 23 июля, 2008 · Жалоба Доброго времени суток. Извините если вопрос ламерский, первый раз работаю с арм. Ситуация такая. Есть АТ91RM9200. Пустой, т.е только запаяный чип. Как мне Залить линукс в проц? Т.е нужно сначало зашить бутлоадер, затем уже прошивку с линухом? Опишите пожалуйста кому не лель поэтапно. Другого места запостить не нашел но думаю это частый вопрос новичков. На плате rs232, DM9161E, два USB порта (хост и девайс) Заранее спасибо. Почитать этот форум - подфорум "Отладочная плата AT91RM9200" - там найдете ответ на ваш вопрос, и все что возникнут в процессе. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
one_man_show 0 24 июля, 2008 Опубликовано 24 июля, 2008 · Жалоба Здесь полезно почитать и по ссылка оттуда пройтись Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sybirman 0 29 сентября, 2008 Опубликовано 29 сентября, 2008 · Жалоба арм ассемблер embedded12b.pdf Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться