3731 ИЗУЧЕНИЕ МИКРОКОНТРОЛЛЕРОВ АТ89 ФИРМЫ ATMEL

ЛАБОРАТОРНАЯ РАБОТА № 1

РЕАЛИЗАЦИЯ ФУНКЦИЙ ПЕРЕСЫЛКИ

 

Цель работы: программирование на языке Си микроконтроллеров семейства АТ89, приобретение навыков работы с программным пакетом Keil.

Теоретическая часть

Keil представляет собой многооконную интегрированную среду разработки, функционирующую только в среде Windows. Интегрированная среда включает:

  • управление проектами, редактор исходного кода и отладчик программ в одном мощном инструменте;
  • С51 – оптимизирующий ANSI C компилятор, создаёт  относительные объектные модули из исходного кода на Си;
  • А51 – макроассемблер, создаёт относительные объектные модули из исходного кода на ассемблере 8051.

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

 

Порядок выполнения работы

 

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

Для создания нового проекта выберите в главном меню пункт Project / New Project. На экране появится окно создания нового проекта (Create New Project), в котором задайте имя проекта и нажмите кнопку Сохранить. При этом появится очередное окно Select Device for Target. Выберите в нём тип программируемого микроконтроллера (например, АТ89С52), справа автоматически появится его краткое описание. Осуществив выбор, нажмите кнопку OK.

Проект создан. Теперь нужно создать файл с исходным текстом программы. Для этого в главном меню выберите пункт File / New. Появится окно с содержимым файла. Выбрав в меню пункт File / Save as, сохраните этот файл на диске, указав расширение “.C ”. Это означает, что файл  будет содержать текст программы на языке Си. После проделанной работы необходимо подключить этот файл к созданному ранее проекту. Это можно осуществить следующим образом:  с помощью левой кнопки мыши раскройте  находящуюся в левом окне папку Target 1 (если это окно на экране отсутствует, то выберите в меню пункт View / Project Window), появится вложенная папка Source Group 1, щёлкните  по ней правой кнопкой мыши, затем в появившемся контекстном меню выберите пункт Add Files to GroupSource Group. Далее появится окно, в котором необходимо выбрать имя созданного файла, после чего нажмите кнопку Add, а затем кнопку Close. В итоге файл связался с проектом.

На экране должно находиться окно созданного файла, в котором необходимо с помощью клавиатуры набрать исходный текст программы на языке Си. Если по каким-либо причинам оно отсутствует, например было закрыто, тогда  нужно в главном меню выбрать пункт File / Open, найти созданный файл и нажать кнопку Открыть.

В качестве примера наберите следующий  текст программы.

/*******************************************/

/*  Программа пересылки массива из         */

/*  ПЗУ в ОЗУ и нахождения среднего        */

/*  значения элементов массива             */

/*  с последующим выводом его в порт P0    */

/*******************************************/

#include <at89x52.h>     // Подключение заголовочного файла,

//  задающего тип микроконтроллера

unsigned char code m[10] =        // Создание массива в ПЗУ и

{ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; //инициализация массива

unsigned char data d[10];         //  Создание массива в ОЗУ

//  с косвенной адресацией

int s = 0;              //  Определение переменной для хранения

//  среднего значения элементов массива

void main (void)        //  Входная точка программы

{

char i;               //  Переменная для цикла

for (i=0; i<10; i++)

{

d[i] = m[i]; // Пересылка i-го элемента массива в массив d

s = s + d[i];      //  Нахождение суммы элементов массива

}

s = s / 10;        // Вычисление среднего значения

//  элементов массива

P0 = s;              //  Пересылка среднего значения в порт P0

}                    //  Конец программы

После того как программа написана, её необходимо откомпилировать. Для этого в главном меню щёлкните по пункту Project и выберите подпункт Rebuild all target files. Если компиляция прошла успешно, то в нижнем окне появится сообщение, что ошибок нет (0 Error(s), 0 Warning(s)) и можно начать отладку программы. Иначе выведется сообщение об ошибке, которую в дальнейшем нужно исправить, и повторить компиляцию программы.

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

В первую очередь познакомьтесь с меню отладки Debug , которое откроется после щелчка кнопки на названии меню в верхней строке окна среды. Это меню имеет следующие пункты.

  • Start/Stop Debug Session (Ctrl+F5) – включает/выключает режим отладки.
  • Go (F5) – запускает программу на выполнение. Программа будет выполняться, пока её не остановит пользователь или не произойдёт столкновение с точкой останова. Команда Go доступна только тогда, когда выполнение программы остановлено.
    • Step (F11) – осуществляет пошаговое выполнение программы.
    • Step Over (F10) – выполняет одну строку программы. Если команда содержит вызов функции, то функция будет выполнена до конца за один шаг.
    • Step Out of Current Function (Ctrl+F11) – доступна во время выполнения функции, выполняет её за один шаг.
    • Run to Cursor line (Ctrl+F10) – по этой команде программа выполняется, пока не достигнет строки, обозначенной курсором в окне исходного текста программы.
      • Stop Running (Esc) – прерывает выполнение программы.
      • Breakpoints – устанавливает точку останова с определёнными параметрами.
      • Insert/Remove Breakpoint – устанавливает/удаляет точки останова.
      • Enable/Disable Breakpoint – разрешает/запрещает точки останова.
        • Disable All Breakpoint – запрещает все точки останова.
        • Kill All Breakpoint – удаляет все точки останова.
        • Show Next Statement – показывает текущее состояние счётчика программ.
        • Enable/Disable Trace Recording – разрешает/запрещает трассировку программы.
        • View Trace Records – показывает предыдущие выполненные инструкции.
          • Memory Map – выводит карту памяти.
          • Performance Analyzer – открывает диалог производительности программ.
            • Inline Assembly – выводит ассемблерный код текущей строки.
            • Function Editor (Open Ini File) – редактор функций.



 
даты и времени приятным. выбрать программу а мультиварка