Тогда все гораздо проще, а может и труднее. Все зависит от задач.
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено Bill 17 ноября 2003 г. 09:44
В ответ на: У меня уже собрано устройство. отправлено AVR 2313 17 ноября 2003 г. 09:17

Обычно всегда в приборее имеются элементы индикации и я вставляю в программу в контрольных точках вывод на индикаторы той или иной иформации. Этого не всегда достаточно. Но программа в контроллере имеет бесконечный цикл и я в ряде случаев пользуюсь осциллографом. Например, мне нужно убедиться, что в программе работает таймер и возникают прерывания от него. Тогда я ставлю в программу обработки прерываний по таймеру установку и сброс определенного бита у какого-нибудь порта. Если необходимо, то использую этот сигнал для синхронизации осциллогорафа.
Как правило, проблемы которые можно решить подобным способом две: попадание программы на нужный участок или зацикливание в нем. Если программа не попадает туда, куда нужно или зацикливается там где не нужно, то этого достаточно. Дальше начинаю думать в чем причина. Если я ее нахожу, то просто исправляю программу. Если нет, то ставлю другой конторольный вывод, чтобы сузить область анализа. Ну и т.д.
Вообще, я считаю, что лучше лишний раз подумать над программой и изменить код, чем ходить по нему с помощью отладчика. У меня это получается гораздо быстрее.
Отладчиком я пользовался очень редко и для отладки алгоритмов, не требующих обращения к периферии.
Ну и наоследок могу сказать, что программирую в основном на Си. Мой опыт показывает, что эффективность существующих компиляторов очень высокая и я практически отказался от использования ассемблера. Я им пользуюсь в самых крайних случаях, когда требуется сэкономить несколько микросекунд или десяток байт, т.е. контроллер работает на пределе. Но и в этом случае не считаю зазорным редактировать программу на asm, сгенерированную компилятором. На мой взгляд гораздо быстрее отредактировать имеющуюся программу, чем самому все писать, начиная с нуля.
Вот, собственно говоря, вся моя методика отладки.

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru