Мікроконтролер

Матеріал з Вікіпедії — вільної енциклопедії.
Перейти до: навігація, пошук
Плата з мікроконтролером AT89C2051

Мікроконтро́лер (англ. microcontroller), або однокристальна мікроЕОМ — виконана у вигляді мікросхеми спеціалізована мікропроцесорна система, що включає мікропроцесор, блоки пам'яті для збереження коду програм і даних, порти вводу-виводу і блоки зі спеціальними функціями (лічильники, компаратори, АЦП та інші).

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

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

Історія[ред.ред. код]

Перший контролер був розроблений в 1971 році інженером англ. Gary W. Boone, співробітником «Texas Instruments». У 1980 році фірма Intel випускає мікроконтролер «i8048». Трохи пізніше в цьому ж році «Intel» випускає наступний мікроконтролер: «i8051». Вдалий набір периферійних пристроїв, можливість гнучкого вибору зовнішньої або внутрішньої програмної пам'яті і прийнятна ціна забезпечили цьому мікроконтролеру успіх на ринку. З погляду технології мікроконтролер i8051 був для свого часу дуже складним виробом — у кристалі було використано 128 тисяч транзисторів, що в 4 рази перевищувало кількість транзисторів в 16-розрядному мікропроцесорі i8086.

На сьогоднішній день існує більше 200 модифікацій мікроконтролерів, що сумісних з i8051, випускаються двома десятками компаній, і великої кількості мікроконтролерів інших типів. Популярністю у розробників користуються 8-бітові мікроконтролери PIC від фірми «Microchip Technology» і «AVR» від фірми «Atmel».

Опис[ред.ред. код]

Блок-схема мікроконтролера i8051

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

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

Обмеження за ціною і енергоспоживанням стримують також зростання тактової частоти контроллерів. Хоча виробники прагнуть забезпечити роботу своїх виробів на високих частотах, вони, в той же час, надають замовникам вибір, випускаючи модифікації, розраховані на різні частоти і напругу живлення. У багатьох моделях мікроконтролерів використовується статична пам'ять для ОЗП і внутрішніх регістрів. Це дає контролеру можливість працювати на менших частотах і навіть не втрачати дані при повній зупинці тактового генератора. Часто передбачені різні режими енергозбереження, в яких відключається частина периферійних пристроїв і обчислювальний модуль.

Окрім ОЗП, мікроконтролер може мати вбудовану незалежну пам'ять для зберігання програми і даних. У багатьох контролерах взагалі немає шин для підключення зовнішньої пам'яті. Найбільш дешеві типи пам'яті допускають лише одноразовий запис. Такі пристрої підходять для масового виробництва в тих випадках, коли програма контролера не оновлюватиметься. Інші модифікації контролерів мають можливість багатократного перезапису незалежної пам'яті. На відміну від процесорів загального призначення, в мікроконтролерах часто використовується гарвардська архітектура.

Периферія[ред.ред. код]

Неповний список периферії, яка може бути присутнім в мікроконтролерах, включає:

Програмування[ред.ред. код]

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

Архітектури мікроконтролерів[ред.ред. код]

Станом на 2011 рік є декілька архітектур мікроконтролерів:

Наведені лише унікальні архітектури мікроконтролерів. Мікроконтролери на базі стандартних індустріальних архітектур (таких, як Intel MCS-51, ARM, MIPS, PowerPC ISA) випускаються багатьма фірмами.

Див. також[ред.ред. код]

Посилання[ред.ред. код]