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

 
 
 
Reply to this topicStart new topic
> Сколько точек останова у msp430f2132?, и еще несколько вопросов
Slash
сообщение Sep 13 2010, 13:38
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 202
Регистрация: 10-04-05
Из: Санкт-Петербург
Пользователь №: 4 011



Здравствуйте!

1) Где можно найти количество точек останова у msp430f2132? В Family User Guide написано, что device specific, в даташите на f2132 найти не могу.

2)У меня - Win7, MSP-FET430UIF, IAR C/C++ Compiler for MSP430 4.21.9 (4.21.9.59999) Процессор - msp430f2132.
Ставлю единственную точку останова (Run to main галка снята), точка ставится, IAR при этом пишет "Failed to set hardware breakpoint. All available resources are already in use. Виртуальные точки останова можно поставить там-то."
Это нормально?

3) Чем различаются software breakpoints - virtual oт emulated breakpoints?



Go to the top of the page
 
+Quote Post
rezident
сообщение Sep 13 2010, 14:25
Сообщение #2


Гуру
******

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



1. Аппаратных - две штуки. См. IAR Embedded Workbench Version 3+ for MSP430 User's Guide (Rev. S). Таблица оттуда.
2. IAR резервирует как минимум одну hardware breakpoint для своих нужд. Возможно вы не отключили какие-то опции, которые используют и вторую оставшуюся.
По п.3. не могу точно сказать, не разбирался досконально. Вроде software breakpoints реализуются заменой в коде программы на JMP с переходом на обработчик software breakpoints и эту же команду, но размещенные в ОЗУ. Уже там используется аппаратная точка останова. Поэтому количество программных точке останова зависит от доступного для C-CPY размера ОЗУ.
Эскизы прикрепленных изображений
Прикрепленное изображение
 
Go to the top of the page
 
+Quote Post
akostin
сообщение Sep 14 2010, 07:33
Сообщение #3


Участник
*

Группа: Свой
Сообщений: 72
Регистрация: 4-12-04
Пользователь №: 1 322



Работал в IAR c 22xx. Ставится одна точка останова. Если IAR начинает протестовать против этого, то просто перезапускаю отладчик и точка ставится.

Вирутальными и прочими софтверными точками останова после одной попытки больше пользоваться никогда не буду. Одни раз очень долго не мог понять, почему не работает программа. Нашел ошибку в окне дизассемблера: там вместо BIS стояла команда AND (по-моему так, точно не помню). Посмотрел выходной ассемблерный код компилятора - там все правильно - BIS. Думал, кристалл накрылся - прошивается с ошибкой. Оказалось - это такая точка останова - ставится команда JMP, но дизассемблером и, естественно, ядром при исполнении программы, ее комбинация с предыдущей командой понимается совсем не так, как должно быть. Так что, пользоваться softvare breakpoints я зарекся и никому не советую.
Go to the top of the page
 
+Quote Post
Slash
сообщение Sep 15 2010, 20:32
Сообщение #4


Местный
***

Группа: Участник
Сообщений: 202
Регистрация: 10-04-05
Из: Санкт-Петербург
Пользователь №: 4 011



Цитата(rezident @ Sep 13 2010, 18:25) *
2. IAR резервирует как минимум одну hardware breakpoint для своих нужд. Возможно вы не отключили какие-то опции, которые используют и вторую оставшуюся.

Спасибо, буду разбираться.

Отлаживаю программный I2C (ничего не получается), попробовал ставить log breakpoints, очень удобно. Но от 1 точки останова толку мало. А поведение software breakpoints какое-то непонятное - неясно что глючит, отладчик или IAR.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 6th July 2025 - 06:03
Рейтинг@Mail.ru


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