Форум программистов, компьютерный форум, киберфорум
Микроконтроллеры ARM, Cortex, STM32
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.85/27: Рейтинг темы: голосов - 27, средняя оценка - 4.85
bzzz

отладка больших програм

01.03.2011, 21:47. Показов 5316. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
день добрый,

на lpc2478 (от storterkit) балуюсь с устройством, совмещающим в себе некоторые автомобильные функции + mp3 плеер. для последнего приспосабливаю usb host/sm с сайта nxp, для mp3 хочу использовать hetyx. но вот незадача - все это вместе с freertos не влазит в 64K SROM (буферы/переменные уже вынесены в usb/ethernet sram). может быть можно код засунуть в sdram (несколько мегабайт) ? но тогда не совсем понятно как туда прыгать с таблицы прерываний. и неясно как код загружать в sdram (ее же в openocd нужно сперва инициализировать) ?

понимаю, что можно положить код в 512kb флеш. но, учитывая, что я в этой области совсем зеленый, приходится много-много раз загружать новый код, а флеш мне жалко :( еще можно отлаживаться кусками, но я хотел обойтись без этого.

может быть опытные бойцы знают ходы?

спасибо
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
01.03.2011, 21:47
Ответы с готовыми решениями:

Отладка програм на Silverlight, не работают точки останова
Не работают точки останова если отладка идет в браузере. Ставил отладку в не браузера, так точки останова работают, но после одного...

Отладка больших проектов. Какие приемы использовать
Речь идет о проектах с десятками тысяч файлов и сотнями тысяч строк кода. Когда нужно что-то подправить, но не знаешь где этот код искать,...

В Visual Studio 2019 Community в проекте неактивны команды Отладка - Начать отладку и Отладка - Запуск без отладки
Здравствуйте, начинаю осваивать программирование С++ Установил Visual Studio 2019 Community Создал проект - файл sln В проекте...

1
0 / 0 / 0
Регистрация: 24.02.2010
Сообщений: 804
03.03.2011, 10:53
Не скажу про lpc и openocd, но расскажу, как я делаю у себя на at91sam7se c segger j-link и на работе с am3517 и kriimhills житагом.

Основной смысл в том, что sdram должна находится в том же адресном пространстве, что и все остальные виды памяти, т.е. доступ к ней должен осуществляться простым адресированием, а не через специальные функции чтения записи. Тогда через jtag можно записать данные в память.
Вторым условием должна быть возможность остановить процессор, не делая ресета его.
Если эти два условия выполняются, а первое обычно должно выполняться по умолчанию, то делаем следующее:
Во флеш проца запихиваем программку, которая инициализирует sdram и потом просто ждет в цикле, не перегружая процессор. Т.е. еще одно условие добавили - программа инициализации SDROM!

Включаем питание, ждем, когда программка выполнит инициализацию SDROM и подвиснет, ну или остановится в своем бесконечном цикле. Затем подключаемся к процу посредством OpenOCD, J-Link или другими железками, предварительно сказав им (с помощью скриптов), что проц нельзя ресетить, но только остановить.
И потом заливаем программку в SDROM.
После заливки программы, устанавливаем регистр PC на адрес старта программы.

Как узнать адрес старта программы:
Во первых, программа должна быть откомпилирована и собрана именно для выполнения в SDROM (см. linker ssripts etc.).
В самой программе, в stortup коде должны быть функции перемаппирования векторов прерывания (подробнее - надо смотреть примеры на процы и описалово процов).
И обычно в том же linker ssript указывается точка старта программы. Ее еще можно выдрать из map файла, который генерится при компиляции (если задан соответствующий ключ, естественно).
Ну вот собственно и вся технология. Особо ничего сложного нету ;-)

Если есть интерес, могу тут выложить исходники своего проекта на at91sam17se256 с FriiRTOS, который это все проделывает.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
03.03.2011, 10:53
Помогаю со студенческими работами здесь

Колекция програм
Насобирал немного програм по Паскалю и решил разместить здесь!!! В архиве собраны програмы по: Графика, Массивы и матрици, Математика,...

Интерфейс програм
для роботы с интрефейсом некоторые используют альфа-каналы. Может ктото обьяснить как с ними работать где достать?

исходники програм
Закиньте пожалуйста в этой теме исходники программ на асемблере или какие-то полезные ссылки где можно их найти!

Курсовая по програм. в Delphi
Помогите пожалуйста вот с такой задачей для курсовой работы: Запрограммировать электронную записную книжку с функциями: ...

програм донт работать
Программа://s #include <stdio.h> #include <locale.h> int isPrime(int a){ int ans = 1; int maybe = a; do { if (a % maybe==0...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Доступность команды формы по условию
Maks 07.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: сделать доступной кнопку (команда формы "ЗавершитьСписание") при. . .
Уведомление о неверно выбранном значении справочника
Maks 06.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "НарядПутевка", разработанного в конфигурации КА2. Задача: уведомлять пользователя, если в документе выбран неверный склад. . .
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru