- •Им. А. Н. Туполева
- •1.2. Аналоговые системы автоматического управления.
- •1.3. Системы с цикловым программным управлением (цпу)
- •1.4. Системы числового программного управления (чпу)
- •2. Общая характеристика задач программного управления
- •2.1. Задачи управления устройства чпу
- •2.2. Задачи управления гибким производственным модулем (гпм)
- •2.3. Задачи управления гибкой производственной системой (гпс)
- •3. Геометрическая задача чпу
- •3.1. Этапы реализации геометрической задачи управления
- •3.2. Алгоритм работы устройства чпу
- •3.3. Интерполяция
- •4. Логическая задача чпу
- •4.1. Циклы автоматики
- •4.2. Структура компонентов реализации логической задачи управления
- •4.3. Задача минимизации времени поиска инструмента
- •4.4.Традиционное описание цикла автоматики
- •4.6. Обобщенная модель логической задачи управления
- •5. Технологическая задача чпу
- •5.1 Управление точностью обработки
- •5.2 Управление эффективностью обработки
- •6. Терминальная задача чпу
- •6.1 Содержание терминальной задачи
- •6.2 Панель оператора
- •6.3. Структура диалога
- •6.5. Виды клавиатур устройств чпу
- •6.6. Виды диалога
- •7. Микропроцессорные системы управления
- •7.1. Структура микропроцессора
- •7.2. Типовая структура микропроцессорной системы (мпс)
- •7.2.1. Системная магистраль и циклы обмена
- •7.2.2 Функции памяти
- •7.2.3. Функции устройств ввода/вывода
- •7.2.4. О системе команд процессора
- •7.3. Функциональная структура микропроцессорного устройства чпу
- •7.3.1. Центральный процессор
- •7.3.2. Особенности организации системной магистрали
- •7.3.3. Организация памяти
- •7.3.4. Состав устройств ввода/вывода
- •7.3.5. Системные команды цп, используемые при реализации логической задачи управления (пример)
- •7.4. Управление микроконтроллерами
- •7.4.1. Архитектура мк aTmega128l.
- •7.4.2. Организация памяти мк
- •7.4.3. Некоторые сведения о системе команд микроконтроллера
- •7.4.4. Выполнение программы
- •7.4.5. Порты ввода/вывода
- •7.4.6. Программирование мк
- •7.4.7. Некоторые сведения о подготовке исполняемой программы
- •7.4.8. Имитация и отладка программы в среде avr Studio 4
- •Список литературы
7.4.7. Некоторые сведения о подготовке исполняемой программы
Исполняемая программа состоит из кодов команд МК. Для ее получения программа сначала формируется в текстовой форме на языке программирования высокого уровня. Текст программы, набранный в любом текстовом редакторе и сохраненный в файле в виде последовательности кодов символов, называется исходной программой (исходным модулем). Исходная программа обрабатывается компилятором, в результате чего получается так называемый объектный модуль. Объектный модуль состоит из двух основных частей: тела модуля, представляющего собой программу в кодах команд, и заголовка, содержащего имена внешних объектных модулей. Объектный модуль обрабатывается компоновщиком компилятора, который строит исполняемую программу (загрузочный модуль), содержащую только команды МК. При построении исполняемой программы к объектному модулю, полученному из исходной программы, подключаются объектные модули из библиотек компилятора, содержащих объектные модули функций ввода-вывода, обработки строк, массивов и т. д. Схема подготовки исполняемой программы из исходной программы, подготовленной на языке Си, приведена на рис.6. .
Рис. 7.21
Рис. 7.22 |
Рис.7.23
Для иллюстрации изложенного на рис. 7.22 приводится исходная программа на языке Си, создающая эффект сигнала SOS с помощью светоиндикаторного табло - светодиодов, подключенных к выводам PORTD МК. Исходная программа по структуре включает препроцессорные директивы с именами заголовочных файлов и определения функций, причем здесь последняя функция является главной. В теле функций имеются обращения к макроопределениям, описанным в заголовочных файлах, и выражения-операторы вызова ранее определенных функций. Рядом (рис. 7.23) приведены коды команд исполняемой программы в шестнадцатеричном представлении, полученные после компиляции и компоновки исходной программы Си-компилятором WinAVR Programmers Notepad. На рис.7.24 показан фрагмент исполняемой программы в виде листинг-файла, в котором видна трансформация компонентов исходной программы в исполняемую программу как в кодах машинных команд в шестнадцатеричном представлении, так и в символьной форме на ассемблере.
Рис. 7.24
На рис. 7.25 приведен развернутый алгоритм функционирования приведенной выше программы.
7.4.8. Имитация и отладка программы в среде avr Studio 4
AVR Studio 4 – это интегрированная среда разработки, которая очень удобна для отладки и имитации выполнения программ на МК. Рассмотрим действияв по применению интегрированного имитатора, входящего состав AVR Studio:
Рис.7.25
-запустить программу AVR Studio, в появившемся окне приветствия нажать клавишу Open и открыть ранее созданную в компиляторе Programmers Notepad папку Test с файлами (рис.7.26, представлены только файлы указанных внизу окна типов), открыть загрузочный файл Test.hex (первый в списке), в результате будет предложено выбрать вид отладочного средства и тип МК (рис.7.27), выбрать интегрированный имитатор AVR Simulator и МК Atmega 128, подтвердить
Рис. 7.26
Рис. 7.27
выбор нажатием клавиши Finish, появляется служебное окно с запросом о включении файла в состав проекта – Нет;
- открывается главное окно AVR Studio (рис.7.28).
В главном окне представлена исполняемая программа в виде (Disassembler), полученном ассемблированием кодов машинных команд файла Test.hex, и рабочее окно Workspaсe, предоставляющее доступ к 32 РОН, к параметрам процессора, а также к портам ввода/вывода и другим компонентам МК.
Особый интерес на этапе отладки представляет ветвь параметров про-
цессора (рис.7.29). Представленные здесь элементы позволяют просматривать и изменять содержимое программного счетчика PC , указателя стека SP, счетчика циклов во время выполнения программы, регистров двойной длины (на два байта) X, Y и Z, а также частоту кварцевого осциллятора и показания таймера отсчета времени. Для этого следует выбрать требуемый элемент в
Рис. 7.28
окне Workspace, дважды щелкнуть мышью на значение в поле Value и ввести требуемое значение в появившемся диалоговом окне Edit. Через самый нижний элемент окна Workspace (рис. 7.28) можно выйти на регистры ввода/вывода (рис.7.30) и, например, контролировать имитацию выполнения в МК созданной ранее программы. Для этого достаточно запустить её на вы-
Рис. 7.29
полнение командой меню DebugAuto Step или соответствующей клавишей панели инструментов Debug, расположенной в правой части панели инструментов главного окна AVR Studio (рис. 7.30). При этом желтая
Рис. 7.30
стрелка - курсор показывает выполняемую команду, а цвет поля бит регистров PORTD и PIND отражает их содержимое: белый фон соответствует «0» (светодиод горит), а черный фон – «1» (светодиод выключен). Для того, чтобы прервать выполнение программы, следует выполнить команду меню Debug Break или нажать соответствующую клавишу панели инструментов Debug. Также можно отредактировать содержимое какого-либо рабочего регистра как до, так и в процессе выполнения программы (действия аналогичны предыдущему). При отладке программы весьма удобны пошаговый режим (команда меню DebugStep Into) и режим без захода в подпрограммы (команда меню Debug Step Over), клавиши запуска выполнения программы в этих режимах также имеются на панели инструментов Debug. Перед отладкой программы и имитацией ее выполнения на МК командой меню Debug Reset или клавишей панели инструментов Debug следует обнулить программный счетчик, счетчик циклов и таймера отсчета времени.