По-голямата част от електронните продукти изискват микроконтролер или микропроцесор да служи като мозък. За напреднали продукти, които се нуждаят от високоскоростни възможности за обработка (т.е. смартфон или таблет), е необходим микропроцесор, в противен случай микроконтролерът обикновено е най-доброто решение. Като примери, Arduino се базира на микроконтролер и Raspberry Pi е базиран на микропроцесор.
Най-вероятно дизайнът на вашата електроника ще се нуждае от микроконтролер. Като цяло микроконтролерът може да се разглежда като компютър, вграден в една интегрална схема, която съдържа процесор, памет и различни периферни устройства. Има много възможности за избор на микроконтролери, може би един огромен избор.
Въпреки че търсенето в Google може да ви насочи в правилната посока, аз препоръчвам да търсите микроконтролери на основните дистрибутори на електронни компоненти като Digikey, Arrow и Mouser. Това ще ви позволи да ограничите търсенето само до микроконтролери, които са активно достъпни. Той също така ви позволява бързо да сравнявате цените.
В началото на проекта е добра идея да се направи блокова диаграма на системата, която си представяте. Какви неща ще свържете с микроконтролера?
Системната блокова диаграма е безценна за това ранно планиране и може да ви каже колко входни и изходни (I / O) игли и серийни комуникационни портове са необходими за проекта.
Микроконтролерите могат да включват голямо разнообразие от периферни устройства. Следващият списък е част от функциите, които могат да бъдат намерени на съвременните микроконтролери.
Памет: Повечето налични микроконтролери включват вградена FLASH и RAM памет. FLASH е енергонезависима памет, използвана за съхранение на програмата, а RAM е енергонезависима памет, използвана за временно съхранение. Някои микроконтролери също включват EEPROM памет за постоянно съхраняване на данни.
Цифров вход и изход с общо предназначение (GPIO): Това са щифтове за логическо ниво, използвани за въвеждане и извеждане. Обикновено те могат да потънат или да се източат до няколко десетки мелници и могат да бъдат конфигурирани като отворен дренаж или издърпване.
Аналогов вход: Повечето микроконтролери имат възможност точно да прочетат аналогово напрежение. Аналогови сигнали се вземат от микроконтролера чрез аналогово-цифров преобразувател (ADC).
Аналогов изход: Аналогови сигнали могат да бъдат генерирани от микроконтролера чрез цифрово-аналогов преобразувател (ЦАП) или генератор на импулсна ширинна модулация (ШИМ). Не всички микроконтролери включват DAC, но те предлагат PWM възможности.
В програмирането на вериги (ISP): ISP ви позволява да програмирате микроконтролер, докато той е инсталиран в схемата на приложението, вместо да се налага да го премахвате за програмиране. Двата най-често използвани протокола за ISP са JTAG и SWD.
Безжична връзка: Ако вашият продукт се нуждае от безжични възможности, има специализирани микроконтролери, които предлагат Bluetooth, WiFi, ZigBee и други безжични стандарти.
Всички микроконтролери осигуряват някакъв вид серийна комуникация. Различните последователни комуникационни протоколи, които обикновено се предлагат с микроконтролери, са описани по-долу:
Универсален асинхронен приемник (UART) е сериен порт, който предава цифрови думи, обикновено с дължина от 7 до 8 бита, между стартов бит и допълнителен бит за паритет и един или два стоп-бита. UART обикновено се използва заедно с други стандарти като RS-232 или RS-485.
UART е най-старият тип серийна комуникация. UART е асинхронен протокол, което означава, че няма тактов сигнал. Много микроконтролери също включват синхронна версия на UART, наречена USART.
Сериен периферен интерфейс (SPI): SPI се използва за серийна комуникация на къси разстояния между микроконтролера и периферните устройства. SPI е синхронен протокол, което означава, че включва тактов сигнал за синхронизация. SPI е 4-жилен стандарт, който включва данни, изходни данни, часовник и сигнали за избор на чип.
Интер интегрална схема (I2C): I2C също е написана като I2C е двужилна серийна шина, използвана за комуникация между микроконтролера и други чипове на дъската. Подобно на SPI, I2C също е синхронен протокол. Въпреки това, за разлика от SPI, I2C използва един ред за извеждане на данни и данни. Също така вместо сигнал за избор на чип, I2C използва уникален адрес за всяка периферия. I2C има предимството да използва само 2 жици, но е по-бавен от SPI.
Универсалната серийна шина (USB) е стандарт, познат на повечето хора. USB е един от най-бързите серийни комуникационни протоколи. Обикновено се използва за свързване на периферни устройства, които изискват големи количества трансфер на данни.
Controller Area Network (CAN) е сериен комуникационен стандарт, разработен специално за използване в автомобилни приложения.
Има няколко ядра микроконтролер, които имат известна известност и си струва да опишат. По-долу са четири от най-често срещаните:
ARM Cortex-M
32-битовата ARM Cortex M серия е една от най-често използваните ядра на микроконтролера, използвани днес. ARM всъщност не произвежда и не продава микроконтролери, вместо това те лицензират своята архитектура на други производители на чипове.
Много компании предлагат Cortex-M микроконтролери, включително ST Microelectronics, Freescale Semiconductor, Silicon Labs, Texas Instruments и Atmel.
Микроконтролерите от серията Cortex M са любимият ми избор за продукти, които ще бъдат пуснати на пазара. Те са евтини, мощни и широко използвани.
8051
8-битният 8051 микроконтролер е разработен от Intel още през 1980 г. Това е най-старото ядро на микроконтролера, което все още се използва днес. В момента 8051 се предлага в модерни версии, продавани от поне 8 различни полупроводникови производителя. Например популярният Bluetooth Low-Energy чип от CSR (CSR101x) използва 8051 ядро.
PIC
PIC е семейство от микроконтролери от Microchip. Те са много популярни и предлагат широк спектър от опции. Броят на щифтовете, стилът на пакета и изборът на периферни устройства за чип се предлагат в почти безкраен набор от комбинации.
Atmel AVR
Линията на микроконтролера, известна като AVR от Atmel, е най-известна с това, че е мозък в повечето версии на Arduino. Така че за много производители това е лесен преход от Arduino към микроконтролер Atmel AVR. Въпреки това установих, че обикновено можете да получите едно от другите ядра с подобна или по-добра производителност за няколко долара по-евтино.
След като сте избрали микроконтролера, следващата стъпка е проектиране на веригата на микроконтролера и свързване на всички периферни устройства. Ще обсъждам тази тема за следващата си статия в тази поредица.
Искате ли да научите повече за проектирането на електронен продукт? След това проверете подробното ръководство за две части Как да разработим и създадем прототип на нов електронен продукт.