Тема 3. Версії мікроконтролерів, оснащені ПЗП з ультрафіолетовим стиранням

Сайт: Навчально-інформаційний портал НУБіП України
Курс: Програмне забезпечення вбудованих систем (ІПЗ)
Книга: Тема 3. Версії мікроконтролерів, оснащені ПЗП з ультрафіолетовим стиранням
Надруковано: Гість-користувач
Дата: неділя, 16 листопада 2025, 08:53

Опис

Формування компетенцій

ЗК 3, ФК 2, ФК 7, ФК 10, ФК 12.

Програмування мікроконтролера з УФ-ПЗП. Захист від зовнішнього читання УФ-ПЗП в МК x51. Реакція УФ-ПЗП на світло.

1. Версії мікроконтролерів, оснащені ПЗП з ультрафіолетовим стиранням

Мікросхема 8051 і її вітчизняний аналог 1816ВЕ51 оснащені ма- сочно програмованим внутрішнім ПЗП, що передбачає однократне програмування на заводі-виготовлювачі. Самостійно програмувати такі варіанти мікроконтролерів можна лише за наявності зовнішнього ПЗП.

Версії мікроконтролерів, оснащені ПЗП з ультрафіолетовим стиранням (УФ-ПЗП) можуть бути багато разів перепрограмовані, що значно підвищує зручність використання при розробці нестандартних програм. Від Intel - це версії 8751 (N-МОП) і 87C51 (ДО-МОН). Радянська мікросхема 1816BE751 (аналог 8751) на практиці не зустрічається.

Програмування мікроконтролера з УФ-ПЗП

Процедура програмування мікроконтролера з УФ-ПЗП декілька розрізняється залежно від базової технології його виробництва:

  • n-МОП - при напрузі ипрг на вході EA /Vpp (ніжка 31) від 21 до 25 В; запис кожного байта - одним імпульсом 50- мілісекунди; загальний час програмування - 4 мин.
  •  k-МОН - ипрг = 12,75 В; запис кожного байта - послідовні­стю з 25 100-микросекундных імпульсів; загальний час про­грамування - близько 13 секунд.

Підключення мікроконтролера N-МОП до програматора пока­зано на рисунку 32:

Мікроконтролер повинен працювати на зниженій частоті 4,6 МГц із-за необхідності мультиплексування на внутрішній шині адресної і кодової інформації.

Як видно на рисунку, адреси подаються на виводи P1-P2, а коди команд (завантажувані байти) - на P0. Виводи P2.4-6 і PSEN мають бути заземлені. На P2.7 і RST подається логічна «1». На EA / Vpp підтримується рівень +5 В. В момент завантаження байта EA / Vpp підключається до джерела U = +21 В, при цьому на ALE повинен утримуватися 0 протягом як мінімум 50 мс (потім - знову +5 В). Джерело +21 В має бути добре стабілізоване (зниження ипрг може привести до збою програмування, а перевищення більш, ніж на 1 В - до пошкодження мікросхеми).

Захист від зовнішнього читання УФ-ПЗП в МК x51

Розробниками з Intel для мікроконтролерів з УФ-ПЗП передба­чений так званий біт захисту, що перешкоджає (при 1) доступ на читання до внутрішнього ПЗП ззовні.

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

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

• на P2.6 необхідно подати «1»;

• значення на Р0, Р1 і Р2.0-3 можуть бути довільними.

Очищення біта захисту (штатним чином) здійснюється шляхом повного стирання вмісту УФ-ПЗП.

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

Якщо біт захисту дорівнює 0, вміст УФ-ПЗП може бути прочи­таний з метою перевірки правильності (верифікації) завантаження програми.

Читання УФ-ПЗП може здійснюватися за допомогою програма- тора. Адреса подається як і при записі. На Р2.7 необхідно подавати «0» в якості строб-сигнала читання.

Реакція УФ-ПЗП на світло

Вікно мікроконтролера необхідно закривати непрозорою на­клейкою. Це необхідно для захисту не лише ПЗП, але і інших внутрі­шніх елементів (у тому числі ОЗП), які можуть почати збої внаслідок іонізації кремнію при попаданні світла на кристал або кремнієву підкладку.

Стирання УФ-ПЗП здійснюється джерелом УФ-випромінювача з довжиною хвилі < 400 нм. При потужності 12 мВт/см2 кварцевої лампи і відстані до вікна мікроконтролера 1.2 см достатньо 10-15 хвилин для надійного стирання інформації. Дуже тривале опромінення (> 20 хвилин) може вивести мікросхему з ладу.

