Top 8 Popular Microcontrollers Among Makers

Top 8 Popular Microcontrollers Among Makers

12659
Views
1 Comments

At the heart of any embedded electronics device, either on a DIY or professional product level is a microcontroller. They run the codes/firmware that helps developers obtain inputs from sensors and tie it to actions executed through actuators. While they are usually developed as general-purpose components, MCUs are built with certain features and functionalities that make them suitable and (or) preferred by certain developers for certain applications, use cases, or scenarios. These features and functionalities have increased to meet current technological demands, making the microcontrollers not just more powerful, but more diverse, creating a selection headache for designers.  Today’s article will, in no particular order, highlight the 8 most popular microcontrollers based on how often they have featured in products and the size of the communities around them.

Ready? let’s go

1. STM32F103C8T6

The STM32F10C8T6 is a popular member of the STM32F103xx medium-density performance line family of microcontrollers that feature a high-performance ARM® Cortex®-M3 32-bit RISC core operating at a 72 MHz frequency and possess an extensive range of enhanced I/Os and peripherals connected to two APB buses. All members of the STM32F103x family, including the CT86, offer two 12-bit ADCs, three general-purpose 16-bit timers plus one PWM timer, as well as standard and advanced communication interfaces: up to two I2Cs and SPIs, three USARTs, an USB and a CAN.

Features:

  • ARM® 32-bit Cortex®-M3 CPU Core – 72 MHz maximum frequency, 1.25 DMIPS/MHz (Dhrystone 2.1) performance at 0 wait state memory access – Single-cycle multiplication and hardware division
  • Memories
    • 64 or 128 Kbytes of Flash memory
    • 20 Kbytes of SRAM
  • Clock, reset and supply management
    • 2.0 to 3.6 V application supply and I/Os
    • POR, PDR, and programmable voltage detector (PVD)
    • 4-to-16 MHz crystal oscillator
    • Internal 8 MHz factory-trimmed RC
    • Internal 40 kHz RC – PLL for CPU clock
    • 32 kHz oscillator for RTC with calibration
  • Low-power Sleep, Stop and Standby modes
    • VBAT supply for RTC and backup registers
    • 2 x 12-bit, 1 µs A/D converters (up to 16 channels)
    • Conversion range: 0 to 3.6 V
    • Dual-sample and hold capability
    • Temperature sensor
  • DMA
    • 7-channel DMA controller
    • Peripherals supported: timers, ADC, SPIs, I 2Cs and USARTs
  • Up to 80 fast I/O ports
    • 26/37/51/80 I/Os, all mappable on 16 external interrupt vectors and almost all 5 V-tolerant
  • Debug mode – Serial wire debug (SWD) & JTAG interfaces
  • 7 timers
    • Three 16-bit timers, each with up to 4 IC/OC/PWM or pulse counter and quadrature (incremental) encoder input
    • 16-bit, motor control PWM timer with deadtime generation and emergency stop
    • 2 watchdog timers (Independent and Window)
    • SysTick timer 24-bit down counter
  • Up to 9 communication interfaces – Up to 2 x I2C interfaces (SMBus/PMBus)
    • Up to 3 USARTs (ISO 7816 interface, LIN, IrDA capability, modem control)
    • Up to 2 SPIs (18 Mbit/s)
    • CAN interface (2.0B Active)
    • USB 2.0 full-speed interface

Development Boards based on MCU:

  • Blue Pill

2. ATmega328

Arguably one of the most popular microcontrollers in the world, the Atmega328p has been the microcontroller of choice to a lot of designers who want to avoid the bulkiness of the Arduino boards, but retain the ease of programming, community support, and other amazing features associated with the Arduino development platform. It’s an 8-bit AVR microcontroller based on an advanced RISC architecture and combines 32KB ISP flash memory with read-while-write capabilities.

Features:

