Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Отладка программы в Keil
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему
MiklPolikov
Почему у меня не получается отлаживать программу в Keil 3_22 ARM ?

Проэкты из папки Examples- работают.

Когда в своём проэкте делаю Debug > Start/stop debug session , отладка вроде как начинается ,
открываются окна дисассемблера, watch, но кнопки run,stap,stap over недоступны ...

То есть никакого выполнения программы я не наблюдаю. Могу только снова нажать Start/stop debug session , и вернутся к редактированию кода . Почему так ?
Палыч
Цитата(MiklPolikov @ Jun 24 2008, 06:43) *
Почему у меня не получается отлаживать программу в Keil 3_22 ARM ?
Я с ARM - не работаю, но, думаю, что Keil - он и в Африке - Keil...
Что Вы понимаете под "отлаживать"? Keil позволяет симулировать МК и отлаживать его в целевом устройстве - монитор. Переключение между этими режимами отладки Menu -> Project -> Options for target -> Debug и выбрать нужный режим отладки (для монитора - ещё и используемый монитор).
MiklPolikov
Цитата(Палыч @ Jun 24 2008, 09:33) *
Я с ARM - не работаю, но, думаю, что Keil - он и в Африке - Keil...
Что Вы понимаете под "отлаживать"? Keil позволяет симулировать МК и отлаживать его в целевом устройстве - монитор. Переключение между этими режимами отладки Menu -> Project -> Options for target -> Debug и выбрать нужный режим отладки (для монитора - ещё и используемый монитор).


У меня в Menu -> Project -> Options for target -> Debug выбрано Use simulator
И во всех остальных местах я ничего не менял- всё как было изначально.

Так вот, когда проэкт аналогичным образом создавался в ИАРе, можно было нажать Debug ,
и программа начинала симулироватся. А что Кейлу не хватает ?
Палыч
Цитата(MiklPolikov @ Jun 24 2008, 09:12) *
А что Кейлу не хватает ?
Гадать можно долго... Например, нет галки "Debug information" в опциях Output... Если у Вас работает пример - можно подсмотреть настройки проекта из него.
MiklPolikov
Цитата(Палыч @ Jun 24 2008, 10:47) *
Гадать можно долго... Например, нет галки "Debug information" в опциях Output... Если у Вас работает пример - можно подсмотреть настройки проекта из него.


Поставил какие-то галочки и заработало ! Спасибо !

Ещё вопрос :
Почему у меня не получается добавить в окно Wach регистры, декларированные в файле AT91SAM7S128.h , который вместе с кейлом шол ?

Т.е. там есть , например, строчка
#define AT91C_PIOA_ODSR ((AT91_REG *) 0xFFFFF438) // (PIOA) Output Data Status Register

И AT91C_PIOA_ODSR в Wach не добавляется.

Как просматривать значения регистров ?
aaarrr
Цитата(MiklPolikov @ Jun 24 2008, 11:40) *
И AT91C_PIOA_ODSR в Wach не добавляется.

Так это же дефайн, о котором отладчик и не знает ничего. Как ему добавляться?

Цитата(MiklPolikov @ Jun 24 2008, 11:40) *
Как просматривать значения регистров ?

Можно просто в памяти или добавить адрес в watch, если он это позволяет.
Nixon
А посмотреть в окне переферии что запрещает?
MiklPolikov
Цитата
Можно просто в памяти или добавить адрес в watch, если он это позволяет.


Когда я в Wach в графу Name добавляю адрес 0xFFFFF468 , в Value то же появляется 0xFFFFF468
В памяти смотреть неудобно.

Цитата(Nixon @ Jun 24 2008, 11:55) *
А посмотреть в окне переферии что запрещает?

Как увидеть это окно ?
Палыч
Цитата(MiklPolikov @ Jun 24 2008, 11:07) *
Как увидеть это окно ?
Имелось в виду Menu -> Peripherals -> Устройство_что_Вам_надо

Кстати, в окне Watch память тоже можно смотреть. Если я не ошибаюсь, то нужно набирать так &СП:ХХХХ, где СП - спецификатор памяти, ХХХ - адрес

P.S. Немного ошибся... Лучше набирать так *&СП:ХХХХ
Если звёздочку не ставить, то нужно "раскрывать" объект (на плюсик слева от адреса нажать).
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.