Во встроенном хелпе все неплохо описано. Но если хотите от меня , то пожалуйста (частями копипастил с хелпа):
Отладка алгоритма на кристалле (мониторная отладка)
При мониторной отладке, компилятор добавляет к программе небольшой (160 слов) скрытый фрагмент, обеспечивающий передачу всего внутреннего состояния микроконтроллера в компьютер для последующего отображения в соответствующих окнах. При этом, состояние любого регистра, ячейки памяти SRAM или EEPROM может быть модифицировано. Последнее очень помогает в разработке, так как можно работать с обособленным блоком программы просто задавая ему нужные входные данные через отладчик.
Для соединения микроконтроллера с компьютером используется только один вывод, определяемый пользователем. Дополнительно может быть использована цепь сброса (RESET) для перезапуска микроконтроллера.
Схема адаптера для мониторной отладки:
Безимени-1.jpg [ 14.42 КБ | Просмотров: 6955 ]
Если у Вас собран COM программатор, то отдельно собирать отладочный шнур не нужно, отладка будет работать через него (через линию, что идет на ногу MOSI). Более того, если в установках отладчика выбрать именно ногу MOSI в качестве линии отладки, то Вы получаете программирование и отладку одним кликом без отключения программатора от микроконтроллера - здорово экономит время.
Теперь подробнее как настроить отладку.
Для обеспечения работы мониторной отладки необходимо обеспечить следующее:
1. Определить используемый вывод микроконтроллера. Для этого необходимо раскрыть окно опций проекта (“Options/Project Options...”) на закладке “Monitor chip”:
sshot-2.png [ 6.45 КБ | Просмотров: 6955 ]
Если нажать кнопку "Programmer Pin", то автоматически выберется вывод MOSI и Вы сможете вести отладку не дергая шнурок.
2. Точно указать тактовую частоту микроконтроллера:
sshot-1.png [ 5.9 КБ | Просмотров: 6955 ]
Это очень важно, так как передача ведется асинхронно и неточность в частоте сделает невозможным работу отладки.
3. Расставить в нужных местах программы точки останова (F5). К моменту первой точки останова стек должен быть уже определен.
sshot-3.png [ 9.34 КБ | Просмотров: 6955 ]
4. Запускаем кнопочку "запуск с монитором кристалла" программа откомпилируется и запишется в кристалл, далее она автоматически запустится и отладчик остановится в первой точке останова. Далее можно посмотреть/подкорректировать, то что нужно и продолжить выполнение программы кнопкой "исполнение до точки останова"
sshot-4.png [ 19.24 КБ | Просмотров: 6955 ]
Как видно из рисунка отладчик довольно продвинутый и позволяет делать с микроконтроллером почти все.
При отладке важно учитывать следующее:
1. Подпрограмма монитора увеличивает размер создаваемой программы на 136 слов + 1 или 2 слова на каждую точку останова (один вызов подпрограммы).
2. Монитор требует 11 байт свободного стекового пространства.
3. При попадании в точку останова исполнение программы полностью останавливается и отключается глобальное прерывание (по выходу - восстанавливается).
4. Мониторная отладка невозможна для кристаллов не содержащих SRAM.
5. Используемый вывод не должен быть занят альтернативным выходным сигналом.
6. Программа, содержащая монитор непригодна для нормального использования, поэтому по завершении отладки, микроконтроллер необходимо запрограммировать обычным образом.
От себя добавлю, очень желательно иметь в устройстве кварц в качестве задающего генератора. Если микроконтроллер работает от внутреннего задающего генератора, то возможны сбои в работе отладчика (хотя случаются редко).