
Лос микроконтролери или MCU (микроконтролер), са малки интегрални схеми или чипове, които интегрират компютър в себе си, тоест те надхвърлят процесора, включително процесор, памет и също така входно/изходни данни, всичко в един чип, въпреки че трябва да се разграничават от SoCs, които включват повече от това и са по-сложни.
Тези чипове са мозък на голям брой устройства които използваме в ежедневието си и присъстват в повече устройства, отколкото можете да си представите, от тези, които имате у дома, до вашите превозни средства, промишлени машини и т.н. Следователно, те са много важни днес и ще им посветим тази статия.
Освен това, трябва да се отбележи, че напоследък те придобиха доста голяма популярност благодарение на Интернет на нещата (IoT), тъй като поради малкият му размер, ниската консумация на енергия и ниската цена, са идеални за захранване на тези свързани устройства, без да е необходимо използването на по-модерни процесори. Освен това, както ще видим по-късно, те са чудесни и за производители и ентусиасти „Направи си сам“ електроника, с проекти като Arduino и др.
Какво може да прави един микроконтролер?

Лос микроконтролери, MCUМикроконтролерите са чипове, които могат да правят множество неща, точно като процесора с общо предназначение, с изключение на това, че интегрират и други компютърни компоненти като памет, шини и I/O система, така че на практика това е компютър на чип. Приложенията им могат да бъдат много разнообразни, от контролиране на температури или други параметри чрез сензори, генериране на някакъв вид изход въз основа на състоянието на входовете, за извършване на действия и т.н. Броят на приложенията може да бъде наистина огромен, като ограничението е почти вашето въображение и техническите възможности на самия микроконтролер, тъй като те обикновено имат ограничен размер на паметта и производителност.
Следователно, при избора на микроконтролер трябва да се вземат предвид много фактори, като например работната честота на устройството, архитектурата, на която е базирано, налична памет, броя на наличните пинове и вида и броя на необходимите външни компоненти. За щастие, има много различни производители и модели микроконтролери, от които да избирате, от най-простите до най-сложните, включително някои, закалени, за да издържат на екстремни условия в космоса, военни устройства, промишлени машини и други.
Какво е PIC?

Компанията Microchip разработи серия микроконтролери, които станаха много популярни на пазара, като например неговите известни PIC-овеСемейство устройства с различни размери на думите, като например 16-битови устройства, които могат да бъдат много гъвкави по отношение на възможността за програмиране и изпълнение на множество функции.
В допълнение, те имат a фантастична съвместима екосистема, което значително улеснява работата както за разработчиците, които ги използват, така и за програмистите, които разполагат с напълно съвместима IDE за програмиране на необходимия код.
Разбира се, PIC не е единствената архитектура, има също AVR, Super-H, SAM, ARM Cortex-M и др.
Архитектура и работа на микроконтролера

Въпреки че може да изглежда сложно да се интегрира всичко, като например процесорът, паметта и I/O систематаИстината е, че микроконтролерите са по-прости от много от усъвършенстваните процесори или графични процесори, използвани в съвременните компютри. Процесорите, интегрирани в тези микроконтролери, обикновено са по-прости, като процесорите отпреди десетилетия (напр. 8051 на Intel). Всъщност много микроконтролери са базирани на архитектури, разработени преди десетилетия.
Микроконтролерите могат да внедряват и други допълнителни или специализирани елементи: обработка на аналогови сигнали, управление на външен хардуер или вграден таймер за наблюдение, който да нулира чипа в случай на срив поради неправилно програмиране. Архитектурата на чипа може да бъде фиксирана или програмируема, което позволява устройството да бъде преконфигурирано за различни приложения.
Те също не изискват голям капацитет памет (те могат да бъдат памети от тип RAM, регистри, ROM като EEPROM, флаш памет и др.) и най-често включват само няколко KB или MB IDE има капацитета да хоства програмите, необходими за изпълнение на функциите. Всички те се зареждат в поредица от инструкции и данни, които IDE ще генерира от изходния код за програмиране на високо ниво, обикновено използван от разработчиците.
Видове микроконтролери

