реферат бесплатно, курсовые работы
 

Автоматизація процессу сушки деревини

Позначення: I = вхід, О = вихід, I/O = вхід/вихід, Р = живлення, - = не використовується, TTL = вхідний буфер ТТЛ, ST = вхід із тригером Шмідта.

EEPROM пам'ять даних і FLASH пам'ять програм

Дані з EEPROM пам'яті і FLASH пам'яті програм можуть бути прочитані/перезаписані в нормальному режимі роботи мікроконтролера у всьому діапазоні напруги живлення Vdd. Операції виконуються з одним байтом для EEPROM пам'яті даних і одним словом для FLASH пам'яті програм. Запис виконується за принципом "стирання - запис" для кожного байта або слова. Сформована кодом програми операція стирання не може виконана при включеному захисті запису.

Доступ до пам'яті програм дозволяє виконати обчислення контрольної суми. Дані, записані в пам'яті програм, можуть використовуватися у виді: 14-розрядних чисел, каліброваної інформації, серійних номерів, упакованих 7-розрядних символів ASCII і т.д. У випадку виявлення недійсної команди в пам'яті програм, виконується порожній цикл NOP.

Число циклів стирання/запису для FLASH пам'яті програм значно нижче в порівнянні з EEPROM пам'яттю даних, тому EEPROM пам'ять даних повинна використовуватися для збереження часто змінюваних даних. Час запису даних керується внутрішнім таймером, він залежить від напруги живлення, температури і має невеликий технологічний "розкид". [8,276]

При записі байта або слова автоматично стирається відповідний осередок, а потім виконується запис. Запис у EEPROM пам'ять програм не впливає на виконання програми, а при записі в FLASH пам'ять програм виконання програми зупиняється на час запису. Не можна звернутися до пам'яті програм під час циклу запису. Протягом операції запису тактовий генератор продовжує працювати, периферійні модулі включені і генерують переривання, що "ставляться в чергу" до завершення циклу запису. Після завершення запису виконується завантажена команда (через конвеєрну обробку) і відбувається перехід по вектору переривань, якщо переривання дозволене й умова переривання відбувалася під час запису.

Доступ до функцій запису/читання EEPROM пам'яті даних і FLASH пам'яті програм виконується через шість регістрів спеціального призначення:

EEDATA;

EEDATH;

EEADR;

EEADRH;

EECON1;

EECON2.

Операції читання/запису EEPROM пам'яті даних не припиняють виконання програми. У регістрі EEADR зберігається адреса осередку EEPROM пам'яті даних. Дані зберігаються/читаються з регістра EEDATA. Старший біт адреси в регістрі EEADR завжди повинний дорівнювати нулеві, тому що не підтримується циклічна адресація (тобто осередок з адресою 0x80 не відображається на 0x00). У PIC16F877 обсяг EEPROM пам'яті даних 256 байт (використовуються усі 8-розрядів регістра EEADR).

Читання FLASH пам'яті програм не впливає на виконання програми, а під час операції запису виконання програми припинене. У спарених регістрах EEADRH:EEADR зберігається 13-розрядна адреса комірки пам'яті програм, до якого необхідно зробити звертання. Спарені регістри EEADRH:EEADR містять 14-розрядні дані для запису або відображають значення з пам'яті програм при читанні.

3.3.2 Особливості мікроконтролерів PIC16F87X

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

Основні переваги:

Вибір тактового генератора

Скидання:

- скидання по включенню живлення (POR);

- таймер включення живлення (PWRT);

- таймер запуску генератора (OSC);

- скидання по зниженню напруги живлення (BOR).

Переривання

Сторожовий таймер (WDT)

Режим енергозбереження (SLEEP)

Захист коду програми

Область пам'яті для ідентифікатора

Внутрішньосхемне програмування по послідовному порту (ICSP)

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

Режим внутріньосхемного налагодження (ICD)

У мікроконтролери PIC16F87X убудований сторожовий таймер WDT, що може бути виключений тільки в бітах конфігурації мікроконтролера. Для підвищення надійності сторожовий таймер WDT має власний RC генератор.

