Цитата(d7d1cd @ Mar 10 2013, 12:40)

В смысле отладка в устройстве. То есть, залил программу в МК и там по шагам ее выполняешь.
дак, они ж (отладчики) вроде как все так и делают. Или я что-то не догоняю?
Как пример отладчика могу порекомендовать mspdebug. Он вообще бесплатный. Сам им пользуюсь, учу пользоваться им своих студентов.
Устанавливается в систему тоже очень не зателиво. Например, в Ubuntu-е наберите следующую команду:
$ sudo apt-get install mspdebug
подождите несколько минут (зависит от мощности компа и скорости интернета), а потом запускайте под отладчиком свои проги.
Например, команда запуска отладчика с MSP430-UIF по интерфейсу связи с отлаживаемым микроконтроллером JTAG будет выглядеть так:
$ mspdebug uif -j -d /dev/ttyUSB0
здесь uif -- это MSP430-UIF,
-j -- ключик, указывающий на JTAG-интерфейс с МК. Если Вы хотите работать с МК по интерфесу SBW, то нужно опустить (не указывать) этот ключ.
-d -- это компьютерный интерфейс ("дырка"), черезе которую комп будет общаться с отладочным устройством (программатором). В данном случае это USB-соединение -- /dev/ttyUSB0. У Вас скорее всего будет что-то своё.
Вот еще пара примеров:
$ mspdebug uif -d /dev/ttyUSB0 -- здесь нет ключа -j, поэтому соединение с МК будет осущесвляться через SBW.
$ mspdebug rf2500 -- работа дебаггера будет происходить с МК посредством (и через) плату LaunchPad
Иногда бывает так, что нужно работать с МК, которого нет в базе данных mspdebug. (Ну, типа вы уже приобрели новейщий МК, а ПО к нему еще не успели выпустить.) В этом случае вы можете заставить mspdebug работать с новым процом, как со старым, который ему известен:
$ mspdebug uif -d /dev/ttyUSB0 --fet-force-id MSP430F2001
При наборе указанных выше команд вы попадаете в среду отладчика. Все что от вас требуется -- это в интерактивном режиме ему давать команды.
Команда распечатки памяти:
(mspdebug) md 0xC800 0x100
Команда изменения ячейки памяти:
(mspdebug) mw 0x1000 0x12 0x34 0x56 ...
Команда стирания флеш и загрузки кода из файла:
(mspdebug) prog myprog.hex
Посмотреть регистры проца:
(mspdebug) regs
Сбросить проц:
(mspdebug) reset
Изменить значение в регистре:
(mspdebug) set <регистр> <новое значение>
Установиь точку останова в программе:
(mspdebug) setbreak <адрес>
Сделать шаг в программе:
(mspdebug) step
Запустить программу:
(mspdebug) run
И так далее. Я только привер основные, часто используемые при работе, команды и опции запуска. Читайте документацию сам, там много чего полезного есть. Информацию никто не закрывает и не делает из этого секретов. Никто не грозится санкциями за нарушение лицензии.
Выход из среды отлачика -- команда exit. Но можно и проще. В Линуксе (почти) всё текстовое и (почти) всё рассматривается как файл, а символом конеца файла является комбинация Ctrl-D. То есть отладчик слушает поток (файл) с клавиатуры, и выполняет его команды. Но когда поток завершается (конец файла), то отладчик заканчивает свою работу. Много слов. Проще сказать -- для выхода из отладчика нажмите Ctrl-D.
Если вы не хотите каждый раз в интрактивном режиме заходить в отладчик и там руками набирать для него команды, автоматизируйте свои действия. Команды помещаются в конце строки. Их лучше заключить в кавычки:
$ mspdebug uif -d /dev/ttyUSB0 --fet-force-id MSP430F2001 "prog myprog.elf"
Если вы заметили, что одни и те же действия повторяются, занесите их в свой Make файл. Например, так:
CODE
program:
(здесь символ табуляции) mspdebug uif -d /dev/ttyUSB0 --fet-force-id MSP430F2001 "prog myprog.elf"
Это условный пример. Обычно в Make файлах очень интенсивно используются переменные и подстановки. Но это уже пилотаж для более продвинутых. Начтине с простого, потом сами поймете, что Вам следут делать.
Задавайте вопросы, уточняйте детали. Путей решения проблемы очень много.
(Извините! Я у себя в блоге немного написал про основы работы с MSP430, походите по блогу, может что и найдете полезное.)