69381

Особливості архітектури типового мікроконтролера родини МК-51

Лекция

Коммуникация, связь, радиоэлектроника и цифровые приборы

Структура типового МК (мікроконтролера) родини МК-51 (рисунок 1) містить: арифметико-логічний пристрій (АЛП); регістри тимчасового збереження операндів (програмно недоступні, на структурі МК позначені Т1, Т2); один з основних регістрів – акумулятор, на структурі МК позначений А...

Украинкский

2014-10-04

2.36 MB

10 чел.

РОЗДІЛ 1 ОСОБЛИВОСТІ АРХІТЕКТУРИ ТИПОВОГО МІКРОКОНТРОЛЕРА РОДИНИ МК-51

Тема 1.1 Склад та основні характеристики мікроконтролерів родини МК-51

Тема 1.2 Склад, призначення окремих вузлів та робота типового мікроконтролера МК-51 за структурною схемою

леКЦІЯ 1 Особливості архітектури типового мікроконтролера родини МК-51

1 Загальна характеристика мікроконтролерів родини МК-51

  1.  Структура типового мікроконтролера родини МК-51

Структура типового МК (мікроконтролера) родини МК-51 (рисунок 1) містить:

  •  арифметико-логічний пристрій (АЛП);
  •  регістри тимчасового збереження операндів (програмно недоступні, на структурі МК позначені Т1, Т2);
  •  один з основних регістрів – акумулятор, на структурі МК позначений А;
  •  регістр прапорців (ознак) слово-стану програми, на структурі МК позначений як РСП (PSW);
  •  схему десяткової корекції акумулятора після додавання двійково-десяткових кодів (BCD кодів) в упакованому форматі;
  •  лічильник команд – ЛК (програмний лічильник – PC);
  •  регістр-покажчик стеку (SP);
  •  схему керування та синхронізації;
  •  внутрішню 8-ми розрядну шину даних (РШД);
  •  регістр команд – РК (IP) – програмно недоступний.
  •  резидентну пам'ять даних – РПД. Для МК типу АТ89С51 її об'єм становить 128 комірок пам'яті, довжиною 8 біт, тобто 128 байт;
  •  резидентну пам'ять програм – РПП. Для МК типу АТ89С51 об'ємом 4 КБайт (EPROM);
  •  чотири паралельних 8-ми розрядних програмуючих порти введення/виведення (P0, P1, P2, P3);

Рисунок 1 – Структурна схема МК АТ89С51

  •  регістр розширення акумулятору В (використовується при виконанні команд множення і ділення, а також як 8-ми розрядний регістр загального призначення).
  •  послідовний програмований канал введення/виведення (для цього в режимі «альтернативних функцій» використовується дві лінії порту 3: P3.0 і P3.1);
  •  два 16-ти розрядних багаторежимних таймери/лічильники – T/CNT0; T/CNT1, які можуть виконувати функції програмуючих таймерів або лічильників зовнішніх подій. При цьому імпульси, що ідентифікують зовнішні події, надходять через дві лінії порту 3 (P3.4; P3.5), який використовується в режимі «альтернативних функцій»;
  •  16-ти розрядний регістр-покажчик даних – DPTR. Складається з старшого байту - DPH і молодшого - DPL. Може використовуватися як 16ти розрядний або як два незалежних 8-ми розрядних регістри. Може зберігати 16-ти бітову адресу під час звертання до пам'яті програм або зовнішньої пам'яті даних;
  •  внутрішній тактовий генератор (OSC), частота якого задається за допомогою зовнішнього кварцового резонатору;
  •  систему переривань з п'ятьма векторами (адресами підпрограм) і двома рівнями пріоритетів (для АТ89С51).

Два переривання можуть викликатися зовнішніми джерелами і надходять по лініям порту 3 (P3.2, P3.3) в режимі «альтернативних функцій». Інші три переривання є внутрішніми: два від переповнення таймерів/лічильників і одне від завершення передачі або прийому по послідовному каналу;

  •  регістри керування – програмуючі регістри, які керують роботою:
  •  таймерів/лічильників: РРТЛ (TMOD) – регістр режимів таймерів/лічильників; РКСТ (TCON) – регістр керування-статусу таймерів/лічильників;
  •  послідовного каналу: РУПП (SCON) – регістр керування прийомопередавачами; буфер ПЕР (SBUF) – буфер передавача; буфер ПР (SBUF) – буфер приймача. Обидва буфери мають однакове ім'я під час програмного звертання до них – SBUF. Якщо команда записує дані в буфер, то звертання йде до буфера ПЕР, а якщо – читає, то до буфера ПР;
  •  системи переривань: РМП (IE) – регістр масок переривань; РП (IP) – регістр пріоритетів переривань.

Один з регістрів керування – РКП (PCON) – регістр керування потужністю, керує процесом споживання енергії (потужності) від джерела живлення і дозволяє переводити МК в режими: «холостого ходу» і «зниженого споживання енергії». Один з бітів цього регістру – PCON.7 (SMOD) дозволяє програмно змінювати швидкість передачі по послідовному каналу.

  1.  Часові співвідношення у МК-рі. Поняття: такт, командний цикл, машинний цикл. Оцінка часу виконання окремих команд та програм

Командним циклом (КЦ) називається час, необхідний для зчитування команди з пам'яті і її виконання.

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

Рисунок 2 – Приклад часової структури командного циклу

МЦ складається з деякої кількості елементарних дій, що називаються станами (тактами), і виконуються за період сигналу тактування.

Які саме МЦ будуть виконуватися, залежить від конкретної команди, однак, першим МЦ завжди є «Читання КОП».

В МК типу МК-51 наступні часові співвідношення:

  •  1 КЦ = 1, 2 або 4 МЦ (для операцій множення/ділення);
  •  1 МЦ = 6 станів по 2 фази в кожному (12 фаз (тактів)).

Якщо  fт = 12 МГц,

то:  tт = 1/fт = 1/12 мкс;

tМЦ = 2*6*tт = 1 мкс.

Тобто для визначення повного часу виконання команди потрібно знати, яке число тактів міститься в КЦ і чому дорівнює період сигналу тактування, а потім їх перемножити.

  1.  Структура МІКРОКОНТРОЛЕРА AT89C51
  2.  Загальні відомості

МК складається з таких основних функціональних вузлів (рисунок 1): блока керування і синхронізації; блока арифметико-логічного пристрою АЛП (англ. Arifmetic-Logic Unit); резидентної пам'яті даних РПД (англ. Resident Data Memory) об'ємом 128 байт; резидентної пам'яті програм РПП (англ. Resident Program Memory) об'ємом 4 Кбайт; блока переривань (англ. Interrupt System), таймерів (англ. Timer) і послідовного порту (англ. Serial Port); чотирьох паралельних портів введення/виведення (англ. Parallel Port), які програмуються; схеми десяткової корекції вмісту акумулятора (СДКА); внутрішнього генератора тактових імпульсів ГТІ (англ. Oscillator); резидентної шини даних РШД (англ. Resident Data Bus) і групи регістрів:

А – акумулятор;

В – регістр розширення акумулятора;

Т1, Т2 – регістри тимчасового збереження операндів;

РСП (PSW) – регістр стану програми (прапорців);

РК (IR) – регістр команд;

ЛК (PC) – лічильник команд (програмний лічильник);

РПД (DPTR) – регістр-покажчик даних, що складається з 2-х частин: молодшої – DPL і старшої – DPH;

РПС (SP) – регістр-покажчик стека;

РА (RAR) – регістр адреси;

РРТЛ (TMOD) – регістр режимів таймерів/лічильників;

РКСТ (TCON) – регістр керування-статусу таймерів/лічильників;

РКПП (SCON) – регістр керування приймачем-передавачем послідовного порту;

SBUF (буфер ПРМ і буфер ПД) – буфери приймача і передавача послідовного порту;

РМП (IЕ) – регістр масок переривань;

РП (IP) – регістр пріоритетів переривань;

РКП (PCON) – регістр керування потужністю споживання енергії від джерела живлення.

  1.  Блок керування та синхронізації мікроконтролера

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

До складу блока керування входять: пристрій формування часових інтервалів, логіка введення/виведення, регістр команд, дешифратор команд, ПЛМ і логіка керування ЕОМ.

Пристрій формування часових інтервалів призначений для формування і видачі внутрішніх синхросигналів станів, фаз і циклів. Кількість машинних циклів (англ. machine cycle) визначає тривалість виконання команд. Практично всі команди МК виконуються за один або два машинних цикли, крім команд множення MUL А, В і ділення DIV А, B, тривалість виконання яких складає чотири машинних цикли. Машинний цикл має фіксовану тривалість і містить шість станів (англ. state) S1-S6, кожен з яких складається з двох часових інтервалів, визначених фазами (англ. phase) Р1 і Р2.

Тривалість фази дорівнює періоду прямування зовнішнього сигналу BQ, що є первинним сигналом синхронізації МК. Сигнал BQ формується або вмонтованим тактовим генератором МК (при підключенні до її виводів 18 (BQ2) і 19 (BQ1) кварцового резонатора або LC-ланцюжка), або зовнішнім джерелом тактових сигналів.

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

Рисунок 3 – Схема підключення кварцового резонатора

Рисунок 4 ілюструє формування машинних циклів в МК. Всі машинні цикли однакові, складаються з 12 періодів сигналу BQ, починаються фазою S1 P1 і закінчуються фазою S6 P2.

Двічі за один машинний цикл формується сигнал дозволу фіксації адреси ALE (англ. Address Latch Enable), що видається на однойменний вивід. Якщо, наприклад, зовнішня частота fBQ = 12 МГц, то тривалість машинного циклу ТМЦ = 1 мкс.

Рисунок 4 – Діаграма формування машинних циклів МК

В регістр команд (РК) пересилається з пам'яті програм код операції чергової команди, що виконується. Дешифратор команд декодує код операції та ідентифікує тип команди, що підлягає виконанню.

Після цього з програмованої логічної матриці (ПЛМ) викликається послідовність керуючих сигналів для виконання команди.

  1.  Блок арифметико-логічного пристрою

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

Блок АЛП складається з регістрів тимчасового збереження операндів Т1, Т2, ПЗП констант, суматора, додаткового регістра (регістра B), акумулятора, регістра стану програми.

