Материал: Изучение структуры команд микроконтроллера PIC16C84 на примере расчета подпограммы задержки. Новикова Е.И., Родионов О.В

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

113-2018

ИЗУЧЕНИЕ СТРУКТУРЫ КОМАНД МИКРОКОНТРОЛЛЕРА PIC16C84 НА ПРИМЕРЕ РАСЧЕТА ПОДПРОГРАММЫ ЗАДЕРЖКИ

МЕТОДИЧЕСКИЕ УКАЗАНИЯ

к выполнению лабораторной работы № 6 по дисциплине «Электроника и микропроцессорная техника»

для студентов направления 12.03.04 «Биотехнические системы и технологии»

(профиль «Биотехнические и медицинские аппараты и системы») очной формы обучения

Воронеж 2018

Министерство науки и высшего образования Российской Федерации

Федеральное государственное бюджетное образовательное учреждение высшего образования

«Воронежский государственный технический университет»

Кафедра системного анализа и управления в медицинских системах

ИЗУЧЕНИЕ СТРУКТУРЫ КОМАНД МИКРОКОНТРОЛЛЕРА PIC16C84 НА ПРИМЕРЕ РАСЧЕТА ПОДПРОГРАММЫ ЗАДЕРЖКИ

МЕ Т О Д И Ч Е С К И Е У К А З А Н И Я

квыполнению лабораторной работы № 6

по дисциплине «Электроника и микропроцессорная техника» для студентов направления

12.03.04 «Биотехнические системы и технологии» (профиль «Биотехнические и медицинские аппараты и системы»)

очной формы обучения

Воронеж 2018

УДК 621.38(07) ББК 30я7

Составители: канд. техн. наук Е. И. Новикова, д-р техн. наук, проф. О. В. Родионов

Изучение структуры команд микроконтроллера PIC16C84 на примере расчета подпрограммы задержки: методические указания к выполнению лабораторной работы № 6 по дисциплине «Электроника и микропроцессорная техника» для студентов направления 12.03.04 «Биотехнические системы и технологии» (профиль «Биотехнические и медицинские аппараты и системы») очной формы обучения / ФГБОУ ВО «Воронежский государственный технический университет»; сост.: Е. И. Новикова, О. В. Родионов. – Воронеж : Изд-во ВГТУ, 2018. – 19 с.

Методические указания предназначены для подготовки, выполнения и защиты лабораторной работы № 6 по дисциплине «Электроника и микропроцессорная техника».

Предназначены для студентов 3-го курса направления 12.03.04 «Биотехнические системы и технологии».

Ил. 7. Табл. 1. Библиогр.: 1 назв.

УДК 621.38(07)

ББК 30я7

Рецензент – Е. Н. Коровин, д-р техн. наук, проф. кафедры САУМС ВГТУ

Печатается по решению учебно-методического совета Воронежского государственного технического университета

Лабораторная работа № 6 ИЗУЧЕНИЕ СТРУКТУРЫ КОМАНД МИКРОКОНТРОЛЛЕРА

PIC16C84 НА ПРИМЕРЕ РАСЧЕТА ПОДПРОГРАММЫ ЗАДЕРЖКИ

1.ЦЕЛЬ РАБОТЫ

Целью лабораторной работы является изучение структуры команд микроконтроллера PIC16C84 посредством расчета и создания подпрограммы задержки.

После выполнения лабораторной работы студент должен знать структуру и общий формат команд микроконтроллера PIC16C84, уметь реализовывать посредством предложенного алгоритма подпрограмму задержки.

2.ТЕОРЕТИЧЕСКОЕ ВВЕДЕНИЕ

2.1.Архитектура команд микроконтроллера PIC16С84

Все команды микроконтроллеров PIC16C84 – однословные (14разрядные). Это обеспечивается за счет разделения шин доступа к памяти программ и памяти данных. 14-разрядная шина доступа к памяти программ позволяет выполнить выборку 14-разрядной команды за один машинный цикл микроконтроллера.

 

TCY0

TCY1

TCY2

TCY3

TCY4

TCY5

1. MOVLW 55h

 

 

 

 

 

 

 

Выборка 1

Выполн. 1

 

 

 

 

 

2. MOVWF PORTB

 

 

 

 

 

 

 

 

Выборка 2

Выполн. 2

 

 

 

 

3. CALL SUB_1

 

 

 

 

 

 

 

 

 

Выборка 3

Выполн. 3

 

 

 

 

 

 

 

 

4. BSF PORTA,3 (Выполняется NOP)

 

Выборка 4

Удаление

 

5. Инструкция по адресу SUB_1

 

 

 

 

 

 

 

 

 

 

Выбор. SUB_1

Выполн. SUB_1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Выбор. SUB_1+1

 

 

 

 

 

 

 

 

Рис. 1. Выборка и выполнение команд

Во всех микроконтроллерах PIC среднего семейства входной тактовый сигнал внутренней схемой микроконтроллера разделяется на четыре последовательных неперекрывающихся такта Q1, Q2, Q3 и Q4. Совокупность четырех тактов называется машинным циклом.

3

Обработка команды состоит из двух этапов:

1)выборка из памяти;

2)выполнение команды.

Она осуществляется за четыре такта Q1, Q2, Q3 и Q4. Выборка следующей команды и выполнение текущей совмещены по времени. Таким образом, выполнение команды происходит за один машинный цикл. Такой подход называется конвейерной обработкой команд.

Если команда изменяет счетчик команд PC (команды ветвления, например GOTO), то необходимо два машинных цикла для выполнения команды (рис. 1). В такте Q1 цикл выборки начинается с увеличения программного счетчика, а в цикле выполнения выбранная команда защелкивается в регистр команд. В течение тактов Q2, Q3 и Q4 происходит декодирование и выполнение команды. В такте Q3 – считывается память данных (чтение операнда), а запись происходит в такте Q4.

На рис. 1 показаны две стадии конвейерной обработки команд для представленной последовательности. В цикле TCY0 происходит выборка первой команды из памяти программ. В цикле TCY1 первая команда исполняется, а вторая команда выбирается из памяти программ. В течение цикла TCY2 вторая команда исполняется, а третья выбирается из памяти программ. В цикле TCY3 происходит выборка четвертой команды и выполняется команда третья команда (CALL SUB_1). Когда завершается выполнение третьей команды CPU загружает адрес четвертой команды в вершину стека и изменяет счетчик команд PC на адрес SUB_1. Это означает, что команда, загруженная в цикле TCY3, должна быть удалена из конвейера. В течение цикла TCY4 четвертая команда удаляется из конвейера (выполняется пустой цикл – NOP) и происходит выборка команды по адресу SUB_1. В цикле TCY5 выполняется команда пять и выбирается из памяти программ команда с адресом SUB_1+1.

Таким образом, цикл выполнения команды (рис. 2) состоит из четырех тактов Q1–Q4, в каждом из которых производятся различные, заранее определенные действия:

Q1 – выборка определенной команды из памяти программ и

еедекодирование или вынужденный NOP,

Q2 – выборка данных или NOP,

Q3 – выполнение команды и обработка данных,

Q4 – запись данных или NOP.

4

Источник: https://studfile.net/preview/16564723/