Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Сколько точек останова у msp430f2132?
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > MSP430
Slash
Здравствуйте!

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?



rezident
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 размера ОЗУ.
akostin
Работал в IAR c 22xx. Ставится одна точка останова. Если IAR начинает протестовать против этого, то просто перезапускаю отладчик и точка ставится.

Вирутальными и прочими софтверными точками останова после одной попытки больше пользоваться никогда не буду. Одни раз очень долго не мог понять, почему не работает программа. Нашел ошибку в окне дизассемблера: там вместо BIS стояла команда AND (по-моему так, точно не помню). Посмотрел выходной ассемблерный код компилятора - там все правильно - BIS. Думал, кристалл накрылся - прошивается с ошибкой. Оказалось - это такая точка останова - ставится команда JMP, но дизассемблером и, естественно, ядром при исполнении программы, ее комбинация с предыдущей командой понимается совсем не так, как должно быть. Так что, пользоваться softvare breakpoints я зарекся и никому не советую.
Slash
Цитата(rezident @ Sep 13 2010, 18:25) *
2. IAR резервирует как минимум одну hardware breakpoint для своих нужд. Возможно вы не отключили какие-то опции, которые используют и вторую оставшуюся.

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

Отлаживаю программный I2C (ничего не получается), попробовал ставить log breakpoints, очень удобно. Но от 1 точки останова толку мало. А поведение software breakpoints какое-то непонятное - неясно что глючит, отладчик или IAR.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.