Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Kharakhnin / ПОСОБИЕ_Харахнин.doc
Скачиваний:
274
Добавлен:
08.03.2016
Размер:
17.89 Mб
Скачать

Глава 6. Отладка программного обеспечения и программирование однокристальных мк

После написания управляющей прикладной программы на ассемблере наступает этап отладки: необходимо установить, что программа работоспособна; выявить, локализовать и устранить ошибки. Отладка программного обеспечения представляет собой отдельную сложную задачу, которая требует для своего выполнения высокого профессионализма и глубоких знаний разработчика. Отладка прикладного программного обеспечения осуществляется в несколько этапов. Простые синтаксические ошибки выявляются уже на этапе трансляции. Далее необходимо выполнить:

1). автономную отладку каждой процедуры в статическом режиме, позволяющую проверить правильность проводимых вычислений, правильность последовательности переходов внутри процедуры (отсутствие “зацикливания”) и т.п.;

2). комплексную отладку программного обеспечения в статическом режиме, позволяющую проверить правильность алгоритма управления (по последовательности формирования управляющих воздействий);

3). комплексную отладку в динамическом режиме без подключения объекта для определения реального времени выполнения программы и её отдельных фрагментов.

Отладка отдельных модулей проще и эффективнее отладки всей прикладной программы, поэтому переходить к этапу комплексной отладки целесообразно только после исчерпания всех средств автономной отладки.

Вышеперечисленные этапы осуществляются обычно с использованием кросс-систем. В состав кросс-систем входят программы-отладчики, моделирующие выполнение программ, написанных для микроконтроллеров. Такие программные имитаторы (симуляторы) позволяют эффективно отлаживать алгоритм функционирования контроллера и вычислительные процедуры.

Разработчику предоставлен доступ к любому ресурсу МК, имеется возможность покомандного и пофрагментного исполнения программ и останова по условию, а также подсчёта числа тактов выполнения тех или иных фрагментов программы, инициирования прерывания, дизассемблирования содержимого памяти программ и т.п.

Кросс - отладчики позволяют промоделировать практически все возможные варианты работы программы и тем самым убедиться в её работоспособности. На этом этапе возможна проверка работоспособности программы в нештатных ситуациях и в условиях поступления некорректных входных воздействий.

Мощные имитаторы должны позволять моделировать объекты и датчики, подключаемые к микроконтроллеру. При этом появляется возможность выполнять комплексную отладку программного обеспечения, не опасаясь, что возможные ошибки в программе, алгоритме или некорректные действия оператора приведут к выходу из строя технических средств разрабатываемой системы.

Главным недостатком кросс-систем является невозможность прогона программы в реальном масштабе времени.

Наиболее полная и комплексная отладка прикладного программного обеспечения совместно с аппаратными средствами контроллера может быть произведена на компьютере с так называемым внутрисхемным эмулятором.

Существует два вида эмуляторов:

- эмулятор ППЗУ;

- эмулятор процессора.

Первый вид используется для настройки контроллеров, использующих однокристальный МК, не имеющие своего внутреннего ПЗУ и работающие под управлением программы, записанной в микросхему внешнего УФППЗУ. Эмулятор ППЗУ содержит ОЗУ, в которое записывается прикладная отлаживаемая программа с помощью персонального компьютера. Аппаратно ОЗУ подключается в панель, где должна размещаться микросхема УФППЗУ. При включении питания контроллер начинает работать под управлением программы, записанной в ОЗУ. Если имеются ошибки, то разработчик переписывает программу в ОЗУ эмулятора, используя программное обеспечение персонального компьютера. Такой подход позволяет ускорить процесс отладки. Программирование УФППЗУ требует применения специального аппаратного программатора, а процесс стирания информации из УФППЗУ требует установки, имеющей источник ультрафиолетового излучения. Недостатком эмуляторов ППЗУ является невозможность отладки программы в пошаговом режиме.

Второй вид использует персональный компьютер для эмулирования работы самого однокристального МК с помощью специальной платы, подключаемой к системной шине, LPT или СОМ порту. Плата имеет ленточный кабель с разъемом, который подключается в панельку контроллера, где должен быть установлен однокристальный МК. В этом случае персональный компьютер полностью выполняет функции МК под управлением прикладной программы. Имеется возможность пошаговой отладки.