1KB EEPROM, 2KB SRAM, 23 general purpose I/O lines, 32 general purpose working registers, three flexible timer/counters with compare modes, internal and external interrupts,serial programmable USART, a byte-oriented 2-wire serial interface, SPI serial port, 6-channel 10-bit A/D converter (8-channels in TQFP and QFN/MLF packages), and

  • Program Memory – 32KB (Flash)
  • CPU Speed (MIPS/DMIPS) – 20
  • 1KB EEPROM
  • Digital Communication Peripherals – 1-UART, 2-SPI, 1-I2C
  • 2KB SRAM
  • 23 GPIO
  • 6-channel 10-bit A/D converter (8-channels in TQFP and QFN/MLF packages)
  • 5 software selectable power saving modes
  • 3 builtin Timers with compare modes – 2 8bit and 1 16bit
  • PWM pins – 6
  • programmable watchdog timer with internal oscillator
  • 32 general-purpose working registers,

Development Boards Based on MCU:

  • Arduino Nano
  • Arduino UNO
  • Arduino Pro Mini
  • Sparkfun Redboard
  • A host of other Arduino Clones

Standout Features:

  • Express Compatibility with the Arduino Development platform
  • Large community support due to relationship with Arduino

3. PIC16F877A

The PIC16F877A is arguably the most popular 8-bit microcontroller in the PIC family of MCUs. While it’s considered by some as old and past its time, the PIC16F877A is no doubt, still one of the most popular microcontrollers in the world. It is seen as the de-facto microcontroller for beginners looking to get into embedded development with PIC and it ends up as the microcontroller of choice for them when they become experts.

Features:

Some features of the PIC16F877A are provided below:

  • Total number of Pins – 40
  • Total number of ports – 5 (port A, port B, port C, port D, port E)
  • Operating Voltage – 2 to 5.5V
  • Number of input/output pins – 33
  • Number of ADC pins – 14
  • ADC Resolution – 10-bit
  • Number of Comparators – 2
  • Number of timers – 3
  • Communication protocols – UART, SPI, I2C
  • External Oscillator – up to 20Mhz
  • Program Memory – 14KB
  • RAM – 368 bytes
  • EEPROM – 256 bytes
  • Max PWM resolution – 10
  • Support both hardware pin and timer interrupts

Development Boards Based on MCU:

  • The PIC Development board

Dev boards are one of the reasons why PIC microcontrollers are increasingly becoming unpopular. While the PIC development boards are usually very good for beginners because they come with different components that aids learning, for the average designer, they are considered bulky and pretty much uninteresting to work with, as most of the components included are usually not needed by experienced designers.

4. Attiny85

Loved for their tiny form-factor, the ATtiny series of microcontrollers are considered as the go-to microcontroller for projects where a small form factor is desired, and the number of GPIOs required is low. Of all the microcontrollers in this series, the aTtiny85 is regarded as the most popular, presumably because it seems to have more I/O pins compared to others. While Microchip announced a new range of ATtiny chips with significant performance upgrades, the ATtiny85 is still revered, mostly because of the familiarity most designers have built with it over time.

Features:

Some features of the ATtiny85 include:

  • Total number of pins – 8
  • CPU type – RISC 8-Bit AVR
  • Operating Voltage – 1.8 – 5.5V
  • Program Memory – 8K
  • RAM Memory – 512Bytes
  • EEPROM Memory – 512Bytes
  • ADC Resolution – 10-Bit
  • Number of ADC pins – 4
  • Number of Comparators – 1
  • GPIO’s – 6
  • No of Timers – 2 8-bit timers
  • Communication Protocols-  SPI, I2C, and USART.
  • Number of PWM pins – 4
  • Maximum oscillator speed – Up to 20MHz

Development Boards Based on MCU:

  • Mini ATtiny85 USB
  • Digispark ATtiny85

Standout Features:

Stand out feature for the ATtiny85 will be their small form-factor and their relatively low power consumption features.

5. MSP430G2452

The MSP430 family of microcontrollers from TI are considered as some of the most modern microcontrollers and the most popular member of that family so far has been the MSP430G2452. The MSP430G2452 is a powerful, and relatively cheap microcontroller based on a 16-bit RISC CPU manufactured by Texas Instruments.