Додаткових два таймери виконують затримку старту роботи мікроконтролера. Перший, таймер запуску генератора (OST), утримує мікроконтролер у стані скидання, поки не стабілізується частота тактового генератора. Другий, таймер включення живлення (PWRT), спрацьовує після включення живлення й утримує мікроконтролер у стані скидання протягом 72мс (типове значення), поки не стабілізується напруга живлення. У більшості додатків ці функції мікроконтролера дозволяють виключити зовнішні схеми скидання.

Режим SLEEP призначений для забезпечення наднизького енергоспоживання. Мікроконтролер може вийти з режиму SLEEP по сигналі зовнішнього скидання, по переповненню сторожового таймера або при виникненні переривань.

Вибір режиму роботи тактового генератора дозволяє використовувати мікроконтролери в різних додатках. Режим тактового генератора RC дозволяє зменшити вартість пристрою, а режим LP знизити енергоспоживання. Біти конфігурації мікроконтролера використовуються для вказівки режиму його роботи. [5,62]

3.3.3 Система команд мікроконтролера

Кожна команда мікроконтролерів PIC16F87X складається з одного 14-розрядного слова, розділеного на код операції (OPCODE), що визначає тип команди й один або трохи операндов, що визначають операцію команди. Команди розділені на наступні групи: байт орієнтовані команди, біт орієнтовані команди, команди керування й операцій з константами.

Для байт орієнтованих команд “f” є покажчиком регістра, а “d” покажчиком адресата результату. Покажчик регістра визначає, який регістр повинний використовуватися в команді. Покажчик адресата визначає, де буде збережений результат. Якщо 'd'=0, результат зберігається в регістрі W. Якщо 'd'=1, результат зберігається в регістрі, що використовується в команді.

У біт орієнтованих командах “b” визначає номер біта задіяного в операції, а “f” - покажчик регістра, що містить цей біт.

У командах керування або операціях з константами 'к' представляє вісім або одинадцять біт константи або значення литералів.

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

Байт орієнтовані команди;

Біт орієнтовані команди;

Команди керування й операцій з константами.

Усі команди виконуються за один машинний цикл, крім команд умови, у яких отриманий щирий результат і інструкцій значення лічильника команд PC. У випадку виконання команди за два машинних цикли, у другому циклі виконується інструкція NOP. Один машинний цикл складається з чотирьох тактів генератора. Для тактового генератора з частотою 4 Мгц усі команди виконуються за 1мкс, якщо умова істина або змінюється лічильник команд PC, команда виконується за 2мкс.

Таблиця 3.10.

Список команд мікроконтролерів PIC16F87X

Мнемоніка команди

Опис

Цикл

14-розрядний код

флаг

Прим.

Біт 13

Біт 0

Байт орієнтовані команди

ADDWF f,d

Складання W і f

1

00 0111

dfff ffff

C,DC,Z

1,2

ANDWF f,d

Побітове 'І' W і f

1

00 0101

dfff ffff

z

1,2

CLRF f

Очистити f

1

00 0001

Ifff ffff

z

2

CLRW

Очистити W

1

00 0001

0xxx xxxx

z

COMF f,d

Інвертувати f

1

00 1001

dfff ffff

z

1,2

DECF f,d

Вирахувати 1 з f

1

00 0011

dfff ffff

z

1,2

DECFSZ f,d

Вирахувати 1 з f і пропустити якщо 0

1(2)

00 1011

dfff ffff

1,2,3

INCF f,d

Додати 1 до f

1

00 1010

dfff ffff

z

1,2

INCFSZ f,d

Додати 1 до f і пропустити

якщо 0

1(2)

00 1111

dfff ffff

1,2,3

IORWF f,d

Побітове 'АБО' W и f

1

00 0100

dfff ffff

z

1,2

MOVF f,d

Переслати f

1

00 1000

dfff ffff

z

1,2

MOVWF f

Переслати W в f

1

00 0000

Ifff ffff

NOP

Нема операції

1

00 0000

0xx0 0000

RLF f,d

Циклічний зсув f вліво через перенос

1

00 1101

dfff ffff

с

1,2

RRF f,d

Циклічний зсув f вправо через перенос

1

00 1100

dfff ffff

с

1,2

SUBWF f,d

Вирахувати W з f

1

00 0010

dfff ffff

C,DC,Z

1,2

SWAPF f,d

Поміняти місцями півбайти в регістрі f