Както можете да си представите, има няколко видове микроконтролериВсеки един от тях има различни функции и възможности, така че приложенията, за които ще бъдат използвани, ще бъдат много различни.
Споменах преди, че най-важните фактори, които трябва да се вземат предвид при избора на микроконтролер, са неговата работна честота и количеството налична памет. Изискванията на приложението ще определят работната честота, но обикновено е най-добре да изберете устройство, което бягайте възможно най-бавно като същевременно отговаря на изискванията, търсейки по-голяма стабилност и надеждност поради критичните приложения, за които този тип чип обикновено е предназначен.
Къде се използват микроконтролери?

микроконтролери Те се използват в голямо разнообразие от приложенияКакто споменах по-рано, ще ги видите в домакински уреди и електронни устройства от всякакъв вид, в сухопътни, морски и въздушни превозни средства, сателити и космически кораби, ракети, промишлени машини и много други. Някои от най-известните примери са:
- АвтомобилнаТе се използват в много автомобилни приложения за управление на определени електронни аспекти на автомобилите. Например, те се използват често в съвременните системи за управление на двигателя за контрол на впръскването на гориво и времето за запалване. Те могат да бъдат намерени и в други бордови системи, като например системи за управление на трансмисията.
- ИндустрияМожете да ги намерите и в множество промишлени машини от всякакъв вид и във всички сектори. Те се използват в голямо разнообразие от различни системи, като например мониторинг и управление на машини, управление на процеси и събиране и анализ на данни.
- ПотреблениеМикроконтролерите се използват все по-често в потребителски устройства като домакински уреди, електронни устройства, използвани у дома и др. Дори компютрите често имат множество микроконтролери за изпълнение на различни задачи, в допълнение към процесора, графичния процесор и др.
- CommunicationsТе се използват особено в радиочестотни или други видове комуникационни системи. Използват се както в компютърни мрежи, така и в радиокомуникационно оборудване.
- Автоматизация на домаРазбира се, микроконтролерите са ключови за домашната автоматизация, автоматизирайки множество ежедневни задачи в интелигентните домове. Те често се използват в сензори и други устройства, които контролират и наблюдават системите на дома, като например автоматично напояване, повдигане или спускане на щори въз основа на условията на осветление и т.н.
- МедицинаМикроконтролерите се използват в много медицински приложения, от болнично оборудване до имплантирани медицински устройства, които контролират определени биомедицински параметри, пейсмейкъри и др.
- военени разбира се, те се използват в голямо разнообразие от военни приложения, като например оръжейни системи, системи за управление на полета и сензорни системи.
Предимства и недостатъци на микроконтролера
Предимства на използването на микроконтролери

El USO Микроконтролерите имат редица предимства в сравнение с други устройства, които биха могли да се използват за същите приложения. Акцентите включват:
- Изключително ниски изисквания за захранване, което ги прави идеални за приложения, захранвани от батерии, или за вградени или стенни системи с ниска консумация на енергия.
- Те имат бързо време за реакция, което ги прави подходящи за вградени приложения, изискващи контрол в реално време.
- Възможност за програмиране за изпълнение на голямо разнообразие от функции, за разлика от фиксираната електроника, която може да прави само едно нещо. Те често са способни да изпълняват сложни задачи, които биха били много трудни или невъзможни за изпълнение с дискретни компоненти. Това ги прави идеални за приложения, изискващи персонализирани решения.
- Те се предлагат в голямо разнообразие от различни пакети, което улеснява персонализирането на приложението, за да отговаря на специфични нужди.
- Друго голямо предимство на микроконтролерите е ниската им цена.
- Предлагат се в малки корпуси, което улеснява инсталирането им в голямо разнообразие от приложения.
Ограничения на микроконтролерите
Въпреки това, не всички предимства са микроконтролерите, те също имат... Някои недостатъци което също е важно да се подчертае. Например:
- Способността им да бъдат програмирани да изпълняват много различни функции ги прави много гъвкави, но също така затруднява отстраняването на неизправности. Ако дадена схема не работи правилно, може да бъде много трудно да се разбере защо, защото проблемът може да се дължи на дефектна програма или хардуерен проблем.
- Освен това, сложните приложения могат да изискват голямо количество памет и производителност на обработка, превъзхождаща тази на повечето микроконтролери на пазара.
- Липсата на езици за програмиране от високо ниво ограничава избора им. Тъй като обработват инструкции на машинен език от ниско ниво, може да е трудно да се правят промени в програма или да се отстраняват хардуерни проблеми.
Микроконтролери в Интернет на нещата (IoT)

