{{Parts infobox |image = |designers = |date = |vitamins = |materials = |transformations = |lifecycles = |parts = |techniques = |tools = |files = |suppliers = [[https://www.mouser.com/|Mouser]], [[https://www.digikey.com/|Digikey]] |git = }} [[Category:Parts]] [[Category:Electric parts]] =Introduction= A microcontroller (MCU for microcontroller unit) is a small computer on a single metal-oxide-semiconductor (MOS) integrated circuit (IC) chip. A microcontroller contains one or more CPUs (processor cores) along with memory and programmable input/output peripherals. Program memory in the form of ferroelectric RAM, NOR flash or OTP ROM is also often included on chip, as well as a small amount of RAM. Microcontrollers are designed for embedded applications, in contrast to the microprocessors used in personal computers or other general purpose applications consisting of various discrete chips. In modern terminology, a microcontroller is similar to, but less sophisticated than, a system on a chip (SoC). An SoC may include a microcontroller as one of its components, but usually integrates it with advanced peripherals like a graphics processing unit (GPU), a Wi-Fi module, or one or more coprocessors. =Challenges= * package types * package sizes * capacity and rating =Approaches= ======Hardware Comparison====== {| class="wikitable" |- ! rtos !! microcontroller !! board !! cost |- |[[https://www.tockos.org/hardware/|Tock OS]] || [[http://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-42023-ARM-Microcontroller-ATSAM4L-Low-Power-LCD_Datasheet.pdf|SAM4 series]] || DuetWifi+ and clones || $80 - $200 |- |[[https://zinc.rs/|Zinc embedded OS]], [[https://reprap.org/wiki/RepRap_Firmware|RepRap Firmware]]|| [[https://www.st.com/resource/en/datasheet/dm00037051.pdf|STM32F407]], [[https://www.nxp.com/products/processors-and-microcontrollers/arm-microcontrollers/general-purpose-mcus/lpc1700-cortex-m3/512kb-flash-64kb-sram-ethernet-usb-lqfp100-package:LPC1768FBD100|LPC1768]] || [[https://reprap.org/wiki/Smoothieboard|Smoothieboard]], [[https://reprap.org/wiki/SKR|SKR]] 1.3, 1.4 [[https://www.ebay.com/itm/Bundle-SKR-PRO-V1-1-ARM-32bit-3D-Printer-Controller-W-5pcs-TMC2130-V3-0/392423369802?hash=item5b5e416c4a:g:zHkAAOSwN9NdQHFc|SKR Pro]]|| |- | || [[https://www.nxp.com/docs/en/data-sheet/LPC1759_58_56_54_52_51.pdf|LPC1758FBD80]] || [[https://reprap.org/wiki/R2C2_RepRap_Electronics|R2C2]] |- |[[https://reprap.org/wiki/RepRap_Firmware|RepRap Firmware]] || [[http://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-11057-32-bit-Cortex-M3-Microcontroller-SAM3X-SAM3A_Datasheet.pdf|SAM3]] || [[https://reprap.org/wiki/Duet|Duet]] || |- | [[https://marlinfw.org/|Marlin]], [[https://github.com/timschmidt/buildlog-lasercutter-marlin|Laser Marlin]] || [[http://ww1.microchip.com/downloads/en/DeviceDoc/Atmel-2549-8-bit-AVR-Microcontroller-ATmega640-1280-1281-2560-2561_datasheet.pdf|Atmega 2560]] || Rambo, MKS Base || |- | || [[https://en.wikipedia.org/wiki/Parallax_Propeller|Parallax Propeller]] || || |- | [[https://github.com/MarlinFirmware/Marlin/issues/14345|Marlin 2.0]] || [[https://en.wikipedia.org/wiki/ESP32|ESP32]] || [[https://github.com/simon-jouet/ESP32Controller/tree/r2|R2]] |} =Development targets= =References= * [[https://en.wikipedia.org/wiki/Microcontroller|Wikipedia: Microcontroller]]