Студопедия — Лабораторна робота № 12. Мета роботи: Оволодіння технологією програмування мікроконтролерів PIC, придбання навичок роботи в інтегрованому середовищі розробки MPLAB IDE
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

Лабораторна робота № 12. Мета роботи: Оволодіння технологією програмування мікроконтролерів PIC, придбання навичок роботи в інтегрованому середовищі розробки MPLAB IDE






Програмування портів вводу-виводу мікроконтролера PIC.

Мета роботи: Оволодіння технологією програмування мікроконтролерів PIC, придбання навичок роботи в інтегрованому середовищі розробки MPLAB IDE, придбання навичок написання програм для мікроконтролерів.

 

Програмне забезпечення: програмне забезпечення комп'ютерного моделювання електронних схем (програма Proteus (ISIS), MPLAB IDE).

 

 

Основні теоретичні відомості

Основні характеристики мікроконтролерів PIC

Мікроконтролери підгрупи PIC16F8X відносяться до сімейства 8-розрядних КМОН мікроконтролерів групи PIC16CXXX, для яких характерні низька вартість, цілком статична КМОН-технологія і висока продуктивність.

До складу підгрупи входять МК PIC16F83, PIC16CR83, PIC16F84 і PIC16CR84. Основні характеристики МК підгрупи PIC16F8X наведені в табл. 12.1.

Усі мікроконтролери підгрупи PIC16F8X використовують гарвардську архітектуру з RISC-процесором, що володіє наступними основними особливостями:

· використовуються тільки 35 простих команд;

· усі команди виконуються за один цикл (400 нс при частоті 10 Мгц), крім команд переходу, які вимагають 2 цикли;

· робоча частота 0 Гц... 10 Мгц;

· роздільні шини даних (8 біт) і команд (14 біт);

· 512 х 14 або 1024 х 14 пам'ять програм, виконана на ПЗП або електрично перепрограмованій Flash- пам'яті;

· 15 восьмирозрядних регістрів спеціальних функцій (SFR);

· восьмирівневий апаратний стек;

· пряма, непряма і відносна адресація даних і команд;

· 36 або 68 восьмирозрядних регістрів загального призначення (GPR) або ОЗП;

· чотири джерела переривання:

o зовнішній вхід RB0/INT;

o переповнення таймера TMR0;

o зміна сигналів на лініях порту B;

o завершення запису даних у пам'ять EEPROM;

· 64 x 8 електрично перепрограмована EEPROM пам'ять даних з можливістю виконання 1000000 циклів стирання/запису;

· збереження даних у EEPROM протягом як мінімум 40 років.

Табл. 12.1. Основні характеристики МК підгрупи PIC16F8X.
Параметр PIC16F83 PIC16CR83 PIC16F84 PIC16CR84
Максимальна частота, МГц        
Flash-пам'ять програм, слів   - -
ПЗП програм, слів -   -
Пам'ять даних, байт        
Пам'ять даних у РПЗП (EEPROM), байт        
Таймери TMR0 TMR0 TMR0 TMR0
Кількість джерел переривань        
Кількість ліній вводу/виводу        
Діапазон напруг живлення, В 2,0 – 6,0 2,0 – 6,0 2,0 – 6,0 2,0 – 6,0
Кількість виводів і тип корпуса 18 DIP, SOIC 18 DIP, SOIC 18 DIP, SOIC 18 DIP, SOIC

Мікроконтролери підгрупи PIC16F8X мають розвинуті можливості вводу/виводу:

· 13 ліній вводу-виводу з індивідуальним встановленням напрямку обміну;

· високий що втікаючий/витікаючий струми, достатні для керування світлодіодами:

· максимальний струм, що втікає - 25 мА;

· максимальний струм, що витікає - 20 мА;

· 8-бітний таймер/лічильник TMR0 з 8-бітним програмованим попереднім дільником.

Спеціалізовані мікроконтролерні функції включають наступні можливості:

· автоматичне скидання при увімкненні (Power-on-Reset);

· таймер увімкнення при ініціалізації (Power-up Timer);

· таймер запуску генератора (Oscillator Start-up Timer);

· сторожовий (Watchdog) таймер WDT із власним вмонтованим генератором, що забезпечує підвищену надійність;

· EEPROM біт таємності для захисту коду;

· економічний режим SLEEP;

· обирані користувачем біти для встановлення режиму збудження вмонтованого генератора;

· послідовний пристрій програмування Flash/EEPROM пам'яті програм і даних з використанням тільки двох виводів.

КМОН технологія забезпечує МК підгрупи PIC16F8X додаткові переваги:

· статичний принцип роботи;

· широкий діапазон напруг живлення: 2,0...6,0 В;

· низьке енергоспоживання:

· менше 2 мА при 5В та 4Мгц;

· порядку 15 мкА при 2В и 32Кгц;

