Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
67
Добавлен:
11.03.2016
Размер:
8.9 Mб
Скачать

Области МК – техническое средство создания нижнего применения уровня АСУ ТП

МК Подзадачи:

1.Оперативное управление технологическими

процессами (нижняя ступень АСУ – локальные регуляторы)

2.Поддержание режимов работы потребителей эл.

энергии по заданному алгоритму (устройства плавного

пуска, частотный привод, регуляторы скорости, давления,

температуры…)

3.Основа построения робототехники, мехатронных узлов и систем…

4.Интеллектуальное управление вспомогательной

(бытовой) техникой (сотовые телефоны, стиральные

машины, микроволновые печи)

Машинные

коды

МП

Команды /инструкции/ МП (арифметические,

логические) однозначно связаны с определенным числом (машинным кодом, кодом операции - КОП в

памяти программ Гарвардской архитектуры или в общей памяти фон - Нейманской)

Дешифратор (регистр) команд РК, считывая

КОП, настраивает УУ на выполнение

соответствующей команды МП

Таким образом, текст инструкций (программы из

команд) для МП – это определенный набор чисел

Поэтому взамен каждой машинной команде предложена

мнемоника слово из аббревиатур, раскрывающая

суть команды

Ассемблер

МП

Язык программирования МП, где каждой команде – мнемонике (аббревиатуре) соответствует одна машинная команда это Ассемблер

Является языком низкого уровня

Эффективен для программирования МП

Дает максимальное быстродействие, поскольку

предельно адаптирован к архитектуре МП и не

содержит лишних инструкций

Ассемблер

Машинная команда

Пример mov Lw 55h

4E 55

mov wf EECON

76

33 25

bsf EECON, WR

25

0F

Если применяется фон-Нейманская архитектура, то для Зам! разделения

чисел – команд МП и

чисел – данных МП выдерживается определенный стандарт - формат

Форматы

машинного

кода

для

фонНейманской архитектуры

Пример

для МП с разрядностью 8-бит

Однобайтная команда

пример – очистка регистра

39h

Двухбайтная команда

пример – переход на адрес «данные №1»

31h

Трехбайтная

пример – сложение «данных№1 + данных№2» и помещение результата в аккумулятор

3F h

В общем случае в ОЗУ МП будет череда чисел

3F xx xx 39 31 xx

Выполнение

задания

Что бы зажечь светодиод VD2 при нажатии на кнопку SA, нужно написать программу для МК

ЭТК _ 2014 _ Мятеж С.В.

205

- | Clear Bit |

Предусмотрев за инструкцией перехода RJMP команду зажигания светодиода (запись в канал PB1

логической «1»), обеспечим выполнения поставленной задачи

- | Set Bit |

Алгоритм

задания в виде блок-схемы

ЭТК _ 2014 _ Мятеж С.В.

206

при отпущенной кнопке

Траектория

выполнения

строк

ЭТК _ 2014 _ Мятеж С.В.

207

СИМУЛЯТОР. Вид среды отладкипрограммыдля МК

Окно редактора кода

Вкладка внутренних

для Ассемблера

ЦЛУ микроконтроллера

ПРОВЕРКАВ РЕАЛЬНОСТИ. Процесс программированияМК

Активация Происходит, если одному из имеющихся внутренних альтернативныхЦЛУ (компаратор, АЦП/ЦАП, ШИМ, UART, USB… ) функций портов.с помощью соответствующего служебного регистра назначается вывод(ы) МК, до этого принадлежавший

параллельному порту ввода/вывода.

Основы работы с внутренними ЦЛУ МК

Все внутренние ЦЛУ МК (компаратор, АЦП/ЦАП,ШИМ,

UART, USB… ) предварительно конфигурируются, активируются, коммутируются комбинацией бит, записанных аппаратно или программно (в ходе выполнения) в соответствующие служебные регистры

Использование АЦП в МК на примере

AVR

Обычно МК имеет один АЦП (ADC), вход которого соединяется (в ходе конфигурирования) с выводом одного из портов (выбор канала).

В AVR за это отвечает служебный регистр MUX

Вход АЦП

 

Биты регистра MUX

 

 

 

 

 

 

 

 

MUX 2

 

MUX 1

 

MUX 0

 

 

 

 

 

 

 

 

 

 

 

 

Порт А 7

1

 

1

 

1

 

 

 

 

 

 

 

 

Порт А 6

1

 

1

 

0

210

ЭТК _

2014 _ Мятеж С.В.

 

 

 

Порт А 5

1

 

0

 

1

 

 

 

 

 

 

 

 

Соседние файлы в папке Электронные и микропроцессорные устройства