реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> Дебагер IAR вопрос
tvilsa
сообщение Feb 27 2009, 08:29
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 53
Регистрация: 27-01-09
Пользователь №: 43 990



Здравствуйте.
Я только осваиваю MSP. У меня такой вопрос.
Испоьзую MSP430F1222, IAR , программатор самодельный типа OLIMEX.
Раньше когда работал с PICами там в MPLab в режиме симуляции было окошко в котором можно было указать частоту на которой работает проц и в процессе симуляции - дебагинга измерить временные интервалы между исполняемыми командами. Т.е. например при ресете обнулить виртуальный таймер, потом дошагать до нужного места
и посмотреть сколько времени это займет вреале. Есть ли такая возможность в IAR?
И еще создал простой проект инверсии состояния ножки порта. Сконфигурировал таймер чтоб тактировался на частоте MCLK с дефолтными 750 кГц, и считал вверх до ffff.
Запускаю дебагинг в устройстве и смотрю на значение TAR, так при каждо выполнении инверсии и переходе опять на инверсию значение TAR меняется на 295 в десятичке. Почему так происходит?
Ведь по факту выполняется всего две команды инверсия и переход. Они не должны выполняться 295 тактов.
Спасибо.
CODE
#include <msp430x12x2.h>

int main(void)
{
WDTCTL = WDTPW + WDTHOLD; // Stop watchdog timer
P1DIR |= 0x01; // Set P1.0 to output direction
P1OUT = 0x00; // Toggle P1.0 to 0
TACTL = TASSEL_2 + MC_2; // SMCLK, upmode

for (;;)
P1OUT ^= 0x01; // Toggle P1.0 using exclusive-OR

}


Сообщение отредактировал tvilsa - Feb 27 2009, 08:31
Go to the top of the page
 
+Quote Post
Dog Pawlowa
сообщение Feb 27 2009, 11:44
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 702
Регистрация: 14-07-06
Пользователь №: 18 823



Цитата(tvilsa @ Feb 27 2009, 12:29) *
Запускаю дебагинг в устройстве и смотрю на значение TAR, так при каждо выполнении инверсии и переходе опять на инверсию значение TAR меняется на 295 в десятичке. Почему так происходит?
Ведь по факту выполняется всего две команды инверсия и переход. Они не должны выполняться 295 тактов.

Отладчик MSP430 не останавливает периферию. Из-за этого возможны разные интересные эффекты, но жить по большому счету не мешает.
Просто нужно помнить.


--------------------
Уходя, оставьте свет...
Go to the top of the page
 
+Quote Post
rezident
сообщение Feb 27 2009, 12:04
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882



Цитата(tvilsa @ Feb 27 2009, 13:29) *
и посмотреть сколько времени это займет вреале. Есть ли такая возможность в IAR?
Работа периферии в C-CPY не симулируется. Только на уровне макросов работы с флагами прерываний. Для измерения временных интервалов можно использовать значение переменной CYCLECOUNTER в окне CPURegisters. Берете абсолютную разницу и делите на частоту MCLK = временнОй интервал.
Цитата(tvilsa @ Feb 27 2009, 13:29) *
Запускаю дебагинг в устройстве и смотрю на значение TAR, так при каждо выполнении инверсии и переходе опять на инверсию значение TAR меняется на 295 в десятичке. Почему так происходит?
Ведь по факту выполняется всего две команды инверсия и переход. Они не должны выполняться 295 тактов.
Потому, что таймер продолжает тактироваться и считать, невзирая на breakpoint. А для того, чтобы считать его значение через JTAG, требуется тоже некоторое время.
Go to the top of the page
 
+Quote Post
tvilsa
сообщение Mar 12 2009, 07:43
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 53
Регистрация: 27-01-09
Пользователь №: 43 990



Что то у меня не изменяется значение CYCLECOUNTER. Всегда равно 0.
:-(
Go to the top of the page
 
+Quote Post
tvilsa
сообщение Mar 12 2009, 08:24
Сообщение #5


Участник
*

Группа: Участник
Сообщений: 53
Регистрация: 27-01-09
Пользователь №: 43 990



Такой вопрос. Как зашить программу в контроллер из IAR?
Я так понимаю если при дебагинге программа зашивается то как то и при release можно засунуть готовую прошивку.
А то неудобно приходиться каждый раз переключаться в MspFet и шить оттуда.
Заранее спасибо.
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 19:28
Рейтинг@Mail.ru


Страница сгенерированна за 0.01378 секунд с 7
ELECTRONIX ©2004-2016