Телесистемы
 Разработка, производство и продажа радиоэлектронной аппаратуры
На главную   | Карта сайта | Пишите нам | В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:jobsmp@pochta.ru

Телесистемы | Электроника | Конференция «Микроконтроллеры и их применение»

Непонятки с отладчиком от Keil d MDK 3.40. Может кто пояснит.

Отправлено ihar 17 апреля 2009, г. 12:36


Есть такой код для функции main() из демопроекта USBmem для LPC2148 от Keil:

int main (void) {
DWORD n;

for (n = 0; n < MSC_ImageSize; n++) { /* Copy Initial Disk Image */
Memory[n] = DiskImage[n]; /* from Flash to RAM */
}

IODIR1 = LED_MSK; /* LED's defined as Outputs */
IOCLR1 = LED_TEST; /* */
USB_Init(); /* USB Initialization */
USB_Connect(TRUE); /* USB Connect */

while (1); /* Loop forever */
}
Проект линкуется с десятка модулей в основном для работы с USB c
формированием загрузочного образа.Один из модулей проекта - "memory"
содержит только одну эту функцию main()

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

Но!

Если я заремлю две функции- вот так:
//USB_Init(); /* USB Initialization */
//USB_Connect(TRUE); /* USB Connect */

После линковки в загрузочном образе остаётся единственный модуль -
"memory" c единственной функцией main() , ну и стартап.

При запуске отладчика его курсор почему-то вообще пропадает из
окна исходника с функцией main(), в окне Сall Stack текущая позиция
отладчика - это функция из модуля проекта - "mscuser", который уже не присутствует в загрузочном имидже, а в окне дисассемблера - позиция курсора отладчика на Си-операторе функции из несуществующего модуля, но с ассемблерными кодами,соответствующими первой комманде функции main().
В чем тут дело?


Составить ответ | Вернуться на конференцию.

Ответы


Отправка ответа
Имя*: 
Пароль: 
E-mail: 
Тема*:

Сообщение:

Ссылка на URL: 
URL изображения: 

если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
поделите двойку на единицу:

Перейти к списку ответов | Конференция | Раздел "Электроника" | Главная страница | Карта сайта

Rambler's Top100 Рейтинг@Mail.ru
 
Web telesys.ru