| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
МЕНЮ
| Автоматизація процессу сушки деревиниПозначення: 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
Примітка: При виконанні операції "читання - модифікація - запис" з портом вводу/виводу початкові значення зчитуются з виводів порта, а не з вихідних защібок. Наприклад, якщо в вихідній защібці було записано '1', а на відповідному виході низкий рівень сигналу, то будет записано значение '0'. При виконанні запису в TMR0 (і d=1) передподільник TMR0 скидаєсться, якщо він підключений до модуля TMRO. Якщо умова істина або змінюється значення лічильника команд PC, то інструкція виконується за два цикла. В другому циклі виконується команда NOP. [8,184] 3.4 Структура та метрологічні характеристики каналів контролю і регулювання Система автоматизації має в своєму складі канали вводу/виводу. Всі вихідні канали мають дискретний (логічний) характер і призначені для керування пристроями автоматизації. Канали вводу розрізняються Таблиця 3.11 Карта сигналів.
Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9 |
ИНТЕРЕСНОЕ | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|