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

metod1-ukr

.pdf
Скачиваний:
2
Добавлен:
15.02.2015
Размер:
237.14 Кб
Скачать

ння плата одержує від адаптера змінного струму (на схемі не показаний). Живлення мікроконтролера здійснюється через джампер ХТ. Можливо здійснювати живлення постійно (режим демонстраційної плати) або тільки при програмуванні (режим програматора). Схема не містить ланцюгів скидання і зовнішніх елементів тактового генератора, тому для нормальної роботи мікроконтролера при програмуванні слід вибрати внутрішній RC генератор і використовувати внутрішнє скидання. Рядок конфігурації, що рекомендується, має вигляд

__CONFIG _CP_OFF & _WDT_OFF & _BODEN_ON & _PWRTE_ON & _INTRC_OSC_NOCLKOUT & _MCLRE_OFF & _LVP_OFF

При такій настройці мікроконтролер працює автономно навіть у тому випадку, коли плата знаходиться в режимі програматора. Для нормального входу в режим програмування необхідно на 6-й і 7-й розряди порту В подать низький рівень при наростанні сигналу на вході MCLR. Для надійної роботи простіше взагалі ці виводи зробити входами і не використовувати в програмах. Рекомендується наступна послідовність ініціалізації:

ORG

0x000

; processor reset vector

bsf

STATUS, RP0

movlw

b'11000000'

 

movwf

TRISB

 

bcf

STATUS, RP0

3. Завдання до лабораторних робіт

Лабораторна робота №1

Вивчення середовища програмування MPLAB і арифметичних команд PIC мікроконтролерів середньої серії

Мета роботи: вивчення порядку створення проекту, введення програми, асемблювання, відладки програми за допомогою програмного симулятора

Зміст домашньої підготовки

Вивчити структуру, технічні характеристики, особливості архітектури PIC контролерів середньої серії.

Вивчити групу байт-орієнтованих команд PIC контролерів середньої

серії.

По керівництву до пакету MPLAB вивчити порядок створення і роботи з проектами: створення і редагування проекту, введення програми, асемблювання.

Вивчити режими програмної симуляції: покроковий, безперервний, із зупинками в контрольних точках, режим анімації.

Вивчити можливості в роботі з вікнами – пам'ять програм, пам'ять даних, регістри спеціальних функцій, вікно секундоміра, вікно модифікації, вікно Watch.

Вивчити призначення директив ORG, END, LIST, INCLUDE, EQU. Відповісти на контрольні питання.

Ознайомитися з приведеною нижче програмою додавання і віднімання двох чисел з константою. Розрахувати час виконання основного циклу програми при частоті генератора 4 Мгц.

Порядок виконання роботи

 

Включити комп'ютер і запустити програму MPLAB.

 

Ввести нижче приведену програму, створити проект, підключити файл з

програмою до проекту.

 

 

 

list

p=16f628

 

 

#include <p16f628.inc>

 

MIN

EQU

20

 

 

MAX

EQU

21

 

 

 

ORG

0x000

 

 

 

clrf

MIN

 

;очищення регістрів

 

clrf

MAX

 

 

 

movlw

2

;пересилання константи в робочий регістр

Loop

 

 

 

 

 

addwf

MAX, F

;збільшення регістра

 

subwf

MIN, F

;зменшення регістра

 

goto

Loop

 

;безумовний перехід до початку циклу

 

END

 

 

 

Провести асемблювання, виправити синтаксичні помилки.

Відкрити вікна регістрів спеціальних функцій, секундоміра, модифікації, вікно Watch. У вікні Watch створити рядки MIN і MAX.

Виконати програму в покроковому режимі, в безперервному, із зупинкою в контрольних точках, в режимі анімації. При цьому стежити за зміною вмісту регістрів STATUS, MIN і MAX.

За допомогою вікна секундоміра заміряти час виконання основного циклу програми, порівняти з розрахованим значенням.

Використовуючи вікно модифікації змінити вміст регістрів, продовжити виконання програми в покроковому режимі.

Зміст роботи

Звіт по лабораторній роботі повинен містити титульний лист, протокол роботи, що відображає послідовність дій і одержані результати, порівняння розрахованого і зміряного часу виконання основного циклу програми, висновки по роботі.

Контрольні питання

Що таке мікроконтролер?

У чому полягають особливості архітектури PIC контролерів середньої

серії?

Чим відрізняється гарвардська архітектура від архітектури фон Неймана?

Чи можна в тексті програми застосовувати символьні імена регістрів спеціальних функцій і символьні мітки? Як привласнювати імена регістрам загального призначення?