У спектрі сонячного і люмінесцентного світла присутнє випро­мінювання з довжиною хвилі < 400 нм. Перебування відкритої мікросхеми на сонячному світлу більше тижня або під люмінесцент­ними лампами більше 3 років може привести до спотворення вмісту УФ-ПЗП.


 

2. Вбудовані системи керування (ВСК)

Обов'язковий для багатьох ВСК компонент – інтерфейс із системою керування більш високого рівня (промисловим контролером або промисловим комп'ютером). Наявність такого інтерфейсу дозволяє вирішувати завдання комплексної автоматизації групою одиниць технологічного устаткування, іншими словами, будувати розподілені системи керування.
´Основне завдання інтерфейсу – на основі уніфікації забезпечити сумісність апаратних і конструктивних засобів, що зумовлюють задану якість автоматичної взаємодії різних функціональних елементів в єдиному процесі обробки інформації в мікропроцесорних системах на етапах збирання, перетворення, зберігання та видачі результатів і керуючих дій.

Залежно від складності завдання, вбудовані системи керування можуть бути:

одно- або багатопроцесорні;
одно- або багаторівневі.



Нижній рівень – багаторівневої СК вирішує завдання безпосереднього керування окремими компонентами устаткування, а верхній рівень – завдання:

´1) загального керування в реальному часі,
´2) зв'язкуз оператором,
´3) зв'язку із системою керування більш високого рівня та ін.

З погляду виробників мікропроцесорної техніки всі завдання,кі розв'язуються вбудованими системами, поділяються на два великих класи:

´1. Керування подіями в реальному часі;
´2. Керування потоками даних.

3. Багаторівнева система керування

Багаторівнева система керування

Підключення комп'ютерів нижнього рівня до системи середнього рівня може здійснюватися:

´через стандартний послідовний або паралельний інтерфейс;
´· шляхом їх приєднання до системної шини як спеціалізованих пристроїв з'єднання з об'єктом керування (модулі керування спеціальними операціями).



Архітектура вбудованих комп’ютерних систем. Схема комп'ютера загального призначення

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


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

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

  1. Якого роду інформація записується в УФ-ПЗП мікроконтроле- ра?
  2. Які параметри програмування УФ-ПЗП мікроконтролера, побу­дованого на основі технології п-МОН?
  3. Які параметри програмування УФ-ПЗП мікроконтролера, побу­дованого на основі технології к-МОН?
  4. Які засоби передбачені в МК з УФ-ПЗП для захисту від читання пам'яті програм ззовні?
  5. Яким чином здійснюється стирання вмісту УФ-ПЗП?

