Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
К_Раб_ЦБП.DOC
Скачиваний:
3
Добавлен:
08.09.2019
Размер:
388.61 Кб
Скачать

2. Результаты курсовой работы

Результатами проектирования являются:

• структурная схема МКС;

• блок-схемы алгоритмов и программы реализации заданных функций на языке Ассемблер;

• карта распределения адресных пространств памяти программ и данных контроллера

• оценка основных характеристик МКС:

а) максимального времени реализации одного цикла управления (от пуска системы до окончания однократной реализации заданного алгоритма ) Время реализации определяется симулятором микроконтроллера автоматически при выполнении программы.

б) емкости памяти данных и памяти программ (в байтах), необходимые для реализации разработанных программ, оценивается студентом самостоятельно.

Оформление курсовой работы

Курсовая работа оформляется в виде пояснительной записки и графической части.

Пояснительная записка должна содержать:

титульный лист;

оглавление с указанием страниц;

задание на курсовую работу;

структурную схему МКСи ее краткое описание, состав и назначение основных модулей контроллера и системы;

блок-схемы заданных алгоритмов и программы их реализации;

карту распределения адресного пространства памяти программ и данных МКС;

оценки характеристик разработанной МКС: время выполнения программ и размерность программ в байтах

Оформление пояснительной записки и графической части курсовой работы должно быть выполнено в соответствии с стандартами

.

3. Этапы разработки и отладки программного обеспечения

Разработка программного обеспечения включает следующие этапы:

1.Подготовка программы на входном языке с использованием текстового редактора.

2.Трансляция программы в объектный код.

3.Отладка программы с помощью программного отладчика (симулятора), в качестве

которого в курсовой работе используется симулятор ADSIM812, рассмотренный

далее.

4.Загрузка объектного кода в память микроконтроллера.

5.Проверка правильности работы программы при выполнении ее непосредственно микроконтроллером.

В курсовой работе выполняются только пункты 1,2,3.

Для подготовки исходного текста программы на входном языке, может использовать любой текстовый редактор, формирующий файл в коде ASCII. В качестве языка для описания алгоритмов в курсовой работе используется язык инструкций (ассемблера). Для программирования логических контроллеров Международная Электротехническая комиссия утвердила стандарт IEC-1131, который в качестве одного из языков включил язык инструкций (Instruction List, IL), аналогичный языку ассемблера. Написанная на нем программа представляет собой список последовательно выполняемых команд , которые адаптированы к задачам управления .

Для трансляции исходного текста программы в объектный код используется ассемблер ASM51.EXE. На этапе трансляции выявляются и должны быть исправлены синтаксические ошибки в исходном тексте. После трансляции исходного файла программы FILE.ASM формируются два типа файлов: исполняемый FILE.HEX и файл листинга FILE.LST.

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

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

Язык инструкций имеет стандартный формат операторов ассемблера:

[<метка>:] <операция> [<операнд(ы)>] [;<комментарий>].

Здесь и далее в квадратных скобках указываются необязательные элементы синтаксических конструкций.

Поле метки содержит символическое имя ячейки памяти, в которой хранится отмеченная команда или операнд. Метка представляет собой символьную комбинацию, начинающуюся с буквы и содержащую не более 13 символов. Метка должна отделяться от поля операнда двоеточием. В поле операции записывается мнемоническое обозначение команды, например MOV - пересылка, ADD - сложение и т. д.

В поле операндов задаются участвующие в операции операнды. Операторы ассемблера могут иметь ни одного, один или два операнда. В последнем случае операнды разделяются запятой. Операнд может быть задан своим адресом (прямым или косвенным) или непосредственным значением. Прямой адрес может быть задан числом, мнемоническим обозначением или символическим именем. Например:

MOV R0,28H - используется мнемоническое обозначение регистра R0 и числовое значение адреса ячейки в памяти данных;

ADD A,SUM - используется мнемоническое обозначение аккумулятора и символическое обозначение адреса операнда в памяти данных.

Признаком косвенной адресации служит префикс @. Например, команда MOV @R0,A пересылает содержимое аккумулятора в ячейку резидентной памяти данных РПД, адресуемую содержимым регистра R0 (косвенная адресация РПД осуществляется с использованием регистров R0 и R1 текущего банка, а внешней памяти данных (ВПД) - с использованием регистра-указателя данных DPTR).

Непосредственный операнд представляется числом или символическим именем с обязательным префиксом #. Например, MOV R6,#15 или ADDC A,#OP1. Задаваемые числами адреса и непосредственные значения должны содержать суффикс указания системы счисления: B - двоичная, D - десятичная и Н - шестнадцатеричная. Число без суффикса по умолчанию считается десятичным. Если шестнадцатеричная константа начинается с буквы, ей должен предшествовать нуль, например: 0A4H, 0D7H.

В результате трансляции создается объектный файл в абсолютном двоичном формате - <имя_файла>.HEX и файл листинга - <имя_файла>.LST, в котором содержатся указания на ошибки, выявленные в процессе трансляции.

После исправления всех синтаксических ошибок (если таковые имелись) необходимо загрузить полученный объектный файл в симулятор для пошаговой отладки алгоритма. Используемый в курсовой работе полноэкранный отладчик ADSIM812 позволяет:

загрузить для отладки сгенерированные ассемблером объектные файлы;

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

выполнить загружаемую программу по шагам с просмотром результата после каждого шага и в непрерывном режиме с остановом по достижении задаваемых пользователем адресов;

внести изменения в загружаемую программу в мнемонических обозначениях ассемблера, а также в машинных кодах;

внести изменения в содержимое регистров, флагов и памяти в командном режиме и в режиме полноэкранного редактирования;

получить трассировку программы;

определить время выполнения загружаемой программы и её частей по встроенному счетчику.