Регістри тимчасового збереження операндів Т1, Т2 – 8-розрядні регістри, призначені для прийому і збереження операндів на час виконання операцій над ними. Програмно не доступні.

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

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

Регістр B – 8-розрядний регістр, який використовується під час операцій множення і ділення. Для інших інструкцій він може розглядатися як додатковий надоперативний регістр.

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

Регістр стану програми (PSW) призначений для збереження інформації про стан АЛП при виконанні програми. Позначення розрядів регістра PSW і призначення його розрядів наведені відповідно в таблицях 1 і 2.

Таблиця 1 – Позначення розрядів регістра PSW

Біти

7

6

5

4

3

2

1

0

Позначення

CY

AC

F0

RS1

RS0

ОV

-

Р

Таблиця 2 – Призначення окремих розрядів регістра PSW

Біти

Найменув.

Призначення бітів

Доступ до біта

7

CY

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

апаратно або програмно

6

AC

Прапорець додаткового перенесення. Апаратно встановлюється/скидається під час виконання інструкцій додавання або віднімання для вказання перенесення або позики в біті 3 при утворенні молодшої тетради результату (D0-D3)

апаратно або програмно

5

F0

Прапорець 0. Прапорець стану, який визначається користувачем

програмно

4

RS1

Покажчик банку робочих регістрів РПД

програмно

3

RS0

Покажчик банку робочих регістрів РПД

програмно

RS1

RS0

Банк 0 з адресами (00Н-07Н)

Банк 1 з адресами (08Н- 0FH)

Банк 2 з адресами (10Н- 17Н)

Банк 3 з адресами (18Н-1FH)

0

0

1

1

0

1

0

1

2

OV

Прапорець переповнення. Апаратно встановлюється/скидається під час виконання арифметичних інструкцій для вказання стану переповнення

апаратно або програмно


Продовження таблиці 2

1

-

Резервний. Містить тригер, доступний за записом ("0" і "1") і читанням, який можна використовувати

0

Р

Біт парності. Апаратно скидається/ встановлюється в кожному циклі інструкцій для вказання парної/непарної кількості розрядів акумулятора, що знаходяться в стані "1"

апаратно або програмно

  1.  Резидентна пам'ять даних

Резидентна пам'ять даних РПД призначена для прийому, збереження і видачі інформації, яка використовується в процесі виконання програми. Пам'ять даних ділиться на резидентну (внутрішню) - РПД, і зовнішню -  ЗПД. До складу вузла, названого на рисунку 5 РПД, входить ОЗП (SRAM) ємністю 128 байт і дешифратор адреси. Керують роботою РПД два регістри: РА (RAR) – регістр адреси; РПС (SP) – покажчик стека.

Регістр адреси ОЗП (РА) призначений для прийому і збереження адреси комірки пам'яті, яка обирається за допомогою дешифратора і може містити як біт, так і байт інформації.

ОЗП являє собою 128 8-розрядних регістрів, призначених для прийому, збереження і видачі різної інформації. 16 із цих регістрів допускають побітову адресацію.

На рисунку 5 наведено розподіл адресного простору РПД і область бітів, що адресуються прямо.

Рисунок 5 – Розподіл адресного простору РПД і область бітів, які адресуються прямо

Покажчик стека являє собою 8-розрядний регістр, призначений для прийому і збереження адреси комірки стека. При виконанні команд LCALL, ACALL вміст покажчика стека збільшується на 2. При виконанні команд RET, RETI вміст покажчика стека зменшується на 2. При виконанні команди PUSH direct вміст покажчика стека збільшується на 1. При виконанні команди POP direct вміст покажчика стека зменшується на 1. Після скидання в покажчику стека встановлюється адреса 07Н, що відповідає початку стека з адресою 08Н.

Більш докладно організація пам'яті даних мікропроцесорних систем, що використовують дану МК, розглянута в окремому розділі.

  1.  Резидентна пам'ять програм

Резидентна пам'ять програм РПП призначена для збереження програм і має окремий від пам'яті даних адресний простір об'ємом до 64 Кбайт, причому, для мікросхеми АТ89С51 частина пам'яті програм з адресами 0000Н-0FFFH розташована на кристалі МК. Пам'ять програм, що розташована на кристалі (РПП), складається з 12-розрядного дешифратора та FLASH-ПЗП ємністю 4Кх8 біт для мікросхеми АТ89С51. Запис програм у ПЗП відбувається під час виготовлення кристалів.