5. Пам’ять та регістри загального призначення ( на прикладі запам'ятовувального пристрою МК х51)

Пам’ять та регістри загального призначення ( на прикладі запам'ятовувального пристрою МК х51)

Для спілкування із зовнішніми запам'ятовувальними пристроями в мікроконтролері є два 16-розрядних регістри:

´PC (Program Counter – програмний лічильник) – використовується тільки для читання команд із ПЗП
´DPTR (Data PoіnTeR – покажчик даних) – для читання даних з ПЗП та ОЗП, а також для запису в останнє.

Початкові осередки оперативної пам'яті (32 байта) використовуються під

однобайтові регістри загального призначення (РЗП): R0, R1, R2,...R7.

Фізичні адреси регістрів загального призначення залежать від вмісту 3-го та 4-го розрядів регістра прапорців PSW (Processor Status Word)


Пам’ять та регістри загального призначення ( на прикладі запам'ятовувального пристрою МК х51)

´Група регістрів загального призначення в певному місці оперативної пам'яті називається банком. Існує 4 банки регістрів загального призначення (з номерами 0-3) в оперативній пам'яті. До якого з них буде відбуватися звернення, залежить від битів (прапорців) RS0 та RS1
Спеціальні функціональні регістри ( на прикладі запам'ятовувального пристрою МК х51)

Спеціальні функціональні регістри (SFR) являють собою комірки, пов'язані з особливими функціями мікроконтролера і його внутрішніх пристроїв.

´Накопичувач (акумулятор) A або ACC (0E0h) – використовується для арифметичних і логічних операцій;
´додатковий регістр В (0Fh) – використовується разом з А в командах множення й ділення;
´слово стану PSW (0D0h) – містить прапорці:
 CY (0D7h) перенесення 7 із (старшого) розряду
 AC (0D6h) перенесення із розряду (середина байта)
 F0 (0D5h) прапорець для використання програмістом
 RS1 (0D4h) старший розряд номера банка
 RS0 (0D3h) молодший розряд номера банка
 OV (0D2h) переповнення результату
 (0D1h) прапорець без імені (може використовуватисяпрограмістом)
 P (0D0h) ознака парної кількості одиниць у коді результату


Структурна схема мікроконтролера 8051


Блоки
´IR – регістр команд, зберігає код виконуваної команди;
´CU – пристрій керування;
´OSC – внутрішній генератор синхросигналів, на основі яких пристрій керування CU формує машинні такти (див. далі);
´RAR – програмно недоступний регістр-покажчик даних;
´RDM – резидентна (внутрішня) пам'ять даних (ОЗП, RAM);
´RPM – резидентна (внутрішня) пам'ять програм (ПЗП, ROM);
´· P0, P1, P2, P3 – паралельні порти вводу-виводу:
´· P0 – 8-бітний двонаправлений порт вводу-виводу інформації: при роботі із зовнішніми ОЗП й ПЗУ по лініях порту в режимі часового мультиплексування видається адреса зовніш-ньої пам'яті, після чого здійснюється передача або прийом даних.
´P1 – 8-бітний квазі-двонаправлений порт вводу-виводу: кожен розряд порту може бути запрограмований як на ввід, так і на вивід інформації, незалежно від стану інших розрядів;
´P2 – 8-бітний квазі-двонаправлений порт, аналогічний Р1; крім того, виводи цього порту використовуються для видачі адресної інформації при звертанні до зовнішньої пам'яті програм або даних (якщо використовується 16-бітова адресація останньої). Виводи порту використовуються при програму-ванні мікросхеми 8751 для введення в мікроконтролер старших розрядів адреси;
´РЗ – 8-бітний квазі-двонаправлений порт, аналогічний Р1; крім того, виводи цього порту можуть виконувати ряд альтернативних функцій, які використовуються при роботі таймеів, порту послідовного вводу-висновку, контролера перери-вань, і зовнішньої пам'яті програм і даних;
´T1, T2 – програмно недоступні регістри для тимчасового зберігання операндов;,
´DCU – схема десяткової корекції;

Лінії та сигнали:

´PSEN – дозвіл зовнішньої пам'яті програм; видається тільки при звертанні до зовнішнього ПЗП;
´ALE – строб адреси зовнішньої пам'яті; на виході ALE звичайно формується безперервна послідовність прямокутних імпульсів із частотою резонатора Чрез / 6 і шпаруватістю
´33 % (тобто, тривалість сигналу «1» удвічі перевищує тривалість «0»)
´PROG – сигнал програмування;
´EA – сигнал блокування роботи із внутрішньою пам'яттю (рівень 0 на цьому вході змушує мікроконтролер виконувати програму тільки із зовнішнього ПЗП, ігноруючи внутрішнє);
´VPP - напруга програмування;
´RST - вхід загального скидання мікроконтролера;
´VPD - вивід резервного живлення від зовнішнього джерела;
´XTAL1, XTAL2 - виводи для підключення кварцового резонатора до внутрішнього генератора синхросигналу;

Для роботи мікроконтролера із зовнішніми об'єктами в реальному масштабі часу в його складі є система переривань. Для роботи із системою переривань використовуються:

´регістр дозволу переривань ІE (Іnterrupt Enable) (0A8h);
´регістр пріоритетів переривань ІP (Іnterrupt Prіorіty) (0B8h).



6. Відладчики роботи МК

Відладчики роботи МК

Відладчики можна розділити на:

´симулятори
´емулятори.

Симулятор - сукупність програмних засобів, що моделюють роботу інших програм або їх окремих частин.
Емулятори - сукупність програмних і апаратних засобів, що дозволяють відтворити роботу інших програм або їх окремих частин.

7. Цикл виконання команди ( на прикладі запам'ятовувального пристрою МК х51)

Цикл виконання команди ( на прикладі запам'ятовувального пристрою МК х51)

Цикл виконання команди складається з таких кроків:

1. Читання коду з ПЗП за адресою з PC (з наступним інкрементуванням PC);

2. Читання операндів команди;

3. Виконання команди;

4. Збереження результатів (після цього PC вказує на наступну команду).

Цикл виконання різних команд займає від 1 до 10 тактів. Період

такту дорівнює 12 коливанням кварцового резонатора (при Чрез = 12

МГц період такту дорівнює 1 мкс).


´Цикл команди — інтервал часу, необхідний для вибірки команди з пам'яті та її виконання. Він складається з одного або кількох машинних циклів, їх кількість, як правило, дорівнює кількості звернень МП до пам'яті чи одного з ПВВ (пристрій вводу/виводу ).
´Цикл команди поділяється на дві фази: фаза вибірки і фаза виконання.
´Фаза вибірки — пристрій задає початок чергового циклу, надсилає сигнал, за яким число, що знаходиться в лічильнику команд, передається в буферний регістр адреси.
´Фаза виконання — пристрій керування генерує послідовність сигналів, необхідну для виконання команди. За цей час дані лічильника збільшуються на одиницю. Цим формується адреса наступної виконуваної команди.
´Зчитування чи запис слова відбувається протягом певного інтервалу часу, який називають часом доступу. Інтервал часу, що витрачається на звернення до пам'яті та одержання від неї сигналу готовності, називається циклом очікування готовності.
´Машинний цикл — частина команди (інколи повністю команда). З початком кожного машинного циклу на виводі синхронізації МП виникає сигнал синхронізації. Він передається в запам'ятовуючий пристрій (ЗП) чи пристрій вводу/виводу (ПВВ) і «сповіщає» про початок нового машинного циклу, в результаті чого досягається узгодження в часі дії цих пристроїв з роботою МП.

МП  розроблена  безліч  способів  звертання  до  пам'яті,  називаних режимами адресації

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



*код операції (КОп)

Усі способи адресації пам'яті можна поділити на:

´1 Неявну адресацію: адреса джерела й приймача зазначені в команді неявно (вони убудовані в команді MOV A, B).
´2  Безпосередню  адресацію:  адреса  команди  є  безпосередньою частиною  самої  команди,  за  кодом  операції  записані  дані,  які  надає програміст при запису команди.
´3 Пряму адресацію: 1-й байт – код операції, 2-й байт – адреса, звідки беруться дані, 3-й байт – куди записується результат.
´4  Регістрову  адресацію:  схожа  на  неявну,  де  адреси  регістрів  є частиною команди.
´5 Непряму адресацію: у комірці, адреса якої визначається як частина команди,  визначається  адреса  операнда,  комірка  може  бути  регістром, отже, регістр непрямої адресації або комірка пам'яті.
´6 Базову адресацію: адреса утвориться в результаті додавання вмісту комірки  пам'яті  і  регістра  з  певним  числом,  використається  з  непрямою адресацією, застосовна до масивів або для переміщення програми в пам'яті.
´7  Індексну  адресацію:  декремент  адреси,  коли  МП  звертається  до суміжних або рівно розподілених адрес, досягається шляхом послідовного зменшення  адреси  або  шляхом  додатка  до  фіксованої  адреси  числа,  на якому  відбувається  інкремент  або  декремент;  індексування  в  основному застосовується для послідовної адресації елементів масиву.
´8 Автоінкремент: автоматичне збільшення або зменшення адреси на 1.
´9  Адресацію  базової  сторінки:  різновид  непрямої  адресації,  коли зазначена адреса є адресою комірки в сторінці, а вміст комірки являє собою потрібну адресу.
´10  Відносну  адресацію:  адреса  дорівнює  сумі  числа  й  поточного вмісту програмного лічильника, число – адреса операнда щодо команди й звичайно є частиною команди, але може втримуватися в робочому регістрі.

´Практично будь-яка розвита мікропроцесорна система (у тому числі і комп'ютер) підтримує три основних режими обміну магістраллю:
•програмний обмін інформацією;
•обмін з використанням переривань (Interrupts);
•обмін з використанням прямого доступу до пам'яті (ПДП, DMA - Direct Memory Access).

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

´Обмін з використанням переривань використовується тоді, коли необхідна реакція мікропроцесорної системи на якусь зовнішню подію, на прихід зовнішнього сигналу. У випадку комп'ютера зовнішньою подією може бути, наприклад, натискання на клавіші клавіатури або прихід локальною мережею пакета даних.

•Прямий доступ до пам'яті (ПДП, DMA) - це режим, що принципово відрізняється від двох раніше розглянутих режимів тим, що обмін системною шиною йде без участі процесора.

Операція ПДП зводиться до пересилання інформації з пристрою вводу/виводу в пам'ять або з пам'яті в пристрій вводу/виводу. Коли пересилання інформації буде завершено, процесор знову повертається до перерваної програми, продовжуючи її з того місця, де його перервали






Доступність

Шрифти Шрифти

Розмір шрифта Розмір шрифта

1

Колір тексту Колір тексту

Колір тла Колір тла

Кернінг шрифтів Кернінг шрифтів

Видимість картинок Видимість картинок

Інтервал між літерами Інтервал між літерами

0

Висота рядка Висота рядка

1.2

Виділити посилання Виділити посилання