- •1.Техническое задание на проектирование
- •1.1. Обобщенный алгоритм функционирования мкс
- •1.2. Обработка информации, поступающей с дискретных датчиков (х1, …, Хn)
- •1.3. Обработка информации, поступающей с аналоговых датчиков (v1, …,Vm)
- •1.4. Управление пуском –остановом электродвигателя
- •1.5.Управление технологическим параметром в заданных пределах
- •1.6.Обработка запроса прерывания
- •1.7. Пульт управления
- •1.8. Последовательный канал связи
- •2. Результаты курсовой работы
- •3. Этапы разработки и отладки программного обеспечения
- •4. Описание симулятора adSim812
- •1..Техническое задание на проектирование…………………………………………
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 позволяет:
загрузить для отладки сгенерированные ассемблером объектные файлы;
просмотреть на экране дизассемблированный текст загруженной программы, включая адреса и коды команд, содержимое всех регистров ОМК, область памяти программ, резидентной и внешней памяти данных;
выполнить загружаемую программу по шагам с просмотром результата после каждого шага и в непрерывном режиме с остановом по достижении задаваемых пользователем адресов;
внести изменения в загружаемую программу в мнемонических обозначениях ассемблера, а также в машинных кодах;
внести изменения в содержимое регистров, флагов и памяти в командном режиме и в режиме полноэкранного редактирования;
получить трассировку программы;
определить время выполнения загружаемой программы и её частей по встроенному счетчику.