1

00 1110

dfff ffff

1,2

XORWF f,d

Побітове 'виключаюче АБО' W і f

1

00 0110

dfff ffff

z

1,2

Біт0 орієнтовані команди

BCF f,b

Очистити Біт0 b в регистрі f

1

01 00bb

bfff ffff

1,2

BSF f,b

Встановити Біт0 b в регистрі f

1

01 0lbb bfff ffff

1,2

BTFSC f,b

Перевірити Біт0 b в регистрі f, пропустити якщо 0

1(2)

01 l0bb bfff ffff

3

BTFSS f,b

Перевірити Біт0 b в регистрі f, пропустити якщо 1

1(2)

01 llbb bfff ffff

3

Команди керування і операції з константами

ADDLW k

Скласти константу з W

1

11 lllx

kkkk kkkk

C,DC,Z

ANDLW k

Побітне 'І' константи і W

1

11 1001

kkkk kkkk

Z

CALL k

Виклик підпрограми

2

10 Okkk

kkkk kkkk

CLRWDT

Очистити WDT

1

00 0000

0110 0100

-TO.-PD

GOTO k

Безумовний перехід

2

10 Ikkk

kkkk kkkk

IORLW k

Побітне 'АБО' константи і W

1

11 1000

kkkk kkkk

Z

MOVLW k

Переслати константу в W

1

11 00xx

kkkk kkkk

RETFIE

Повернення з підпрограми з дозволом переривань

2

00 0000

0000 1001

RETLW k

Повернення з підпрограми с записом константи в W

2

11 0lxx

kkkk kkkk

RETURN

Поветрення з підпрограми

2

00 0000

0000 1000

SLEEP

Перейти в режим SLEEP

1

00 0000

0110 0011

-TO.-PD

SUBLW k

Вивахувати W з константи

1

11 110x

kkkk kkkk

C,DC,Z

XORLW k

Побітне 'виключаюче АБО' константи W

1

11 1010

kkkk kkkk

Z

Примітка:

При виконанні операції "читання - модифікація - запис" з портом вводу/виводу початкові значення зчитуются з виводів порта, а не з вихідних защібок. Наприклад, якщо в вихідній защібці було записано '1', а на відповідному виході низкий рівень сигналу, то будет записано значение '0'.

При виконанні запису в TMR0 (і d=1) передподільник TMR0 скидаєсться, якщо він підключений до модуля TMRO.

Якщо умова істина або змінюється значення лічильника команд PC, то інструкція виконується за два цикла. В другому циклі виконується команда NOP. [8,184]

3.4 Структура та метрологічні характеристики каналів контролю і регулювання

Система автоматизації має в своєму складі канали вводу/виводу. Всі вихідні канали мають дискретний (логічний) характер і призначені для керування пристроями автоматизації. Канали вводу розрізняються

Таблиця 3.11

Карта сигналів.

N п/п

Назва параметру

Вид сигналу

Одиниця вимірювання

Номінальне значення

Допустиме відхилення

1

Температура в камері, точка 1

Цифровий

0…90

-

2

Температура в камері, точка 2

Цифровий

0…90

-

3

Температура в камері, точка 3

Цифровий

0…90

-

4

Температура в камері, точка 4

Цифровий

0…90

-

5

Керування двигуном центробіжноговентилятора

Дискретний

В

“0” - +0..1

“1” - +2,5..5

-

6

Вологість в камері, точка 1

Аналоговий

%

0…100

-

7

Вологість в камері, точка 2

Аналоговий

%

0…100

-

8

Вентилюванняв сушильній камері

Дискретний

В

“0” - +0..1

“1” - +2,5..5

-

9

Керування циркуля-ційним насосом

Дискретний

В

“0” - +0..1

“1” - +2,5..5

-

10

Керування вентиляторами вентелювання камери

Дискретний

В

“0” - +0..1

“1” - +2,5..5

-

11

Регулюваня температури в камері

Дискретний

В

“0” - +0..1

“1” - +2,5..5

-

12

Вологість дошки в

точці 1

Аналоговий

%

5…100

-

13

Вологість дошки в

точці 2

Аналоговий

%

5…100

-

Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9


ИНТЕРЕСНОЕ



© 2009 Все права защищены.