· менше 1 мкА для SLEEP-режиму при 2В.

Мікроконтролери підгрупи PIC16F8X відрізняються між собою тільки об'ємом ОЗП даних, а також об'ємом і типом пам'яті програм. Наявність у складі підгрупи МК із Flash-пам'яттю програм полегшує створення і налагодження прототипів промислових зразків виробів.

Особливості архітектури

Спрощена структурна схема МК підгрупи PIC16F8X наведена на мал. 12.1.


Мал. 12.1. Структурна схема МК підгрупи PIC16F8X.

Архітектура базується на концепції роздільних шин і областей пам'яті для даних і для команд (гарвардська архітектура). Шина даних і пам'ять даних (ОЗП) - мають ширину 8 біт, а програмна шина і програмна пам'ять (ПЗП) мають ширину 14 біт. Така концепція забезпечує просту, але потужну систему команд, розроблену так, що бітові, байтові і реєстрові операції працюють з високою швидкістю і з перекриттям за часом вибірок команд і циклів виконання. 14-бітова ширина програмної пам'яті забезпечує вибірку 14-бітової команди в один цикл. Двоступінчастий конвеєр забезпечує одночасну вибірку і виконання команди. Усі команди виконуються за один цикл, крім команд переходів.

Мікроконтролери PIC16F83 і PIC16CR83 адресують 512х14 пам'яті програм, а PIC16F84 і PIC16CR84 - 1Кх14 пам'яті програм. Уся пам'ять програм є внутрішньою.

Мікроконтролер може прямо або побічно звертатися до регістрів або пам'яті даних. Усі регістри спеціальних функцій, включаючи лічильник команд, відображаються на пам'ять даних. Ортогональна (симетрична) система команд дозволяє виконувати будь-яку команду над будь-яким регістром з використанням довільного методу адресації. Ортогональна архітектура і відсутність спеціальних винятків робить програмування МК групи PIC16F8X простим і ефективним.

 

 

Призначення виводів МК підгрупи PIC16F8X наведене в табл. 15.2.

Табл. 15.2. Призначення виводів МК підгрупи PIC16F8X.
Позначення Тип Буфер Опис
OSC1/CLKIN I ТШ/КМОН3) Вхід кристала генератора, RC-ланки або вхід зовнішнього тактового сигналу
OSC2/CLKOUT O Вихід кристала генератора. У RC-режимі - вихід 1/4 частоти OSC1
/MCLR I/P ТШ Сигнал ініціалізації/вхід програмуючої напруги. Ініціалізація низьким рівнем.
RA0 RA1 RA2 RA3 RA4 /T0CKI I/O I/O I/O I/O I/O ТТЛ ТТЛ ТТЛ ТТЛ ТШ PORTA - двонапрямлений порт вводу/виводу RA4/T0CKI може бути обраний як тактовий вхід таймера/лічильника TMR0. Вихід з відкритим стоком.
RB0/INT RB1 RB2 RB3 RB4 RB5 RB6 RB7 I/O I/O I/O I/O I/O I/O I/O I/O ТТЛ/ТШ1) ТТЛ ТТЛ ТТЛ ТТЛ ТТЛ ТТЛ/ТШ 2) ТТЛ/ТШ 2) PORTB - двонапрямлений порт вводу/виводу. Може бути запрограмований у режимі внутрішніх активних навантажень на лінію живлення по усіх виводах. Вивід RB0/INT може бути обраний як зовнішній вхід переривання. Виводи RB4...RB7 можуть бути програмно надбудовані як входи переривання за зміною стану на кожнім із входів. При програмуванні МК RB6 використовується як тактовий, а RB7 як вхід/вихід даних.
Vdd P Позитивна напруга живлення
Vss P - Загальний провід (земля)
У таблиці використані наступні позначення: I - вхід; O - вихід; I/O - вхід/вихід; P - живлення; - - не використовується; ТТЛ - ТТЛ вхід; ТШ - вхід тригера Шмідта.

Примітки:
1) Цей буфер має вхід тригера Шмідта, коли конфігурується як вхід зовнішнього переривання.
2) Цей буфер має вхід трігера Шмідта, коли використовується в режимі послідовного програмування.
3) Цей буфер має вхід тригера Шмідта, коли конфігурується в режимі RC-генератора і КМОН-вхід в інших випадках.

Мікроконтролер містить 8-розрядний АЛП і робочий регістр W. АЛП є арифметичним модулем загального призначення і виконує арифметичні і логічні функції над умістом робочого регістра і кожного з регістрів контролера. АЛП може виконувати операції додавання, віднімання, зсуву і логічні операції. Якщо не зазначене інше, то арифметичні операції виконуються в додатковому двійковому коді.

У залежності від результату операції, АЛП може змінювати значення бітів регістра STATUS: C (Carry), DC (Digit carry) і Z (Zero).