Якщо на вивід МК ВРПП (DEMA) подається напруга живлення UСС (логічна 1), то звернення до зовнішньої пам'яті програм відбувається автоматично при видачі лічильником команд адреси, що перевищує 0FFFH. Якщо адреса знаходиться в межах 0000Н-0FFFH, звернення відбувається до пам'яті програм, розташованої на кристалі (резидентної пам'яті програм).

Якщо на вивід МК ВРПП подається сигнал "лог. 0", то внутрішня пам'ять програм відключається, і, починаючи з адреси 0000Н, всі звернення виконуються до зовнішньої пам'яті програм.

Для формування поточної 16-розрядної адреси пам'яті програм служить лічильник команд (програмний лічильник) – ЛК (РС). 12 молодших розрядів цього регістра використовуються при адресації комірок РПП об'ємом 212 = 4 Кбайт.

Більш докладно організація пам'яті програм мікропроцесорних систем, що використовують дану МК, розглядається в окремому розділі.

  1.  Блок переривань

МК має систему переривань із п'ятьма векторами (адресами підпрограм обробки переривань) і двома рівнями пріоритетів. Джерелами переривань є: два зовнішніх переривання, що надходять через порт 3; два переривання від переповнення таймерів/лічильників Т/СNT0 і T/CNT1 та переривання при завершенні передавання або прийому даних при обміні через послідовний порт.

Для програмування і керування роботою системи переривань використовують два регістри: РМП (IE) – регістр масок переривань і РП (IP) – регістр пріоритетів переривань, а також чотири молодших біти регістра РКСТ (таблиці 3, 4).

Регістр пріоритетів переривань (IP) призначений для встановлення рівня пріоритету переривання для кожного з п'ятьох джерел переривань. Позначення розрядів регістра IP показано в таблиці 3, а їхнє призначення зазначене нижче.

Таблиця 3 – Позначення розрядів регістра IP

Біти

7

6

5

4

3

2

1

0

Позначення

Х

Х

Х

PS

РТ1

РХ1

РТ0

РХ0

РХ0 (IP0) – встановлення рівня пріоритету переривання від зовнішнього джерела .

РТ0 (IP1) – встановлення рівня пріоритету переривання від Т/С0.

РХ1 (IP2) – встановлення рівня пріоритету переривання від зовнішнього джерела .

РТ1 (IP3) – встановлення рівня пріоритету переривання від Т/С1.

PS (IP4) – встановлення рівня пріоритету переривання від послідовного порту.

Х (IP7, IP6, IP5) – резервний розряд.

Наявність у розряді IP сигналу "логічна 1" встановлює для відповідного джерела високий рівень пріоритету, а наявність у розряді IP сигналу "логічна 0" – низький рівень пріоритету. При читанні резервних розрядів відповідні лінії магістралі даних не визначені. Користувач не повинен записувати "1" у резервні розряди, тому що вони зарезервовані для подальшого розширення сімейства МК-51.

Регістр дозволу переривань (IE) призначений для дозволу або заборони переривань від відповідних джерел. Позначення розрядів регістра IE показано в таблиці 4, а їхнє призначення зазначене нижче.

Таблиця 4 – Позначення розрядів регістра IE

Біти

7

6

5

4

3

2

1

0

Позначення

ЕА

X

X

ES

ЕТ1

ЕХ1

ЕТ0

ЕХ0

ЕА (IE7) – керування всіма джерелами переривань одночасно. Якщо ЕА = 0, то переривання заборонені. Якщо ЕА = 1, то переривання можуть бути дозволені індивідуальними дозволами ЕХ0, ЕТ0, ЕХ1, ЕТ1, ES.

Х (IE6, IE5) – резервний розряд.

ES (IE4) – керування перериванням від послідовного порту: ES = 1 – дозвіл, ES = 0 – заборона.

ЕТ1 (IE3) – керування перериванням від Т/С1: ЕТ1 = 1 – дозвіл, ЕТ1 = 0 – заборона.

ЕХ1 (IE2) – керування перериванням від зовнішнього джерела : ЕХ1 = 1 – дозвіл, ЕХ1 = 0 – заборона.

ЕТ0 (IE1) – керування перериванням від Т/С0: ЕТ0 = 1 – дозвіл, ЕТ0 = 0 – заборона.

ЕХ0 (IE0) – керування перериванням від зовнішнього джерела : ЕХ0 = 1 – дозвіл, ЕХ0 = 0 – заборона.

При зчитуванні резервних розрядів відповідні лінії магістралі не визначені. Користувач не повинний записувати сигнал "лог. 1" у резервні розряди, тому що вони зарезервовані для подальшого розширення сімейства МК-51.

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

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

Таблиця 5 – Джерела переривань і адреси підпрограм, що обслуговують їх

Джерело переривання

Вектор переривання

Зовнішнє переривання

0003Н

Таймер/лічильник Т/С0

000ВН

Зовнішнє переривання

0013Н

Таймер/лічильник Т/С1

001ВН

Послідовний порт

0023Н

Більш докладно система переривань описана в окремому розділі.

  1.  Блок таймерів-лічильників

Таймери/лічильники (Т/Л) призначені для лічби зовнішніх подій, для одержання програмно керованих часових затримок і виконання функцій мікроконтролера, які задають часові інтервали.

До складу блоку Т/Л входять:

  •  два 16-розрядних регістри Т/Л0 і Т/Л1;
  •  8-розрядний регістр режимів Т/Л (TMOD);
  •  8-розрядний регістр керування (TCON);
  •  схема інкременту;
  •  схема фіксації , , Т0, Т1;
  •  схема керування прапорцями;
  •  логіка керування Т/Л.

Два 16-розрядних регістри Т/С0 і Т/С1 виконують функцію зберігання вмісту лічби. Кожний із них складається з пари восьмирозрядних регістрів, відповідно ТН0, TL0 і ТН1, TL1. Причому регістри ТН0, ТН1 – старші, а регістри TL0, TL1 – молодші 8 розрядів. Кожний із восьмирозрядних регістрів має свою адресу і може бути використаний як РЗП, якщо Т/Л не використовуються (біт TR0 для Т/Л0 і біт TR1 для Т/Л1 у регістрі керування TCON дорівнюють "0").

Код величини початкової лічби заноситься в регістри Т/Л програмно. В процесі лічби вміст регістрів Т/Л інкрементується. Ознакою закінчення лічби, як правило, являється переповнення регістра Т/Л, тобто перехід його вмісту зі стану "всі одиниці" у стан "усі нулі". Всі регістри ТН0, ТН1, TL0, TL1 доступні за читанням, і, при необхідності, контроль досягнення необхідної величини лічби може виконуватися програмно.

Регістр режимів Т/Л (TMOD) призначений для прийому і збереження коду, що визначає:

  •  один із 4-х можливих режимів роботи кожного Т/Л;
  •  роботу в якості таймерів або лічильників;
  •  керування Т/Л від зовнішнього виводу.

Позначення розрядів регістра TMOD наведене в таблиці 6, а призначення розрядів – у таблиці 7.

Таблиця 6 – Позначення розрядів регістра TMOD

Біти

7

6

5

4

3

2

1

0

Позн.

GATE1

M1.1

М0.1

GATE0

М1.0

М0.0

Таблиця 7 – Призначення розрядів регістра TMOD

Біти

Найменув.

Призначення бітів

Примітка

0-1

4-5

М0-М1

Визначають один із 4-х режимів роботи, окремо для Т/Л1 і Т/Л0.

Усі біти встановлюються програмно;

біти 0-3 визначають режим роботи Т/Л0,

біти 4-7 визначають режим роботи Т/Л1.

М1

М0

Режим

0

0

0

0

1

1

1

0

2

1

1

3

2, 6

С/0

С/1

Визначають роботу в якості:

С/Т0, С/Т1 = 0 – таймера

С/Т0, С/Т1 = 1 – лічильника


Продовження таблиці 7

3, 7

GATE

Дозволяє керувати таймером від зовнішнього виводу ( - для Т/Л0,  - для Т/Л1).

GATE = 0 – керування заборонено

GATE = 1 – керування дозволено

При роботі в якості таймера вміст регістра Т/Л інкрементується в кожному машинному циклі, тобто Т/Л являється лічильником машинних циклів МК. Оскільки машинний цикл складається з 12 періодів частоти синхронізації МК fBQ, то частота лічби в даному випадку дорівнює fBQ/12.

При роботі Т/Л в якості лічильника зовнішніх подій вміст регістра Т/Л інкрементується у відповідь на перехід із стану "лог. 1" у стан "лог. 0" сигналу на лічильному вході МК (вивід Т0 для Т/Л0 і вивід Т1 для Т/Л1). Лічильні входи апаратно перевіряються у фазі S5 P2 кожного машинного циклу.

Коли перевірки показують високий рівень на лічильному вході в одному машинному циклі і низький рівень в іншому машинному циклі, регістр Т/Л інкрементується. Нове (інкрементоване) значення заноситься в регістр Т/Л у фазі S3 P1 машинного циклу, що безпосередньо іде за тим, у якому був виявлений перехід із стану "лог. 1" у стан "лог. 0" на лічильному вході МК. Оскільки для розпізнавання такого переходу потрібно два машинних цикли (24 періоди частоти синхронізації МК fBQ), то максимальна частота лічби Т/Л в режимі лічильника дорівнює fBQ/24.

Щоб рівень сигналу на лічильному вході був гарантовано зафіксований, він повинен залишатися незмінним протягом як мінімум одного машинного циклу.

Регістр керування (TCON) призначений для прийому і збереження коду керуючого слова. Позначення розрядів регістра TCON наведене в таблиці 8, а призначення розрядів – у таблиці 9.

Таблиця 8 – Позначення розрядів регістра TCON

Біти

7

6

5

4

3

2

1

0

Позначення

TF1

TR1

TF0

TR0

IE1

IT1

IE0

IT0

Таблиця 9 – Призначення розрядів регістра TCON

Біти

Найменув.

Призначення бітів

Примітка

6

4

TR1

TR0

Біти включення Т/Л, окремо для Т/Л0 і Т/Л1.

TR = 0 – виключений,

TR = 1 – включений.

Біти встановлюються і скидаються програмно. Доступні за читанням.

7

5

TF1

TF0

Прапорці переповнення Т/Л.

Біти скидаються і встановлюються апаратно і програмно. Доступні за читанням.


Продовження таблиці 9

2

0

IT1

IT0

Біти, що визначають вид переривання за входами INT1, INT0.

IT = 0 – переривання за

рівнем (низьким),

IT = 1 – переривання за фронтом (перехід із "1" в "0")

Біти встановлюються і скидаються програмно. Доступні за читанням.

3

1

IE1

IE0

Прапорці запиту зовнішніх переривань за входами INT1, INT0.

Біти скидаються і встановлюються апаратно і програмно. Доступні за читанням.

Біти 4, 5 відносяться до Т/Л0; біти 6, 7 – до Т/Л1.

Біти 0, 1 визначають зовнішні переривання за входом INT0, біти 2, 3 – за входом INT1.

Прапорці переповнення TF0 і TF1 встановлюються апаратно при переповненні відповідних Т/Л (перехід Т/Л із стану "всі одиниці" у стан "усі нулі"). Якщо при цьому переривання від відповідного Т/Л дозволено, то встановлення прапорця TF викликає переривання. Прапорці TF0 і TF1 скидаються апаратно при передачі керування програмі обробки відповідного переривання.

Прапорці TF0 і TF1 програмно доступні і можуть бути встановлені/скинуті програмою. Використовуючи цей механізм, переривання по TF0 і TF1 можуть бути викликані (встановлення TF) і скасовані (скидання TF) програмою.

Прапорці IE0 і IE1 встановлюються апаратно від зовнішніх переривань (відповідно входи МК INT0 і INT1) або програмно й ініціюють виклик програми обробки відповідного переривання. Скидання цих прапорців виконується апаратно при обслуговуванні переривання тільки в тому випадку, коли переривання було викликано за фронтом сигналу. Якщо переривання було викликано рівнем сигналу на вході INT0 (INT1), то скидання прапорця IE повинна виконувати програма обслуговування переривання, впливаючи на джерело переривання для зняття ним запиту.

Схема інкременту призначена:

  •  для збільшення на 1 у кожному машинному циклі вмісту регістрів Т/Л0, Т/Л1, для яких встановлений режим таймера і дозволена лічба;
  •  для збільшення на 1 вмісту регістрів Т/Л0, Т/Л1, для яких встановлений режим лічильника, дозволена лічба і на відповідному вході МК (Т0 для Т/Л0 і Т1 для Т/Л1) зафіксований лічильний імпульс.

Схема фіксації INT0, INT1, Т0, Т1 являє собою чотири тригери. У кожному машинному циклі в момент S5 P2 у них запам'ятовується інформація з виводів МК INT0, INT1, Т0, Т1.

Схема керування прапорцями виробляє і знімає прапорці переповнення Т/Л і прапорці запитів зовнішніх переривань.

Логіка керування Т/Л синхронізує роботу регістрів Т/Л0 і Т/Л1 відповідно до запрограмованих режимів роботи і синхронізує роботу блока Т/Л з роботою МК.

Більш докладно режими роботи й особливості застосування таймерів/лічильників розглянуто в окремому розділі.

  1.  Блок послідовного порту (інтерфейсу)

Блок послідовного інтерфейсу призначений для організації введення/виведення послідовних даних.

До складу блока входять: буфер інтерфейсу, логіка керування інтерфейсом, регістр керування, буфер передавача, буфер приймача, приймач-передавач послідовного порту.

Буфер інтерфейсу забезпечує побайтовий обмін інформації між внутрішньою (резидентною) магістраллю даних і шиною інтерфейсу.

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

Регістр керування (SCON) призначений для прийому і зберігання коду восьмибітового слова, яке керує послідовним інтерфейсом. Позначення розрядів регістра SCON наведене в таблиці 10. Всі розряди регістра SCON програмно доступні за записом ("лог. 0" і "лог. 1") і зчитуванням.

Таблиця 10 – Позначення розрядів регістра SCON

Біти

7

6

5

4

3

2

1

0

Позначення

SM0

SM1

SM2

REN

ТВ8

RB8

TI

RI

Розряди SM0, SM1 визначають режим роботи інтерфейсу, як зазначено в таблиці 11.

Таблиця 11 - Вплив розрядів SM0, SM1 SCON на режим роботи інтерфейсу

SM0

SM1

Режим

Найменування

Швидкість передачі

0

0

0

Регістр зсуву

fBQ/12

0

1

1

8-бітовий універсальний асинхронний приймач/ передавач (УАПП)

змінна, задається Т/Л1

1

0

2

9-бітовий УАПП

fBQ/64 або fBQ/32

1

1

3

9-бітовий УАПП

змінна, задається Т/Л1

Інші біти регістра мають таке призначення:

SM2 – дозвіл багатопроцесорної роботи. У режимах 2 і 3 при SM2 = 1 прапорець RI не активізується, якщо дев'ятий прийнятий біт даних дорівнює "0". У режимі 1 при SM2 = 1 прапорець RI не активізується, якщо не прийнятий стоп-біт, рівний "1". В режимі 0 біт SM2 повинний бути встановлений у "0".

REN – дозвіл прийому послідовних даних. Встановлюється і скидається програмою відповідно для дозволу і заборони прийому.

ТВ8 – дев'ятий біт даних, що передаються, у режимах 2 і 3. Встановлюється і скидається програмою.

RB8 – дев'ятий біт прийнятих даних у режимах 2 і 3. У режимі 1, якщо SM2 = 0, RB8 є прийнятим стоп-бітом. У режимі 0 біт RB8 не використовується.

TI – прапорець переривання передавача. Встановлюється апаратно наприкінці часу видачі 8-го біта в режимі 0 або на початку стоп-біта в інших режимах. Скидається програмно.

RI – прапорець переривання приймача. Встановлюється апаратно наприкінці часу прийому 8-го біта в режимі 0 або через половину інтервалу стоп-біта в режимах 1, 2, 3 при SM2 = 0. При SM2 = 1 див. опис для біта SM2.

Буфер передавача призначений для прийому з шини інтерфейсу паралельних даних і видачі їх на передавач послідовного порту.

Буфер приймача служить для прийому даних у паралельній формі від приймача послідовного інтерфейсу.

Буфер приймача і буфер передавача при програмному доступі мають однакове ім'я (SBUF) і адресу (99Н). Якщо команда використовує SBUF як регістр джерела, то звертання відбувається до буфера приймача. Якщо команда використовує SBUF як регістр призначення, то звертання відбувається до буфера передавача.

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

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

Більш докладно режими роботи й особливості застосування послідовного інтерфейсу розглянуто в окремому розділі.

  1.  Паралельні порти введення/виведення

МК AT89C51 містить 4 паралельних 8-розрядних порти введення/ виведення дискретної інформації, що програмуються: P0, P1, P2, P3.

Порти Р0, Р1, Р2, Р3 є двонаправленими портами введення/виведення і призначені для забезпечення обміну інформацією МК із зовнішніми пристроями, створюючи 32 лінії введення/виведення. Кожний з портів містить фіксатор-защіпку, що являє собою восьмирозрядний регістр, який має байтову і бітову адресацію для встановлення/скидання його розрядів за допомогою відповідних команд.

Фізичні адреси фіксаторів Р0, Р1, Р2, Р3 становлять для:

Р0 – 80Н, при бітовій адресації 80Н – 87Н;

Р1 – 90Н, при бітовій адресації 90Н – 97Н;

Р2 – А0Н, при бітовій адресації А0Н – А7Н;

Р3 – В0Н, при бітовій адресації В0Н – В7Н.

Крім роботи в якості звичайних портів введення/виведення лінії портів Р0-РЗ можуть виконувати ряд додаткових функцій, описаних нижче.

Через порт Р0:

  •  виводиться молодший байт адреси А0-А7 при роботі з зовнішньою пам'яттю програм і зовнішньою пам'яттю даних;
  •  видається з МК і приймається в МК байт даних при роботі з зовнішньою пам'яттю (при цьому обмін байтом даних і виведення молодшого байта адреси зовнішньої пам'яті мультиплексовані в часі);
  •  задаються дані при програмуванні внутрішнього ПЗП, і читається вміст внутрішньої пам'яті програм.

