Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Автоматика / Лекции_ЭлСисАвт.doc
Скачиваний:
75
Добавлен:
03.03.2016
Размер:
10.88 Mб
Скачать

Програмирование на с

Рисунок –

Рисунок - Схема ALU

Рисунок - Временная диаграмма

Разработка программного обеспечения на мк

  1. Выбираем МК исходя из скорости ядра и затрат на ПО.

  2. Пишется программа на языке. Программа инициализации готовится самим САПРом.

  3. Редактирование программы.

  4. Составление .hexфайла.

  5. Переписывание .hexфайла в МК.

Достоинства С:

  1. Возможность оперирования отдельными битами внешнего системного разъема.

  2. Развитость команд

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

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

Рис.9.1- Рабочее поле с текстом программы Code Vision

Организация задержки по времени

  1. Используя внешний источник (будильник, конечный выключатель).

  2. С помощью таймеров, встроенных в МК.

  3. Задержка МК пустыми операторами на время в цикле.

Достоинства: простота организации.

Недостаток: МК занят пустыми операциями.

Процедура задержки МК на 0,1с

delay_0.1_sek:movr3 # 255;

m1: mov r2 # 194;

m2: djnz r2,m2;

return;

// Декремент регистра r2 и переход на меткуm2, если ≠0. Аналог команды if.

delay_0.5_sek: mov r4 #5;

pm1: lcall delay_0.1_sek;

djnz r4,pm1;

return;

Организация работы таймеров-счетчиков

В каждом МК находится 2 или более таймеров-счетчиков. Если управлять внешними по отношению к МК сигналами, то Т-С называется счетчиком. В качестве внешних импульсов могут быть кнопки, датчики, генераторы импульсов.

Если Т-С запускается импульсами от генератора, то Т-С работает в режиме таймера.

Группа 47Группа 79

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

Группа 34

  • Регистр управления

1 – пуск таймера

2 – остановка

Группа 20

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

ЕА: 1 - Установка приоритета прерывания

0 - блокировка прерывания

ЕТО: 1 – установка прерывания от таймера

0 - блокировка прерывания

Группа 9

  • Регистр приоритетов прерывания

Рисунок – Регистры

Порядок работы с сапром разработки ПО:

  1. Формирование проекта: main

При этом формируются папки, где хранится описание конкретного процесса с точки зрения разработки ПО (формируется автомат при выборе конкретного процесса).

  1. Формирование рабочей программы:

в программе «main» формируется алгоритм, состоящий из последовательности обращения к процедурам.

voidOpen(параметры)

{ _asm// перевод

{ movdx, 118h; // адрес

mov al, 00010100 b; //данные

IOW out dx, al;}

}

void Close()

{ _asm

{ mov dx, 118 h;

mov al, 00000000 b;

out dx, al;

}

}

Управление ацп

double get Ud (intnzadv)

{

for(int i=0;i<=225;i++)

{ _asm

mov dx, 11A h;

mov Ud, al;

}

Ud=Ud/100

}