Порт вводу-виводу мікроконтролера складається з двох регістрів: керуючого регістра TRIS, і регістра PORT. Керуючий регістр TRIS визначає напрям надходження інформації. Інформація може надходити в контролер, або виводитися з контролера. Якщо регістр TRIS налаштований на вихід, то запис інформації в регістр порту призводить до появи цієї інформації на ніжках мікросхеми. Більшість портів мікроконтролера восьмирозрядних. Розрядність порту вводу-виводу визначається кількістю доступних біт в регістрах PORT і TRIS. Один біт регістра TRIS управляє напрямком роботи одного біта регістра PORT. Так, наприклад, для настройки всіх розрядів порту PORTD на вихід, до реєстру TRISD повинно бути занесено значення «всі вісім біт - нулі». Якщо планується використовувати на вихід тільки один розряд (біт) порту, то достатньо встановити тільки один нуль в регістрі TRIS. Наприклад, якщо скинути третій біт регістра TRISD (TRISD, 3 = 0), то третій біт порту PORTD (PORTD, 3) буде працювати на виведення інформації і передавати нуль або одиницю з третього біта PORTD на ніжку корпусу мікросхеми.

Пам'ять даних мікроконтролера розбита на банки. Банки - це набори елементів пам'яті в єдиному адресному просторі. Розмір цього простору визначається полем адреси команд мікроконтролера. У нашому випадку поле адреси команди містить 7 біт, значить можна адресувати 128 (27) осередків. Адресний простір одного банку кратно числу 07Fh (числу 127 в десятковій системі числення). Ещ ѐ є два біта <RP1:RP0> в регістрі STATUS. Це дозволяє звертатися до чотирьох ѐ м банкам пам'яті по 128 осередків у кожному банку, тобто в кожному банку є 128 осередків пам'яті по 8 біт (8 біт = один байт). Функція бітів RP0 і RP1, які розташовані в регістрі STATUS, полягає в підключенні того чи іншого банку до мікроконтролера. Мікроконтролер може адресувати одночасно тільки один з банків пам'яті даних. Банк пам'яті даних, який в даний момент може адресувати ядро ​​мікроконтролера, називають активним. Регістри TRIS і PORT знаходяться в різних банках пам'яті даних. Після включення мікроконтролера активним стає нульовою банк пам'яті даних або, іншими словами, нульовий банк пам'яті даних підключається до ядра мікроконтролера. Регістр PORTD знаходиться в нульовому банку пам'яті даних, а регістр TRISD в першому. Тому необхідно встановити біт RP0 в регістрі STATUS для роботи з TRISD. Потім потрібно скинути RP0 для переходу в нульовий банк, щоб працювати з регістром PORTD.







Дата добавления: 2015-10-15; просмотров: 720. Нарушение авторских прав; Мы поможем в написании вашей работы!



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

Функция спроса населения на данный товар Функция спроса населения на данный товар: Qd=7-Р. Функция предложения: Qs= -5+2Р,где...

Аальтернативная стоимость. Кривая производственных возможностей В экономике Буридании есть 100 ед. труда с производительностью 4 м ткани или 2 кг мяса...

Вычисление основной дактилоскопической формулы Вычислением основной дактоформулы обычно занимается следователь. Для этого все десять пальцев разбиваются на пять пар...

Способы тактических действий при проведении специальных операций Специальные операции проводятся с применением следующих основных тактических способов действий: охрана...

Искусство подбора персонала. Как оценить человека за час Искусство подбора персонала. Как оценить человека за час...

Этапы творческого процесса в изобразительной деятельности По мнению многих авторов, возникновение творческого начала в детской художественной практике носит такой же поэтапный характер, как и процесс творчества у мастеров искусства...

Типовые ситуационные задачи. Задача 1.У больного А., 20 лет, с детства отмечается повышенное АД, уровень которого в настоящее время составляет 180-200/110-120 мм рт Задача 1.У больного А., 20 лет, с детства отмечается повышенное АД, уровень которого в настоящее время составляет 180-200/110-120 мм рт. ст. Влияние психоэмоциональных факторов отсутствует. Колебаний АД практически нет. Головной боли нет. Нормализовать...

Эндоскопическая диагностика язвенной болезни желудка, гастрита, опухоли Хронический гастрит - понятие клинико-анатомическое, характеризующееся определенными патоморфологическими изменениями слизистой оболочки желудка - неспецифическим воспалительным процессом...

Признаки классификации безопасности Можно выделить следующие признаки классификации безопасности. 1. По признаку масштабности принято различать следующие относительно самостоятельные геополитические уровни и виды безопасности. 1.1. Международная безопасность (глобальная и...

Studopedia.info - Студопедия - 2014-2024 год . (0.012 сек.) русская версия | украинская версия