Чим відрізняються покроковий режим виконання програми від режиму із зупинками в контрольних точках?

Пояснити призначення директив ORG, END, LIST, INCLUDE, EQU.

Лабораторна робота №2

Складання простих програм з лінійним алгоритмом

Мета роботи: одержання навичок самостійного складання програм для PIC контролерів середньої серії, освоєння способів відладки програм при роботі з портами уведення-виведення.

Зміст домашньої підготовки

Вивчити типи команд PIC контролерів середньої серії.

Вивчити способи адресації, реалізовані в PIC контролерах середньої

серії.

Вивчити роботу асинхронних і часових стимулів в середовищі MPLAB.

Скласти програму для PIC контролера відповідно до індивідуального завдання.

Порядок виконання роботи

Включити комп'ютер і запустити програму MPLAB.

Ввести програму, створити проект, підключити файл з програмою до проекту.

Провести асемблювання, виправити синтаксичні помилки.

Запустити виконання в режимі анімації, переконатися в працездатності алгоритму. При необхідності відладити програму.

Відкрити вікно асинхронних стимулів. Призначити для кнопок події і необхідні розряди портів.

Виконати програму в покроковому режимі з імітацією сигналів на входах мікроконтролера. При необхідності відладити програму.

Відкрити вікно часових стимулів. Призначити події і часові інтервали для відповідних входів мікроконтролера.

Виконати програму із зупинкою в контрольній точці, переконатися в працездатності.

Зміст роботи

Звіт по лабораторній роботі повинен містити титульний лист, блок-схе- му алгоритму, текст програми, протокол роботи, що відображає послідовність дій і одержані результати, параметри для часових стимулів, висновки по роботі.

Контрольні питання

Скільки команд мають PIC контролери середньої серії?

Які типи команд мають PIC контролери середньої серії?

Які арифметичні команди реалізовані в PIC контролерах середньої

серії?

Які логічні команди реалізовані в PIC контролерах середньої серії? Які способи адресації використовують PIC контролери середньої серії?

Для чого призначені стимули в програмі MPLAB? Чим відрізняються асинхронні і часові стимули? Які обмеження мають стимули?

Індивідуальні завдання

1.Заповнити 5 регістрів, починаючи з 30-го, числами, одержуваними з порту В.

2.Збільшити вміст 5-ти регістрів, починаючи з 30-го, на числа, одержувані з порту В.

3.Зменшити вміст 5-ти регістрів, починаючи з 30-го, на числа, одержувані з порту В.

4.Заповнити 5 регістрів, починаючи з 30-го, числами, одержуваними з порту В і збільшеними на 10.

5.Записати в 30-й регістр, число, подане на порт В; в 31-й регістр – суму нового числа на порту В і числа з 30-го регістра;

в32-й регістр – різниця нового числа на порту В і числа з 30-го регістра .

6.Записати в 35-й регістр суму чисел з регістрів з 30-го по 34-й і числа на порту В.

7.Переписати числа з регістрів з 30-го по 34-й в регістри з 35-го по 39- й, збільшивши їх на числа, одержувані з порту В.

Лабораторна робота №3

Складання програми з циклами і умовними операторами

Мета роботи: вивчення особливостей роботи і застосування умовних команд PIC контроллерів середньої серії і організації циклів.

Зміст домашньої підготовки

Вивчити роботу команд DECFSZ, INCFSZ, BTFSS і BTFSC.

Вивчити роботу портів уведення-виведення при роботі на вхід і вихід, призначення і розташування регістрів PORTA, PORTB, TRISA, TRISB.

Вивчити призначення регістрів FSR і INDF.

Вивчити призначення наступних розрядів регістра STATUS: С, Z, DC. Скласти програму для PIC контролера відповідно до індивідуального

завдання.

Порядок виконання роботи

Включити комп'ютер і запустити програму MPLAB.

Ввести програму, створити проект, підключити файл з програмою до проекту.

Провести асемблювання, виправити синтаксичні помилки.

При необхідності заповнити пам'ять даних елементами масиву, використовуючи вікно модифікації.

Запустити виконання в режимі анімації, переконатися в працездатності алгоритму.

При необхідності відладити програму.

Відкрити вікно асинхронних стимулів. Призначити для кнопок події і необхідні розряди портів.

Виконати програму в покроковому режимі з імітацією сигналів на входах мікроконтролера. При необхідності відладити програму.

Зміст роботи

Звіт по лабораторній роботі повинен містити титульний лист, блок-схе- му алгоритму, текст програми, протокол роботи, що відображає послідовність дій і одержані результати, висновки по роботі.