Простотата на микроконтролерите ги прави лесни за използване в IoT устройства, като например интелигентни контакти, интелигентни ключове, интелигентни крушки, сензори за влажност, сензори за дим и други прости устройства. Сложните устройства обаче често изискват повече памет и процесорна мощност, което може да затрудни поместването на необходимата схема в компактно устройство, което води до необходимостта от избор на процесори и памет с по-голям капацитет вместо микроконтролер.
Освен това, тяхната гъвкавост и всички предимства, за които говорихме по-горе, са наистина интересни за тези устройства, които не изискват висок капацитет на паметта или висока производителност на обработката. Освен това, много от тях... устройствата зависят от батерия, така че тези нискоенергийни интегрални схеми са идеални.
Какво е Arduino?

Сигурен съм, че вече го познаваш. Arduino Това е популярна развойна платка с отворен код, базирана на микроконтролер. Тя е много достъпна и позволява лесното изпълнение на широк спектър от проекти, независимо дали е за любители или деца, които тепърва започват да се занимават с програмиране, електроника или роботика, или за по-професионална употреба. Всичко това е благодарение на богатата ѝ общност и екосистема, с пълноценно IDE, множество версии, отговарящи на различни нужди, налични аксесоари и други.
Тези платки Arduino са програмирани с помощта на език, подобен на C/C++, разработен от Arduino. Този език е достатъчно прост за разбиране и използване от начинаещи, но същевременно достатъчно мощен за създаване на сложни проекти на вашия компютър. Arduino IDEПопулярността на Arduino улеснява намирането на ресурси, части и други хора, интересуващи се от същите видове проекти. И така, какъв по-добър начин да започнете да се запознавате и да използвате микроконтролери от Arduino...
Какво е Arduino IDE?

Както казах преди, Arduino има страхотен IDE (Интегрирана среда за разработка)С този софтуер можете да създавате скици или програмни изходни кодове и след това да ги качвате в паметта на микроконтролера Arduino, като използвате USB кабел, свързан с вашия компютър. Това позволява на MCU да ги изпълни, за да изпълни желаните от вас функции.
Разбира се, Arduino IDE е от с отворен код, безплатно е и е достъпен за голямо разнообразие от платформи, включително macOS, Windows и Linux. И не само ще можете да програмирате платки Arduino, но също така поддържа програмиране на други съвместими микроконтролери, като AVR, PIC и др., както и платки, съвместими с Arduino…
Предимства на Arduino и Arduino IDE
Накрая бих искал да заявя някои проекти, които можете да създадете с тази Arduino IDE платформа и платката за разработка Arduino. Можете да направите това и с помощта на този език за програмиране на високо ниво, оставяйки превода в машинен код (единици и нули), разбираем за микроконтролера, в ръцете на IDE. Можете също така да използвате блоково-базиран език за тези, които не знаят как да програмират или за деца.
Проектите могат да бъдат много разнообразни, от създаване на проста аларма до разработване на сложна напоителна система за градина, включваща системи за домашна автоматизация, наблюдение на параметри, автоматизация на задачи и др. Както казах в началото, границата е почти твоето въображение.
Освен това, има голяма общност, готова да ви помогне, както и множество Допълнения и комплекти, специално разработени за Arduino, което ще ви улесни значително нещата. Не е като да започнете с чип като PIC или 8051 и да се налага да създавате всичко почти от нулата...
Сега сте запознати със света на микроконтролерите и знаете как можете да започнете от вкъщи или от училище...