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

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

ным цветом. Далее запустите программу на исполнение, нажав клавишу F9. Остановка произойдет на команде Return. Нажмите F7 и выйдите из подпрограммы Delay05.

Если опять нажать F7, то произойдет повторный вход в подпро-

грамму Delay05.

Рис. 5. Окно Stopwatch

Проверьте, действительно ли подпрограмма Delay05 выполняется в течение 0,5 с (или 4096 машинных цикла). Для этого необходимо убрать точку останова, щелкнув по ней правой кнопкой мыши и выбрав в меню Break Point(s). Затем откройте окно Stopwatch (рис. 5). Убедитесь, что тактовая частота контроллера установлена равной 32768 Гц. В противном случае вызовите окно настройки параметров эмуляции Debugger ► Settings и задайте ее там. В открывшемся диалоговом окне Simulator Settings особый интерес представляют вклад-

ки Osc/Trace и Animation/Realtime Updates.

Нa вкладке Osc/Trace можно выбрать частоту тактового осциллятора (рис. 6), на вкладке Animation/Realtime Updates задать период анимационного прохода (выполнение программы с обновлением окон отладчика через строго определенные промежутки времени) и период обновления окон при выполнении в реальном режиме времени (рис. 7). Если требуется, чтобы обновления окон отладчика происходили таким образом, что отражали бы информацию реалистично, то значения этих периодов не следует выбирать большими.

15

Рис. 6. Параметры эмуляции

Рис. 7. Параметры эмуляции

Если не установить флажок Enable Realtime watch updates, то при запуске программы в режиме реального времени окна отладчика вообще не будут обновляться. Кроме того, при эмуляции программ в среде MPLAB следует учитывать, что задержки при работе с реальным микроконтроллером намного меньше.

В окне Stopwatch можно будет наблюдать время и число машинных циклов (см. рис. 5). Нажмите кнопку Zero. В окошках Cycles и

16

Time появятся нули. Далее щелкните по тексту программы и запустите подпрограмму Delay05 на исполнение, нажав F8. Как только подпрограмма будет выполнена, эмулятор остановится, а в окне Stopwatch можно будет увидеть время 500.00 ms и число циклов – 4096.

Измените частоту тактового генератора согласно варианту задания, приведенного в таблице.

Варианты параметров для расчета констант

Номер

Частота тактового генератора,

Величина задержки, мс

варианта

кГц

 

1

32,768

400

2

1000

10

3

4000

2,5

4

65,536

300

5

2000

3

6

4000

5

7

32,768

700

8

65,536

480

9

36,150

600

10

2500

50

11

5500

650

12

120,550

250

13

1200

800

14

12268

50

15

6000

1000

16

3250

450

17

6545

370

18

48000

3000

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

17

КОНТРОЛЬНЫЕ ВОПРОСЫ

1.Что такое машинный цикл?

2.На какие этапы можно разделить процесс обработки команд микроконтроллером PIC16С84?

3.В чем заключается принцип конвейерной обработки команд?

4.Для чего используется директива #include?

5.Какую функцию выполняют регистры общего назначения CounterLo и CounterHi, почему недостаточно одного регистра?

6.Какие действия осуществляет подпрограмма Init?

7.Как рассчитать количество циклов декремента, необходимых для обнуления CounterLo?

8.Почему последующие декременты регистра CounterHi будут выполняться за (256 · 3 – 1 + 3)(DELAYHI-1) – 1 циклов?

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

1. Новикова Е. И. Основы электроники и микропроцессорной техники : учеб. пособие / Е. И. Новикова, О. В. Родионов. – Воронеж : ФГБОУ ВПО «Воронежский государственный технический универ-

ситет», 2012. – 178 с.

18

 

ОГЛАВЛЕНИЕ

 

Лабораторная работа № 6. Изучение структуры команд микроконтрол-

лера PIC16C84 на примере расчета подпрограммы задержки

................... 3

1.

Цель работы.................................................................................................

3

2.

Теоретическое введение.............................................................................

3

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

3

2.2. Создание подпрограммы задержки .......................................................

5

2.2.1. Тестовый пример ..................................................................................

5

2.2.2. Алгоритм расчета констант подпрограммы задержки ...................

11

3.

Лабораторные задания и методические указания по их выполнению 12

4.

Задание.......................................................................................................

12

Контрольные вопросы..................................................................................

18

Библиографический список.........................................................................

18

19

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