Features:

Some features of the MCU include:

  • Number of Comparator channels – 8
  • ADC channels – 8
  • Number of GPIO’s pins – 16
  • ADC Resolution – 10-Bit SAR
  • Number of Timers – 1 (16-bit)
  • Non-Volatile Memory – 8kB
  • Communication protocols – 1 I2C, 1 SPI
  • Low Supply Voltage Range – 1.8V – 3.6V
  • Low-Frequency Oscillator-32-kHz Crystal and also external Digital Clock Source
  • SRAM – 256kB
  • Active Mode Power consumption – 220microA at 1MHz

Development Boards Based on MCU:

  • MSP-EXP430G2 LaunchPad TI Development Board

Standout Features:

The MSP430 series of microcontrollers are famous for their low power features.

6. ESP8266

The popularity of the ESP8266 cannot be contested. It is unarguably one of the most impactful microcontrollers of the last decade and it definitely was one of the pacesetters for the current trend of microcontrollers with fused communication capabilities. Developed by Espressif Systems, the ESP8266 is a low-cost Wi-Fi microchip, with a full TCP/IP stack and microcontroller capability. Multiple versions of the MCU were created in quick succession and what started initially as a Wi-Fi module for microcontrollers quickly spurned off to a module like the ESP-12e which became the heart of several projects and products.

Features:

  • Processor: L106 32-bit RISC microprocessor core based on the Tensilica Xtensa Diamond Standard 106Micro running at 80 MHz
  • Memory:
    • 32 KiB instruction RAM
    • 32 KiB instruction cache RAM
    • 80 KiB user-data RAM
    • 16 KiB ETS system-data RAM
  • External QSPI flash: up to 16 MiB is supported (512 KiB to 4 MiB typically included)
  • IEEE 802.11 b/g/n Wi-Fi
    • Integrated TR switch, balun, LNA, power amplifier and matching network
    • WEP or WPA/WPA2 authentication, or open networks
  • 16 GPIO pins
  • SPI
  • I²C (software implementation)
  • I²S interfaces with DMA (sharing pins with GPIO)
  • UART on dedicated pins, plus a transmit-only UART can be enabled on GPIO2
  • 10-bit ADC (successive approximation ADC)

Development Boards Based on MCU:

There are over 100 development boards based on the different variations of the ESP8266. To mention a few, some of these boards include;

  • NodeMCU DevkIT
  • Wemos D1
  • Wemos D1 Mini
  • Adafruit Feather HUZZAH ESP8266
  • SparkFun ESP8266 Thing

Standout Features:

Some standout features of the ESP8266 includes;

  • Integrated WiFI and Microcontroller reduces BOM and sourcing related headaches
  • Low cost
  • pre-certified (FCC and CE)
  • large Community support
  • Compatibility with popular Platforms like the Arduino IDE

7. ESP32

An upgrade to the ESP8266, the esp32 has enjoyed great support and adoption since its release few years back. it is a low-cost, low-power system on a chip microcontroller with integrated Wi-Fi and dual-mode Bluetooth. it uses the Tensilica Xtensa LX6 microprocessor in both dual-core and single-core variations and includes built-in antenna switches, RF balun, power amplifier, low-noise receive amplifier, filters, and power management modules. Designed for modern applications, ESP32 also incorporates several security features like Cryptographic hardware acceleration, flash encryption, and secure boot.

Features:

Some features of the MCU include:

  • Processors:
    • CPU: Xtensa dual-core (or single-core) 32-bit LX6 microprocessor, operating at 160 or 240 MHz and performing at up to 600 DMIPS
    • Ultra-low power (ULP) co-processor
  • Memory: 520 KiB SRAM
  • Wireless connectivity:
    • Wi-Fi: 802.11 b/g/n
    • Bluetooth: v4.2 BR/EDR and BLE (shares the radio with Wi-Fi)
  • Peripheral interfaces:
    • 12-bit SAR ADC up to 18 channels
    • 2 × 8-bit DACs
    • 10 × touch sensors (capacitive sensing GPIOs)
    • 4 × SPI
    • 2 × I²S interfaces
    • 2 × I²C interfaces
    • 3 × UART
    • SD/SDIO/CE-ATA/MMC/eMMC host controller
    • SDIO/SPI slave controller
    • Ethernet MAC interface with dedicated DMA and IEEE 1588 Precision Time Protocol support
    • CAN bus 2.0
    • Infrared remote controller (TX/RX, up to 8 channels)
    • Motor PWM
    • LED PWM (up to 16 channels)
    • Hall effect sensor
    • Ultra-low-power analog pre-amplifier
  • Security:
    • IEEE 802.11 standard security features all supported, including WFA, WPA/WPA2 and WAPI
    • Secure boot
    • Flash encryption
    • 1024-bit OTP, up to 768-bit for customers
    • Cryptographic hardware acceleration: AES, SHA-2, RSA, elliptic curve cryptography (ECC), random number generator (RNG)
  • Power management:
    • Internal low-dropout regulator
    • Individual power domain for RTC
    • 5μA deep sleep current
    • Wake up from GPIO interrupt, timer, ADC measurements, capacitive touch sensor interrupt

Development Boards Based on MCU:

Like the ESP8266 there are a lot of development boards based on the ESP32. Some of these boards include;

  • HUZZAH32
  • ESP32-DevKitC
  • NodeMCU-32S
  • ESPduino32
  • ESP32 Thing

Standout Features:

Asides WiFi, ESP32 features Bluetooth and implements security and low power features that are not available in regular devices.

8. ATMEGA32U4

The Atmega32u4 is a low-power Microchip 8-bit AVR® RISC-based microcontroller featuring 32 KB self-programming flash program memory, 2.5 KB SRAM, 1 KB EEPROM, USB 2.0 full-speed/low-speed device, 12-channel 10-bit A/D-converter, and JTAG interface for on-chip-debug. The device is able to execute powerful instructions in a single clock cycle, enabling it to achieve up to 16 MIPS throughput at 16 MHz. This gives designers the ability to optimize power consumption versus processing speed.

Features:

  • Complies fully with Universal Serial Bus Specification Rev. 2.0
  • Supports data transfer rates up to 12 Mbit/s and 1.5 Mbit/s
  • Endpoint 0 for Control Transfers: Up to 64 bytes
  • Six Programmable Endpoints with In or Out Directions and with Bulk, Interrupt or Isochronous Transfers
  • Configurable Endpoints size up to 256 bytes in double bank mode
  • Fully independent 832 bytes USB DPRAM for endpoint memory allocation
  • Suspend/Resume Interrupts
  • CPU Reset possible on USB Bus Reset detection
  • 48 MHz from PLL for Full-Speed Bus Operation
  • USB Bus Connection/Disconnection on Microcontroller Request
  • A crystal-less operation for Low-Speed mode

Development Boards Based on MCU:

The Atmega32u4 is a popular microcontroller and is featured in several development boards some which include;

  • Teensy 2.0
  • Arduino Beetle
  • Arduino Pro Micro
  • Arduino Leonardo
  • Qwicc Pro
  • Arduino Leonardo Clones

There are diverse other microcontrollers out there but the community, projects, and products that have been built around these MCUs are hard to match.

About Emmanuel Odunlade
Email : emmaodunlade@gmail.com Website :

Hardware Design Engineer | #IoT Consultant |All things #ML | Entrepreneur | Serial Writer | Passionate about Innovation and technology as tools for solving problems in developing countries. Spare time is spent around writing and advocacy for the growth of the Maker/DIY Culture in Africa.

view all posts by emmanuel

1 Responses

  • 22 June, 2020 at 4:19 am

    The MSP430G2452 didn’t ring a bell, I’ll have to check it out. I mostly use the PIC and the 8266 for my needs.

Leave a Reply

Archives