Через порт Р1:

  •  задається молодший байт адреси при програмуванні внутрішнього ПЗП і при читанні внутрішньої пам'яті програм.

Через порт Р2:

  •  виводиться старший байт адреси А8-А15 при роботі з зовнішньою пам'яттю програм і зовнішньою пам'яттю даних (для зовнішньої пам'яті даних – тільки при використанні команд МОVХ  А, @DРТR і МОVХ  @DРТR, А, що формують 16-розрядну адресу);
  •  задаються старші розряди А8–А11 адреси при програмуванні внутрішнього ПЗП і при читанні внутрішньої пам'яті програм.

Кожна лінія порту Р3 має індивідуальну альтернативну функцію:

Р3.0 – RxD, вхід послідовного порту, призначений для введення послідовних даних у приймач послідовного порту;

Р3.1 – ТхD, вихід послідовного порту, призначений для виведення послідовних даних із передавача послідовного порту;

Р3.2 – , використовується як вхід 0 зовнішнього запиту переривання;

Р3.3 – , використовується як вхід 1 зовнішнього запиту переривання;

Р3.4  Т0, використовується як вхід лічильника зовнішніх подій Т/Л0;

Р3.5  Т1, використовується як вхід лічильника зовнішніх подій Т/Л1;

Р3.6 – , строб запису в зовнішню пам'ять даних, вихідний сигнал, який супроводжує виведення даних через порт Р0 при використанні команд МОVХ  @Ri, А і МОVХ  @DРТR, А;

Р3.7 – , строб читання із зовнішньої пам'яті даних, вихідний сигнал, який супроводжує введення даних через порт Р0 при використанні команд МОVХ  А, @Ri і МОVХ  А, @DРТR.

Альтернативна функція будь-якої з ліній порту Р3 реалізується тільки в тому випадку, якщо у відповідному цій лінії фіксаторі-защіпці міститься сигнал "лог. 1". Інакше на лінії порту Р3 буде присутній сигнал "лог. 0".

  1.  Схема десяткової корекції акумулятора

АЛП МК дозволяє виконувати додавання двійково-десяткових даних в упакованому форматі (в 1 байт “упаковані” 2 десяткові цифри). При виконанні операції додавання таких чисел використовується команда “Додавання”, що додає операнди за правилами двійкової арифметики і вміщує результат в акумулятор. Для виправлення можливої помилки (корекції вмісту акумулятора) застосовують команду десяткової корекції DA  A, яка апаратно реалізується схемою десяткової корекції акумулятора.

  1.  Внутрішній тактовий генератор (OSC)

МК містить внутрішній тактовий генератор (рисунок 6), в якому BQ1 і BQ2 є відповідно входом і виходом підсилювача-інвертора, і який може бути включений у режим генератора при підключенні до виводів BQ1 і BQ2 резонатора або LC-ланцюжка (рисунок 7).

Рисунок 6 – Внутрішній тактовий генератор

Рисунок 7 – Підключення до виводів BQ1 і BQ2 резонатора і LC-ланцюжка

  1.  Резидентна шина даних

Мікроконтролер містить 8-розрядну внутрішню (резидентну) шину даних (РШД), через яку здійснюється обмін інформацією між різними частинами МК.

  1.  Регістри

Акумулятор – 8-розрядний регістр, призначений для прийому і зберігання результату, отриманого при виконанні арифметичних і логічних операцій або операцій пересилання.

Регістр B – 8-розрядний регістр, який використовується при виконанні операцій множення і ділення. В інших випадках він може розглядатися як додатковий регістр загального призначення (частина НОЗП).

Регістри Т1, Т2 – 8-розрядні регістри тимчасового зберігання, призначені для прийому і зберігання операндів на час виконання операцій над ними в АЛП. Програмно недоступні.

Регістр стану програми (PSW) служить для зберігання інформації про результат виконання операції в АЛП. Його називають також регістром прапорців (ознак). Позначення окремих розрядів регістра PSW і призначення розрядів приведені відповідно в таблицях 1, 2.

Прапорець перенесення СY може встановлюватися і скидатися як апаратно, так і програмно. Апаратно він встановлюється, якщо при виконанні арифметичних або логічних операцій формується перенесення/позика у старшому (сьомому) розряді 8-бітних операндів. При виконанні операцій множення і ділення прапорець СY скидається. Крім того, прапорець СY виконує функції “булевого акумулятора” у командах, що працюють з бітами.

Прапорець допоміжного перенесення АС встановлюється/скидається апаратно або програмно. Апаратно встановлюється при виконанні операцій додавання і віднімання при виникненні перенесення/позики в 3-му розряді при утворенні молодшої тетради результату. Частіше всього використовується в СДКА при виконанні команди DA  A.

Прапорець користувача F0 встановлюється/скидається програмно і може використовуватися програмістом за своїм розсудом.

Прапорці-покажчики поточного банку РЗПів встановлюються/ скидаються програмно і вказують, який із 4-х банків РЗПів РПД (рисунок 5) в даний момент часу є робочим (поточним).

Прапорець переповнення OV встановлюється/скидається програмно або апаратно. Апаратно встановлюється тоді, коли при виконанні операції додавання/віднімання над числами зі знаком результат не вкладається в діапазон –128 ... +127 і старший, знаковий біт спотворюється. При виконанні операції ділення прапорець OV апаратно скидається, а у випадку ділення на нуль встановлюється. При множенні прапорець OV апаратно встановлюється, якщо результат більше 255.

Прапорець парності (паритету) P встановлюється/скидається апаратно. Він доповнює вміст акумулятора до парного числа одиниць. У 9-розрядному слові, що складається з 8 розрядів акумулятора і біта Р, завжди міститься парне число одиничних бітів.

Всі сім названих прапорців програмно доступні за читанням.

Регістр команд РК (IR) призначений для зберігання коду операції (КОП) поточної команди, що виконується.

Лічильник команд ЛК (РС) містить 16розрядну адресу комірки пам'яті програм. До складу лічильника команд входять 16-розрядні буфер PC, регістр PC, схема інкременту, регістр адреси пам'яті.

Буфер PC здійснює зв'язок між 8-розрядною РШД і 16-розрядним регістром PC, у якому зберігається поточна 16-розрядна адреса пам'яті програм.

Схема інкременту збільшує поточне значення 16-розрядної адреси пам'яті програм на одиницю.

Регістр адреси пам'яті призначений для запису і зберігання виконавчої 16-розрядної адреси пам'яті програм або 8/16-розрядної адреси зовнішньої пам'яті даних.

Регістр-покажчик даних РГПД (DPTR) призначений для зберігання 16-розрядної адреси зовнішньої пам'яті даних. Складається з двох 8-розрядних регістрів DPH і DPL, що входять у блок регістрів спеціальних функцій [14,15]. Вони програмно доступні і можуть використовуватися в якості двох незалежних РЗПів, якщо немає необхідності у зберіганні 16розрядної адреси зовнішньої пам'яті даних.

Покажчик стеку (SP) адресує комірки спеціальної області пам'яті даних (РПД), яка називається стеком. SP адресує “верхівку” стека – останню комірку стекової пам'яті, у якій записана інформація. Покажчик стека являє собою 8-розрядний регістр, вміст якого при виконанні команд LCALL, ACALL збільшується на 2. При виконанні команд RET, RETI вміст покажчика стека зменшується на 2. При виконанні команди PUSH direct вміст SP збільшується на 1, а при виконанні команди POP direct – зменшується на 1.

Регістр адреси РА (RAR) – регістр комірки РШД, що адресується. Програмно не доступний.

Регістри РРТЛ (TMOD) і РКСТ (TCON) служать для програмування і керування роботою таймерів/лічильників і системи переривань. Формати, позначення і призначення їхніх окремих розрядів приведені в таблицях 6…9.

Регістр РКПП (SCON), буфери ПД і ПРМ (SBUF) призначені для програмування і керування роботою послідовного інтерфейсу. Формати, позначення і призначення їх окремих розрядів приведені в таблицях 10, 11.

Регістри РМП (IE) і РП (IR) програмують і керують роботою системи переривань МК. Формати, позначення і призначення РМП і РП наведені в таблицях 3, 4.

Регістр керування потужністю РКП (PCON) служить для програм-ного керування споживанням енергії від джерела живлення, а також швидкістю передачі по послідовному каналу К. Формати, позначення і призначення його окремих розрядів наведені в таблицях 12, 13.

Більш докладно застосування цього регістра буде розглянуто в окремих розділах.

Таблиця 12 – Позначення розрядів регістра PCON

Біти

7

6

5

4

3

2

1

0

Позначення

SMOD

-

-

-

GF1

GF0

PD

IDL

Таблиця 13 – Призначення розрядів регістра PCON

Біти

Найменув.

Призначення бітів

Примітка

7

SMOD

Біт подвоєння швидкості передачі: при встановленні в "1" – швидкість передачі подвоюється.

При роботі послідовного порту

6

-

Резервний

5

-

Резервний

4

-

Резервний

3

GF1

Прапорець загального призначення

2

GF0

Прапорець загального призначення

1

PD

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

"1" – режим мікроспоживання

Якщо в PD і IDL одночасно записана "1", перевагу має PD

0

IDL

Біт холостого ходу

"1" – режим холостого ходу


КОНТРОЛЬНІ ЗАПИТАННЯ

  1.  Назвіть основні функціональні вузли МК
  2.  Як співвідносяться між собою командний та машинний цикл?
  3.  Яке призначення пристрою формування часових інтервалів?
  4.  Опишіть структуру блоку арифметично-логічного пристрою
  5.  Охарактеризуйте розподіл резидентної пам’яті даних та резидентної пам’яті програм
  6.  Опишіть структуру системи переривань
  7.  Назвіть складові блоку таймерів-лічильників та їх призначення
  8.  Опишіть призначення та головні компоненти блоку послідовного інтерфейсу
  9.  Назвіть призначення та додаткові функції паралельних портів введення/виведення
  10.  Назвіть основні регістри МК-51 та коротко охарактеризуйте їх

ЛІТЕРАТУРА

САМОСТІЙНА РОБОТА СТУДЕНТІВ

  1.  СКЛАД ТА ОСНОВНІ ХАРАКТЕРИСТИКИ МІКРОКОНТОЛЕРІВ РОДИНИ МК-51
    1.  Вступ

Фірма Intel досить давно не займається випуском 8-розрядних мікропроцесорів. Велика кількість виробників придбали ліцензію на випуск мікроконтролерів з ядром MCS51: Philips, Siemens, Dallas, Atmel, Winbond та інші. Всі компанії прагнуть одночасно зберегти сумісність зі стандартною архітектурою MCS51 і привнести в неї які-небудь покращення, дозволяючи продукції виділятися на фоні продуктів конкуруючих фірм.

  1.  Мікроконтролери фірми Atmel

Мікроконтролери фірми Atmel – найбільш популярні серед розробників з країн СНД. Цьому сприяє їх невисока ціна і наявність в гамі продукції великої кількості мікроконтролерів з флеш-пам’яттю програм, що особливо важливо для дрібносерійного виробництва. Поряд з повними стандартними версіями контролерів, фірма Atmel пропонує більш дешеві кристали з меншою кількістю виводів (20 замість 40 стандартних).

В таблиці 1 приведені характеристики деяких мікроконтролерів фірми Atmel з флеш-пам’яттю програм. Фірма випускає також одноразово програмовані (OП) версії кристалів, але вони не користуються такою популярністю.

Таблиця 1 – Мікроконтролери фірми Atmel

Тип

Напруга живлення, В

Тактова частота, МГц

I/O

FLASH

EEPROM

SRAM

Інтерфейси

Аналогові інтерфейси

Таймери

Корпус

Мікроконтролери з Flash-пам’яттю програм

AT89C2051

2.7-6.0

24

15

2K

-

128

UART

Comp

2х16-bit

PDIP20, SOIC20

AT89C4051

3.0-5.0

24

15

4K

-

128

UART

Comp

2х16-bit

PDIP20, SOIC20

AT89C51

5.0

24

32

4K

-

128

UART

-

2х16-bit

DIP40, PLCC44, PQFP44

AT89LV51

2.7

12

32

4K

-

128

UART

-

2х16-bit

DIP40, PLCC44, PQFP44

AT89C52

5.0

24

32

8K

-

256

UART

-

3х16-bit

DIP40, PLCC44, PQFP44

AT89LV52

2.7

12

32

8K

-

256

UART

-

3х16-bit

DIP40, PLCC44, PQFP44

AT89C55WD

5.0

33

32

20K

-

256

UART

-

3х16-bit

DIP40, PLCC44, PQFP44

AT89LV55

2.7

12

32

20K

-

256

UART

-

3х16-bit

DIP40, PLCC44, PQFP44

AT89C51RC

5.0

33

32

32K

-

512

UART

-

3х16-bit PCA

DIP40, PLCC44, PQFP44

Мікроконтролери з інтерфейсом USB, які програмуються внутрішньосхемно

AT89C51SND1

2.7-3.3

20

44

64K

-

2304

UART, IDE, USB, SPI, I2S, MP3 Decoder

10-bit ADC

2х16-bit WDT

TQFP80, PLCC84

AT89C51SND2

2.7-3.3

20

44

64K

-

2304

UART, IDE, USB, SPI, I2S, MP3 Decoder

10-bit ADC, 2x20bit DAC

2х16-bit WDT

CTBGA100

AT89C5131

3.0-3.6

40

34

18

32K

4Kb

1280

UART, USB, SPI

-

3х16-bit WDT, PCA

PLCC52, VQFP64, MLF48, SO28


Продовження т
аблиці 1

AT89C5131A-L

3.0-3.6

48

34

18

32K

4Kb

1280

UART, USB, SPI, I2C

-

3х16-bit WDT, PCA

PLCC52, VQFP64, MLF48, SO28

AT89C5130A-M

2.7-5.5

48

34

16K

-

1280 + DPRAM 1280

UART, USB, SPI

-

2х16-bit WDT

PLCC52, VQFP64, QFN32

AT89C5131A-M

3.0-3.6

40

34

18

32K

256

1024

USB, SPI

-

2х16-bit WDT

LCC52, VQFP64, MLF48, SO28

AT89C5132

2.7-3.3

40

44

38

64K

-

2304

UART, USB, SPI, I2S

2ch 10bit

3х16-bit WDT

TQFP80, TQFP64

AT85C5122

3.6-5.5

16

46

13

32K CRAM

768

UART, USB, SPI, Smart Card

-

2х16-bit WDTA

VQFP64, PLCC28

AT89C5122

3.6-5.5

16

46

13

32K

768

UART, USB, SPI, Smart Card

-

2х16-bit WDTA

VQFP64, PLCC28

Мікроконтролери, які програмуються внутрішньосхемно

T85C5121

3.6-5.5

16

14

30

16K CRAM

768

UART, SPI, Smart Card

-

2х16-bit WDTA

SSOP24, PLCC52

T89C5121

3.6-5.5

16

14

30

16K

768

UART, SPI, Smart Card

-

2х16-bit WDTA

SSOP24, PLCC52

AT89S51

4.0-5.5

33

32

4K

-

128

UART

-

2х16-bit WDT

DIP40, PLCC44, PQFP44

AT89LS51

2.7-4.0

16

32

4K

-

128

UART

-

2х16-bit WDT

DIP40, PLCC44, PQFP44

AT89S2051

2.7-5.5

24

15

2K

-

256

UART

-

2х16-bit

PDIP20, SO20

AT89S4051

2.7-5.5

24

15

4K

-

256

UART

-

2х16-bit

PDIP20, SO20

AT89S52

4.0-5.5

33

32

8K

-

256

UART

-

3х16-bit WDT

DIP40, PLCC44, PQFP44

AT89LS52

2.7-4.0

33

32

8K

-

256

UART

-

3х16-bit WDT

PDIP40, PDIP42, PLCC44, TQFP44

AT89S8252

4.0-6.0

24

32

8K

2K

256

UART, SPI

-

3х16-bit WDT

DIP40, PLCC44, PQFP44

AT89S8253

2.7-5.5

24

32

12K

2K

256

UART, SPI

-

3х16-bit WDT

DIP40, PLCC44, PQFP44, PDIP42


Продовження т
аблиці 1

AT89LS8252

2.7-6.0

12

32

8K

2K

256

UART, SPI

-

3х16-bit WDT

DIP40, PLCC44, PQFP44

AT89S53

4.0-6.0

24

32

12K

-

256

UART, SPI

-

3х16-bit WDT

DIP40, PLCC44, PQFP44

AT89LS53

2.7-6.0

12

32

12K

-

256

UART, SPI

-

3х16-bit WDT

DIP40, PLCC44, PQFP44

T89C51RB2M

4.5-5.5

40

32

16K

-

1280

UART, SPI

-

3х16-bit PCA, WDT

DIP40, PLCC44, VQFP44

T89C51RB2L

2.7-3.3

40

32

16K

-

1280

UART, SPI

-

3х16-bit PCA, WDT

DIP40, PLCC44, VQFP44

T89C51RC2

4.5-5.5

40

32

32K

-

1280

UART, SPI

-

3х16-bit PCA, WDT

DIP40, PLCC44, VQFP44

T89C5115

4.5-5.5

40

20

16K

2K

512

UART

10-bit ADC

3х16-bit PCA, WDT

SOIC28, PLCC28, VQFP32

T89C51IC2

2.7-3.6 4.5-5.5

40

32

32K

-

1280

UART, SPI, I2C

-

3х16-bit PCA, WDT

PLCC44, VQFP44

AT89C51ID2

2.7-3.6 3.0-5.5

40

32

48

64K

2K

2K

UART, SPI, I2C

-

3х16-bit PCA WDT

PLCC44, VQFP44 PLCC68, VQFP64

T89C51AC2

4.5-5.5

40

34

32K

2K

1280

UART

10-bit ADC

3х16-bit PCA, WDT

VQFP44, PLCC44, CA-BGA64

AT89C51AC3

3.0-5.5

60

36

64K

2K

2304

UART, SPI

10-bit ADC

3х16-bit PCA, WDT

VQFP44, PLCC44, VQFP64, PLCC52

T89C51RD2

3.0-5.5 4.5-5.5

40

32

48

64K

2K

1280

UART

-

3х16-bit PCA, WDT

PDIL40, PLCC44, VQFP44, PLCC68, VQFP64

AT89C51RD2

2.7-5.5

40

32

48

64K

-

1280

UART

-

3х16-bit PCA, WDT

PLCC44, VQFP44

AT89C51ED2

2.7-5.5

40

32

48

64K

2K

2048

UART

-

3х16-bit PCA, WDT

PDIL40, PLCC44, VQFP44, PLCC68, VQFP64


Продовження т
аблиці 1

AT89C51IC2

2.7-5.5

40

34

48

32K

-

1280

UART, TWI

-

3х16-bit PCA, WDT

LQFP44, PLCC44

AT89C51RB2

2.7-5.5

40

32

48

16K

-

1280

UART

-

3х16-bit PCA, WDT

PDIP40, LQFP44, PLCC44

T89C51CC01

4.5-5.5

40

34

32K

2K

1280

UART, CAN

10-bit ADC

3х16-bit PCA, WDT

TQFP44, PLCC44, CA-BGA64

T89C51CC02

2.7-3.3 4.5-5.5

40

20

16K

2K

512

UART, CAN

10-bit ADC

3х16-bit PCA, WDT

PLCC28, SOIC28, TSSOP28, SOIC24

AT89C51CC03

2.7-3.3 4.5-5.5

40

34

64K

2K

2304

UART, CAN

10-bit ADC

3х16-bit PCA, WDT

VQFP44, PLCC44, CA-BGA64

AT89LP213

2.4-5.5

20

14

2K

-

128

TWI, SPI

-

2х16-bit WDT

TSSOP14, PDIP14

AT89LP214

2.4-5.5

20

12

2K

-

128

UART, TWI, SPI

-

2х16-bit WDT

TSSOP14, PDIP14

AT89LP216

2.4-5.5

20

14

2K

-

128

UART, TWI, SPI

-

2х16-bit WDT

SOIC16, PDIP16, TSSOP16

AT89LP2052

2.4-5.5

20

15

2K

2K

256K

UART, SPI

10-bit ADC

2х16-bit PWM, WDT

PDIP20, TSSOP20, SOIC20

AT89LP4052

2.4-5.5

20

15

4K

2K

256K

UART, SPI

10-bit ADC

2х16-bit PWM, WDT

PDIP20, TSSOP20, SOIC20

  1.  Мікроконтролери Temic

Фірма Temic нещодавно стала підрозділом Atmel із назвою Atmel Wireless. На момент об’єднання у цієї фірми був багатолітній досвід розробки и випуску мікроконтролерів з ядром MCS52.

Перш ніж перейти до розгляду продукції фірми Temic, коротко опишемо МК типу MCS52 та їх основні відмінності від MCS51. Родина MCS52 являє собою вдосконалену родину MCS51  з розширеними функціональними можливостями та підвищеною продуктивністю. МК типу MCS52 програмно сумісні з родиною MCS51. В MCS52 збільшена пам'ять програм на кристалі (в деяких аж до 64 кбайт), введені додаткові регістри спеціальних функцій і нові режими роботи, підвищена захищеність програм від нелегального копіювання, лінії порту 1 використовуються в альтернативних режимах, розширена і виконана більш гнучкою система переривань, розширений об’єм внутрішньої пам’яті даних. Родину MCS52 навряд можна розглядати як самостійну – для цих МК справедливо абсолютно все, що було раніше сказано для MCS51. Але в той же час ці МК створюють самостійну «підродину» в родині MCS51, оскільки між собою вони різняться лише наявністю чи відсутністю внутрішньої пам’яті програм і об’ємом цієї пам’яті, а їх нові (у зрівнянні з MCS51) функціональні можливості досить великі.

Ми розглянемо продукцію Temic окремо від Atmel (таблиця 2). Всі перелічені в таблиці мікроконтролери мають можливість програмуватись внутрішньосхемно через UART. ОЗП даних в порівнянні зі стандартною архітектурою MCS52 розширена на 1 Кбайт і містить 1280 байт. Флеш-пам’ять програм більше, ніж у кристалів Atmel. Мікроконтролери мають режим заборони видачі сигналу ALE для зменшення радіоперешкод. В склад периферійних пристроїв входить сторожовий таймер.

Таблиця 2 – Мікроконтролери фірми Atmel Wireless (Temic)

Назва

Корпуса

Пам’ять програм

Тактові частоти, МГц

Особливості

T89C51AC2

PLCC44, VQFP44, CA-BGA64

Флеш 32K

20, 40

Розширена пам’ять XRAM – 1K. EEPROM даних – 2K. Два DPTR. Режим X2 (6 тактів на машинний цикл). АЦП 8х10 біт,

T89C51RB2

DIP40, PLCC44, VQFP44,

Флеш 16K

30, 40

Розширена пам’ять XRAM – 1K. Інтерфейс SPI. Режим X2 для кожного периферійного блоку. Інтерфейс клавіатури.

T89C51RC2

DIP40, PLCC44, VQFP44,

Флеш 32K

30, 40

Розширена пам’ять XRAM – 1K. Інтерфейс SPI. Режим X2 для кожного периферійного блоку. Інтерфейс клавіатури.


Продовження т
аблиці 2

T89C51RD2

DIP40, PLCC44, VQFP44, PLCC68, VQFP64

Флеш 64K

25, 40

Найбільша пам’ять програм в сімействі. Розширена пам’ять XRAM – 1K. Два DPTR.

T89C51IC2

PLCC44, VQFP44

Флеш 32K

30, 40

Розширена пам’ять XRAM – 1K. Інтерфейс SPI, i2c. Інтерфейс клавіатури.

  1.  Мікроконтролери Siemens (Infineon)

Однією із найавторитетніших компаній на ринку мікроконтролерів є Siemens. В результаті реорганізації підрозділ по випуску напівпровідників отримало свою власну назву – Infineon. Фірма Infineon випускає, разом з іншими цікавими мікросхемами, мікроконтролери сімейства С500. Архітектура С500 базується на MCS52, але має більш розвинуту периферію. Характеристики мікроконтролерів  сімейства С500 приведені в таблиці 3. Специфіка мікроконтролерів Infineon визначається тим, що фірма Siemens спеціалізується на випуску апаратури промислової автоматики. 8-розрядне сімейство призначається, в першу чергу, для використання в інтелектуальних датчиках і нескладних приладах автоматики, не  потребуючих оновлення програмного забезпечення. Для таких пристроїв характерно використання в якості пам’яті програм масового або однократно ПЗП, що програмується (Mask ROM і OTP ROM). Більшість кристалів мають версії з обома типами пам’яті або без внутрішньої пам’яті програм. Більшість мікроконтролерів мають в своєму складі багатоканальні широтно-імульсні модулятори (ШІМ) і аналого-цифрові перетворювачі.

Таблиця 3 – Мікроконтролери фірми Insineon (Siemens)

Назва

Корпуса

Пам’ять

ОЗП, байт

ШІМ, кан.

АЦП,

кан. х біт

Такт. част., МГц

Особливості

C501G

DIP40,

PLCC44,

MQFP44

8K OTP

256

-

-

24

Контролер загального користування

C504

MQFP44

Немає або 16K ROM/OTP

512

6

8х10

24

Модуль керування двигуном пост. струму

C513AO

PLCC44

Немає або 16K ROM/OTP

512

-

-

16

Низьке енергоспоживання і електромагнітне випромінювання

C508

SDIP64, MQFP64

32K ROM/OTP

1280

6

8х10

20

Модуль керування двигуном пост. току, множник тактової частоти

C505L

MQFP80

32K OTP

512

4

8х10

20

Драйвер ЖКІ, годинник реального часу

C505A

MQFP44

32K OTP

1280

4

8х10

20

Низьке енергоспоживання і електромагнітне випромінювання

C505CA

MQFP44

32K ROM/OTP або 16K ROM

1280

4

8х10

20

Низьке енергоспоживання і електромагнітне випромінювання

C515

PLCC68

Немає

256

4

8х8

24

Сумісний з SAB 80C515

C515C

MQFP80

Немає або 64K ROM/OTP

2304

4

8х10

10

Низьке енергоспоживання і електромагнітне випромінювання

C517A

PLCC84

Немає

2304

21

12х8

18

Сумісний з SAB 80C517A

C509

MQFP100

Немає

3328

29

12х10

16

Завантажувач для зовнішньої флеш-пам’яті програм

C541

PLCC44

8K OTP

256

-

-

12

USB – функція

  1.  Мікроконтролери Philips

Велику номенклатуру мікроконтролерів з ядром MCS51 випускає фірма Philips. Продукція фірми орієнтована, в першу чергу, на ринок побутової електроніки. Більшість кристалів мають інтерфейс I2C. I2C - це послідовна шина, запропонована фірмою Philips в якості стандарту обміну в недорогих низькошвидкісних системах. Характеристики деяких мікроконтролерів Philips наведені в таблиці 4. Буква х в назві мікросхеми означає, що даний кристал може поставлятися з різними типами пам'яті програм:

0 - без внутрішньої пам'яті;

3 - з масковим ПЗП (запрограмованим на замовлення);

7 - з ППЗП (EPROM);

9 - з флеш-пам'яттю.

Фірма Philips, так само, як і фірма Atmel, випускає мікроконтролери в корпусах з малим числом виводів, деякі з яких також представлені в таблиці.

Таблиця 4 – Мікроконтролери фірми Philips

Назва

Корпус

Пам’ять програм

Тактова частота, МГц

Особливості

P8xC552

x=0,3,7

PLCC68, QFP80

8K

16 МГц,

24 МГц

АЦП 8х10 біт, I2C

P8xC562

х=0,3

PLCC68

8K

16 МГц,

24 МГц

АЦП 8х8 біт, I2C

P8xC557

x=0,3,9

QFP80

32K

16 МГц

ОЗУ 1К, АЦП 8х10 біт, ШІМ, I2C, множник тактової частоти

P80C31/ P80C32

DIP40, PLCC44, QFP44

-

16 МГц,

33 МГц

ОЗП128/256 б. Режим заборони видачі ALE

P8xC51FA/FB/FC

х=0,3,7

DIP40, PLCC44, QFP44

8/16/32K

16 МГц,

33 МГц

ОЗП 256 б. Додатковий таймер.

P8xC51RA+/RB+/RC+ 

х=0,3,7

DIP40, PLCC44, QFP44

8/16/32K

16 МГц,

33 МГц

ОЗП 512 б. Додатковий таймер, вартовий таймер.

P8xC51RD+

x=0,3,7

DIP40, PLCC44, QFP44

64K

16 МГц,

33 МГц

ОЗУ 1024 б. Додатковий таймер, вартовий таймер.

P8xC748

x=7,9

DIP24, SOIC24, PLCC28

2K

16 МГц

Зменшений корпус, ОЗП 64 б.

P8xC752

x=7,9

DIP24, SOIC24, PLCC28

2K

16 МГц

Зменшений корпус, ОЗП 64 б, АЦП 5х8 біт, i2c.

  1.  Мікроконтролери Analog Devices

Мікроконтролери Analog Devices не є стандартними виробами, однак кількість проданих мікросхем та їх зростаюча популярність не дозволяють залишити без уваги продукцію цієї фірми в даному огляді. Analog Devices є одним з найбільших світових виробників АЦП і ЦАП; дослідницькі центри фірми вносять величезний вклад у розвиток цієї галузі. Багато рішень від Analog Devices стали стандартами де-факто, аналоги випускаються багатьма фірмами.

Analog Devices вийшли на ринок 8-розрядних мікроконтролерів, запропонувавши сімейство MicroConverter. У цих виробах об'єднані на одному кристалі найважливіші компоненти систем збору і обробки інформації - процесорний ядро MCS52 і блок введення-виведення аналогової інформації, що включає багатоканальні ЦАП і АЦП. Ідея такого об'єднання не нова, однак фірмі Analog Devices вдалося розмістити на кристалі з процесором дійсно високоякісний АЦП, з роздільною здатністю 12 біт і більше, з функціями калібрування і вимірювання температури. Технічні дані мікроконтролерів наведені в таблиці 5.

Таблиця 5 – Мікроконтролери фірми Analog Devices

Тип

ADC, каналів/біт

DAC, каналів/біт

Flash програм

EEPROM даних

RAM

Корпус

Додатково

ADuC812

8/12

2/12

8K

640b

256b

PQFP52, CSP56

5 µs ADC Conversion

ADuC814

6/12

2/12

8K

640b

256b

TSSOP28

Small, Low-Cost, Low-Power

ADuC816

2/16

1/12

8K

640b

256b

PQFP52, CSP56

Programmable Gain Input

ADuC824

1/24+1/16

1/12

8K

640b

256b

PQFP52, CSP56

Pin-Compatible Upgrade to ADuC816

ADuC831

8/12

2/12

+ 2 PWM

62K

4K

256b+2K

PQFP52, CSP56

"Big Memory" Upgrade to ADuC812


Продовження т
аблиці 5

ADuC832

8/12/

2/12-Bit

+ 2 PWM

62K

4K

256b+2K

PQFP52, CSP56

"Big Memory" Upgrade to ADuC812 plus PLL

ADuC834

1/24+1/16

Single 12-Bit

+ Dual PWM

62K

4K

256b+2K

PQFP52, CSP56

"Big Memory" Upgrade to ADuC824

ADuC836

2/16

1/12

+ 2 PWM

62K

4K

256+2K

PQFP52, CSP56

"Big Memory" Upgrade to ADuC816

ADuC841

8/12

2/12

+ 2 PWM

62K

4K

256+2K

PQFP52, CSP56

"Big Memory" Upgrade to ADuC812
Fast 8052 Core

ADuC842

8/12

2/12

+ 2 PWM

62K

4K

256b+2K

PQFP52, CSP56

"Big Memory" Upgrade to ADuC812 plus PLL Fast 8052 Core

ADuC844

1/24+1/16

Single 12-Bit + Dual PWM

62K

4K

256b+2K

PQFP52, CSP56

"Big Memory" Upgrade to ADuC824
Fast 8052 Core

ADuC845

10/24+1/24

Single 12-Bit

+ Dual 16-bit

+ Dual PWM

16bit

62K

4K

256b+2K

PQFP52, CSP56

"Big Memory" Upgrade to ADuC824
Fast 8052 Core

ADuC846

2/16

1/12

+ 2 PWM

62K

4K

256b+2K

PQFP52, CSP56

"Big Memory" Upgrade to ADuC816 Fast 8052 Core

ADuC847

10/24

Dual 16-bit

+ Dual PWM 16bit

62K

4K

256b+2K

PQFP52, CSP56

"Big Memory" Upgrade to ADuC816 Fast 8052 Core

  1.  Мікроконтролери Dallas Semiconductor

Особливістю мікроконтролерів фірми Dallas Semiconductor є змінена часова сітка. Машинний цикл в даних мікропроцесорах займає 4 такта замість 12 у класичного 80C51. При цьому збережена повна сумісність зі стандартною архітектурою на рівні інструкцій. Мікроконтролери Dallas знаходять застосування в завданнях, які потребують підвищеної швидкості обробки. Характеристики мікроконтролерів фірми наведені в таблиці 6. Багато мікроконтролери мають розширений ОЗП, звернення до якого відбувається так само, як до зовнішньої пам'яті. У регістрову модель мікропроцесора включений другий покажчик зовнішньої пам'яті DPTR. Характерною особливістю периферії мікроконтролерів Dallas є наявність на одному кристалі двох послідовних портів.

Таблиця 6 – Мікроконтролери фірми Dallas

Назва

Корпуса

Пам’ять програм

Додатковий ОЗП

Кількість послідовних портів

Тактова частота

Особливості

DS80C310

DIP40, PLCC44, TQFP44

-

-

1

33 МГц

 

DS80C320/323

DIP40, PLCC44, TQFP44

-

-

2

33 МГц, 18 МГц

 

DS80C390

PLCC68, TQFP64

До 4K ОЗП

до 4K

2

40 МГц

Інтерфейс CAN 2.0B, математичний співпроцесор, перерозподіл ОЗП між областями даних і команд

DS80CH11

TQFP128

-

256b

1

33 МГц

ШІМ, АЦП 8х10 біт

DS8xC520

DIP40, PLCC44, TQFP44

16K ROM або EPROM

1K

2

33 МГц

 

DS8xC530

PLCC52, TQFP52

16K ROM або EPROM

1K

2

33 МГц

Годинник реального часу

  1.  Склад та основні характеристики сучасного мікроконтролера ADuC847

ADuC847 є покращеною модифікацією мікроконвертера ADuC834 і функціонально близький до мікроконвертера ADuC845. ADuC847 має поліпшену, 12.58MIPs, версію ядра МК 8052. У порівнянні з ADuC845 ADuC847 містить більшу кількість каналів аналогового введення, але в ньому відсутні ЦАП і додатковий АЦП. Виріб має всі функції ADuC834, стандартне 12-циклове ядро замінене одноцикловим з продуктивністю 12.58MIPs.

Загальний опис

ADuC847 є закінченим контролером для інтелектуальних датчиків, що включає в себе сигма-дельта АЦП високого розширення, гнучкий вхідний мультиплексор на 10/8 каналів, швидкий 8 розрядний мікроконтролер і вбудовану Flash/EEPROM  пам'ять програм і даних.

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

Пристрій працює від кварцового резонатора 32кГц, а висока частота 12.58МГц виробляється системою фазової автопідстройки частоти (ФАПЧ). Висока частота проходить через програмно-керований дільник, з якого знімається частота для роботи мікропроцесорного ядра. Мікропроцесорне ядро є оптимізованим одноцикловим ядром 8052, що дає продуктивність до 12.58MIPS, при виконанні команд, сумісних з МК 8051.

Пристрій містить 62Кбайт внутрішньої Flash пам'яті програм, 4Кбайт внутрішньої EEPROM пам'яті даних і 2304 байт внутрішньої пам'яті даних з довільним доступом (RAM).

«Зашите» на етапі виробництва програмне забезпечення дозволяє робити завантаження програм в пристрій через послідовний порт (UART), а також виконувати налагодження прикладних програм системи через єдиний зовнішній вхід ЕА. Розробка виробів на основі ADuC847 підтримується недорогою системою QuickStart TM (апаратура і програми).

Робота таймера

У класичному МК 8052 всі таймери інкрементуються на +1 під час кожного машинного циклу. Оскільки в ADuC847 один машинний цикл дорівнює одному періоду тактової частоти, таймери будуть інкрементуються з частотою рівною тактовій частоті ядра.

Сигнал ALE

Частота вихідного сигналу ALE мікроконтролера ADuC834 становить 1/6 тактової частоти ядра. У разі ядра ADuC847 сигнал ALE виглядає наступним чином.

У разі одноциклової команди вихід ALE знаходиться у високому логічному стані протягом першої половини машинного цикл і в низькому - протягом заключної половини. Тут частота на виході ALE дорівнює тактовій частоті ядра. Для команд, що містять два або більше циклів, вихід ALE знаходиться у високому логічному стані протягом першої половини машинного циклу і в низькому - протягом заключної половини.

Доступ до зовнішньої пам'яті

ADuC847 не підтримує доступ до зовнішньої пам'яті програм. При зверненні до зовнішньої пам'яті даних з довільним доступом буде потрібно програмувати регістр EWAIT, щоб при виконанні команди MOVX були виконані додаткові машинні цикли. Це необхідно виконати через відмінності у часі доступу до внутрішньої і зовнішньої RAM.

Більш детальна інформація про МК-р ADuC847 наведена у [].

  1.  Склад та основні характеристики мікроконтролерів фірми Silicon Laboratories (Cygnal)

Фірма Silicon Laboratories динамічно розвиває перелік випускаємих мікроконтролерів. Фірмі вдалося створити 55 типів мікроконтролерів, що відрізняються продуктивністю, об'ємом Flash пам'яті програм, вбудованої оперативної пам'яті, характеристиками аналого-цифрових вузлів, типом корпусу та іншими параметрами. Всі мікроконтролери, що випускаються, наведені в таблиці 7. Мікроконтролери умовно розділені на 11 сімейств.

Таблиця 7 - Мікроконтролери фірми Silicon Laboratories

Сімейство

Тип

Основні параметри

Продуктив-ність    MIPS

Flash ROM, K

RAM, byte

ADC, bit

Корпус (кількість виводів)

Примітка

C8051F0xx

C8051F000

20

32

256

12

64

C8051F001

20

32

256

12

48

C8051F002

20

32

256

12

32

C8051F005

25

32

2.25K

12

64

C8051F006

25

32

2.25K

12

48

C8051F007

25

32

2.25K

12

32

C8051F010

20

32

256

10

64

C8051F011

20

32

256

10

48

C8051F012

20

32

256

10

32

C8051F015

25

32

2.25K

10

64

C8051F016

25

32

2.25K

10

48

C8051F017

25

32

2.25K

10

32

C8051F018/9

C8051F018

25

16

1.25K

10

48

C8051F019

25

16

1.25K

10

32

C8051F02x

C8051F020

25

64

4.25K

12+8

100

C8051F021

25

64

4.25K

12+8

64

C8051F022

25

64

4.25K

10+8

100

C8051F023

25

64

4.25K

10+8

64

C8051F04x

C8051F040

25

64

4.352K

12+8

100

CAN 2.0B

C8051F041

25

64

4.352K

12+8

64

CAN 2.0B

C8051F042

25

64

4.352K

10+8

100

CAN 2.0B

C8051F043

25

64

4.352K

10+8

64

CAN 2.0B

C8051F044

25

64

4.352K

10+8

100

CAN 2.0B

C8051F045

25

64

4.352K

10+8

64

CAN 2.0B

C8051F046

25

32

4.352K

10+8

100

CAN 2.0B

C8051F047

25

32

4.352K

10+8

64

CAN 2.0B

C8051F06x

C8051F060

25

64

4.352K

16+10

100

CAN+DMA

C8051F061

25

64

4.352K

16+10

64

CAN+DMA

C8051F062

25

64

4.352K

16+10

100

CAN+DMA

C8051F063

25

64

4.352K

16+10

64

CAN+DMA

Продовження таблиці 7

C8051F12x

C8051F120

100

128

8.25K

12+8

100

C8051F121

100

128

8.25K

12+8

64

C8051F122

100

128

8.25K

10+8

100

C8051F123

100

128

8.25K

10+8

64

C8051F124

50

128

8.25K

12+8

100

C8051F125

50

128

8.25K

12+8

64

C8051F126

50

128

8.25K

10+8

100

C8051F127

50

128

8.25K

10+8

64

C8051F13x

C8051F130

100

128

8.25K

10

100

C8051F131

100

128

8.25K

10

64

C8051F132

100

64

8.25K

10

100

C8051F133

100

64

8.25K

10

64

C8051F2xx

C8051F206

25

8

1.25K

12

48

C8051F220

25

8

256

8

48

C8051F221

25

8

256

8

32

C8051F226

25

8

1.25K

8

48

C8051F230

25

8

256

-

48

C8051F231

25

8

256

-

32

C8051F236

25

8

1.25K

-

48

C8051F30x

C8051F300

25

8

256

8

11

2% Osc

C8051F300P

25

8

256

8

DIP14

2% Osc

C8051F301

25

8

256

-

11

2% Osc

C8051F302

25

8

256

8

11

C8051F303

25

8

256

-

11

C8051F304

25

4

256

-

11

C8051F305

25

3

256

-

11

C8051F31x

C8051F310

25

16

1.28K

10

32

2% Osc

C8051F311

25

16

1.28K

10

28

2% Osc

C8051F32x

C8051F320

25

16

2.3K

10

32

Osc + USB

C8051F321

25

16

2.3K

10

28

Osc + USB

C8051F33x

C8051F330

25

8

768

10

20

Osc

C8051F330P

25

8

768

10

DIP14

Osc

C8051F331

25

8

768

-

20

Osc

Всі мікроконтролери фірми Silicon Laboratories оснащені удосконаленим мікроконтролерним ядром CIP-51, повністю сумісним з набору інструкцій зі стандартним MCS-51™ ядром[ ]. Це дозволяє використовувати при розробці програмного забезпечення стандартні х51 орієнтовані асемблери і компілятори мов високого рівня (С-51, PL/M-51, FORTRAN-51, PASCAL-51 та ін.), а також бібліотеки підпрограм, створені різними колективами за десятиліття існування х51-сумісних мікроконтролерів. Мікроконтролерне ядро ​​(CIP-51) містить повний набір периферійних вузлів, стандартний для MCS-51. Залежно від типу сімейства, ядро ​​може містити 3, 4 або 5 таймерів-лічильників, один або два послідовних порти UART, як мінімум 256 байт вбудованої оперативної пам'яті, 128-байт регістр спеціальних функцій SFR (Special Function Register). Ядро також забезпечує керування лініями портів введення/виведення, яких мікроконтролери різних сімейств можуть мати від 1 до 8 (тобто від 8 до 64 ліній введення/виведення). Також, достоїнством цього ядра є вбудована апаратура налагодження. Ядро забезпечує безпосереднє керування аналоговими і цифровими підсистемами мікроконтролера через відповідні регістри SFR. Таким чином, ядро ​​CIP-51 з одного боку забезпечує повну сумісність зі стандартним х51 сумісним ядром, з іншого має значно ширші апаратні можливості за рахунок поповнення вбудованою цифровою і аналоговою периферією. Структурна схема ядра CIP-51 показана на рисунку 1.

Безсумнівно, найважливішою перевагою ядра CIP-51 є вдосконалена конвеєрна архітектура, яка дозволяє значно збільшити продуктивність у порівнянні зі стандартною х51 (8051) архітектурою. У мікроконтролерах зі стандартною архітектурою 8051 всі інструкції, за винятком MUL і DIV, виконувалися за 12 або 24 машинних тактів. При цьому максимальна тактова частота для більшості х51 сумісних мікроконтролерів становила 12-24 МГц, і лише деякі мікроконтролери могли працювати на вищих частотах. Модернізоване ядро ​​CIP-51 виконує 70% інструкцій за один або два машинних такта, і взагалі не має інструкцій, що виконуються більш ніж за вісім машинних тактів. При цьому, практично всі мікроконтролери фірми Silicon Laboratories (27 типів, 72%) можуть працювати при частоті тактового генератора 25МГц, шість мікроконтролерів працюють на частотах до 20МГц (16%), і чотири нових мікроконтролера сьомого сімейства (C8051F12x) функціонують на частотах до 100Мгц. При цьому, відповідно розвивається пікова (гранична) продуктивність 25, 20 і 100 мільйонів інструкцій у секунду - MIPS (Million Instructions Per Second). Як приклад на рисунку 2 показано співвідношення граничної продуктивності деяких поширених мікроконтролерів в порівнянні з граничною продуктивністю мікроконтролерів фірми Silicon Laboratories при тактовій частоті 25МГц.

Рисунок 1 - Структура ядра CIP-51


Рисунок 2 - Співвідношення граничної продуктивності деяких мікроконтролерів

Ще однією важливою перевагою мікропроцесорного ядра CIP-51 є наявність вбудованої апаратної підсистеми налагодження програмного забезпечення. Зв'язок з підсистемою мікроконтролера здійснюється через послідовний інтерфейс JTAG, відповідний IEEE 1149.1. При цьому, забезпечуються як режим внутрішньосистемного програмування - ISP (In System Programarable), так і власне режим відладки. При програмуванні можливий запис, як усього масиву програми, так і модифікація окремих байтів. Природно, що вміст пам'яті програм може також читатися і звірятися з оригіналом. Вміст будь-якого байта програм може читатися або змінюватися з використанням інструкцій MOVC або MOVX, що також дозволяє здійснювати незалежне зберігання даних і оперативно їх модифікувати під крування програми.

PAGE   \* MERGEFORMAT 56


 

А также другие работы, которые могут Вас заинтересовать

55653. ПУТЕШЕСТВИЕ НА ОСТРОВ РОБИНЗОНА 55 KB
  Географические координаты точек Атмосфера география способствовать развитию речи; развивать пространственное мышление; развивать коммуникативные навыки при работе в группах; развивать познавательный интерес и географическое мышление учащихся; способствовать...
55654. Экологическое воспитание как социально-педагогическая проблема 57 KB
  Сколько нужно посадить молодых тополей чтобы они заменили пять бездумно срубленных десятилетних деревьев Если каждый год вы будите мусорить сколько лет понадобится для того чтобы весь бумажный мусор разложился...
55655. КОНЦЕПЦІЯ ПРАВОВОЇ ОСВІТИ І ПРАВОВОГО ВИХОВАННЯ ШКОЛЯРІВ 79 KB
  Нарізним стрижнем цієї культури є правосвідомість особистості яка включає отримання системних наукових знань про право правопорядок і його охорону та виховання емоційно-оціночного ставлення до права і правопорядку.
55656. Соціалізація творчої особистості у виховному процесі 60.5 KB
  Одним із стратегічних завдань реформування освіти в Україні згідно з державною національною програмою Освіта є формування освіченої творчої особистості становлення її фізичного і морального здоров’я.
55657. Подорож до Смішариків 31 KB
  Мета: Закріпити вміння дітей рахувати в межах 5 цифри в межах 5 і позначати кількість відповідною цифрою. Продовжувати вчити дітей ділити предмети на 24 рівні частини порівнювати ціле і частини.
55658. План-сценарій проведення гри «Щасливий випадок» 29 KB
  Мета: вивчення рівня психолого-педагогічних знань вихователів з даної проблеми. Нікітіна Що він вважав за головне в роботі з дітьми Які книги Вам відомі Які ігри за його методикою Ви знаєте II Гейм Заморочки...
55659. Патріотичне виховання дошкільників 37.5 KB
  Мета: Розвивати патріотичні почуття, зв’язне мовлення, увагу, мислення, образну пам'ять, музичний слух. Виховувати любов до рідної землі, природи, народних ігор та бережне ставлення до навколишнього середовища.
55660. Методичні прийоми впровадження елементів технології в курс «Трудового навчання» (5 клас) 38.5 KB
  Вчитель демонстрував готовий виріб пояснював його конструкцію виконував на шкільній дошці технічний малюнок ставив розміри. Вчитель демонструє готовий виріб та його технічний малюнок з’ясовує разом з учнями з яких деталей складається виріб та розміри деталей.