Контрольні питання

У яких банках знаходяться регістри PORT і TRIS?

Які умовні команди є в PIC контролерах середньої серії? Як організовуються цикли з перевіркою в кінці?

Як настроюються порти уведення-виведення на вхід і вихід?

Як відбувається формування фізичної адреси при непрямій адресації?

Індивідуальні завдання

1.Заданий масив з десяти однобайтних чисел, починаючи з адреси 40. Знайти адресу останнього елементу більшого 15 і вивести цю адресу в порт В при появі низького рівня на 4-му розряді порту А.

2.Заданий масив з десяти однобайтних чисел, починаючи з адреси 40. Знайти адресу останнього елементу меншого 7 і вивести цю адресу в порт В при появі високого рівня на 4-му розряді порту А.

3.Заданий масив з десяти однобайтних чисел, починаючи з адреси 40. Знайти адресу останнього елементу не рівного 0 і вивести цю адресу в порт В при появі низького рівня на 4-му розряді порту А.

4.Заданий масив з десяти однобайтних чисел, починаючи з адреси 40. Знайти адресу останнього елементу рівного 12 і вивести цю адресу в порт В при появі високого рівня на 4-му розряді порту А.

5.Заданий масив з десяти однобайтних чисел, починаючи з адреси 40. Знайти адресу останнього парного елементу і вивести цю адресу в порт В при появі низького рівня на 4-му розряді порту А.

6.Заданий масив з десяти однобайтних чисел, починаючи з адреси 40. При появі високого рівня на 4-му вході порту А перетворити масив в зворотний код.

7.Заданий масив з десяти однобайтних чисел, починаючи з адреси 40. При появі низького рівня на 4-му вході порту А збільшити елементи масиву на 1.

8.Заданий масив з десяти однобайтних чисел, починаючи з адреси 40. При появі високого рівня на 4-му вході порту А зменшити елементи масиву на 1.

9.Заданий масив з десяти однобайтних чисел, починаючи з адреси 40. При появі низького рівня на 4-му вході порту А помножити елементи масиву на 2.

10. Заданий масив з десяти однобайтних чисел, починаючи з адреси 40. При появі високого рівня на 4-му вході порту А розділити елементи масиву на 2.

Лабораторна робота №4

Робота з портами уведення-виведення

Мета роботи: вивчення роботи портів уведення-виведення в реальному мікроконтролері.

Зміст домашньої підготовки

Вивчити схему демонстраційної плати на основі мікроконтролера PIC16F628.

Скласти програму імітатора світлофора для PIC контролера в двох варіантах: перемикання кнопками і з автоматичним перемиканням.

Вивчити основні функції програми IC-Prog.

Вивчити призначення бітів конфігурації і призначення директиви CONFIG.

Порядок виконання роботи

Включити комп'ютер і запустити програму MPLAB.

Ввести програму з перемиканням кнопками, створити проект, підключити файл з програмою до проекту.

Провести асемблювання, виправити синтаксичні помилки.

Відкрити вікно асинхронних стимулів. Призначити для кнопок події і необхідні розряди портів.

Виконати програму в режимі анімації з імітацією сигналів на входах мікроконтролера. При необхідності відладити програму.

Запустити програму IC-Prog, завантажити в неї HEX файл, запрограмувати мікроконтролер. Переконатися в працездатності програми.

Ввести автоматичний варіант програми.

Провести асемблювання, виправити синтаксичні помилки.

Виконати програму із зупинками в контрольних точках. При необхідності відладити програму.

Завантажити новий HEX файл в програму IC-Prog, запрограмувати мікроконтролер. Переконатися в працездатності програми.

Зміст роботи

Звіт по лабораторній роботі повинен містити титульний лист, блок-схе- ми алгоритмів, тексти програм, протокол роботи, що відображає послідовність дій і одержані результати, висновки по роботі.

Контрольні питання

До яких розрядів і яких портів уведення-виведення підключені світлодіоди в демонстраційній платі?

До яких розрядів і яких портів уведення-виведення підключені кнопки в демонстраційній платі?

Пояснити призначення бітів конфігурації.

На якій частоті працює тактовий генератор в мікроконтролері в демонстраційній платі?

У яких режимах може працювати демонстраційна плата?

Лабораторна робота №5

Таймери і переривання

Мета роботи: вивчення роботи таймера 0 і системи переривань.

Зміст домашньої підготовки

Вивчити устрій таймера 0 і основні режими його роботи.

Вивчити призначення переддільника і способи перемикання його між таймером 0 і сторожовим таймером.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]