We detect you are using an unsupported browser. For the best experience, please visit the site using Chrome, Firefox, Safari, or Edge. X

Motor Control Simplified


Prototyping your next motor control design doesn’t have to be hard. We offer a rapid prototyping solution that allows you to compile and flash a Simulink model of a motor control system into a dsPIC33 DSC or a PIC32 MCU with a single push of a button. Our Simulink blocksets and models support our devices and development boards for a complete hardware and software motor control solution.

 Six Steps to Simplify Your Motor Control Development


Step 1: Make sure that MPLAB® X Integrated Development Environment (IDE) and the Simulink tools are installed on your computer

System Requirements

For simulation, you will need

  • MATLAB R2013a or later, 32-bit or 64-bit Windows® operating system
  • Simulink
  • Fixed-Point Designer™

For code generation, you will also need

  • Simulink Coder™
  • MATLAB Coder™
  • Embedded Coder®

Compilation and programming of the code generated with this blockset requires the latest MPLAB® XC compiler and MPLAB X Integrated Development Environment (IDE).

Step 2: Build your Simulink model using:

Simulation blocks and code generation for motor control algorithms

Blocks for PWMs, ADCs and other peripherals for use in simulation and code generation

Used to simulate PMSM motor in Simulink

Step 3: Generate code using the Simulink embedded code generator

Step 4: Compile the MPLAB X IDE project and load code onto target MCU or DSCs

Demo examples are available for the following motor control development boards:

dsPICDEM™ MCHV-3 High-Voltage Motor Control Development Board

dsPICDEM MCLV-2 Low-Voltage Motor Control Development Board

Step 5: Connect your board to your motor

Step 6: Run your code to spin a motor

Other Helpful Resources


Motor Control with Embedded Coder® for Microchip MCUs

This webinar demonstrates how to use Simulink to generate motor control code for a dsPIC33EP DSC-based system

dsPIC33 Motor Control DSCs

Explore our portfolio of dsPIC33 devices with specialized motor control peripherals

MATLAB and Simulink Components from Microchip

Motor Control Library Blockset for MATLAB and Simulink


Simulation blocks and code generation for motor control algorithms

The Motor Control Library blockset contains several basic Simulink blocks that can be used to jump start model-based design of your motor control applications using the dsPIC33 family of DSCs and the PIC32MK and SAM E70 families of 32-bit MCUs. These blocks include reference frame transforms, a Proportional-Integral (PI) controller and trigonometric functions, all of which can be used with the Embedded Coder to generate efficient code by utilizing our Motor Control Library.

Print

Installation:

  • Download the Motor Control Library blockset
  • Unzip the archive file into a directory of your choice
  • Add this directory into the MATLAB search path, which makes the Motor Control Library Blockset appear in the Simulink Library Browser the next time you start MATLAB

Usage:

  • These blocks may be placed in a Simulink model like any other Simulink block
  • For best results in code generation, turn on Inline Parameters
  • The Proportional-Integral (PI) controller block requires mchp_MC_PISTATE_T in the MATLAB base workspace to contain a particular structure definition, which can be automatically set up by creating the required structure in the Simulink model's InitFcn
    • In a Simulink model using the Motor Control Library Blockset, select File > Model Properties > Model Properties > Callbacks > InitFcn
    • Add the ‘mchp_MC_PISTATE_T’ statement to the model initialization function shown in the InitFcn dialog box
    • Save the Simulink model
    • These steps need to be followed only once per new model file

Block Listing

Block Name Block Description
Clarke:ab-to-alphabeta
 

Clarke transform (ab → αβ)
2 → 2 transform from per-phase measurements (ab) to stationary orthogonal (αβ) reference frame
ClarkeInv:alphabeta-to-abc:input-swap Inverse Clarke transform (αβ → abc)
2 → 3 transform from stationary orthogonal (αβ) reference frame to per-phase values (abc)
Legacy form with swapped inputs
Park:alphabeta-to-dq Park transform (αβ → dq)
2 → 2 transform from stationary orthogonal (αβ) reference frame to rotating (dq) reference frame
ParkInv:dq-to-alphabeta Inverse Park transform (dq → αβ)
2 → 2 transform from rotating (dq) reference frame to stationary orthogonal (αβ) reference frame
PI-controller:antiwindup Proportional-integral controller with antiwindup
Sincos:table-interp Sine and cosine calculation (table-based with interpolation)
Arctan2:CORDIC Arctangent (xy → θ)
Compute angle of input coordinates (x,y) using the CORDIC algorith
SVM-generator:gain-and-phase-shift Space vector modulation
Legacy form, with gain and phase shift

MPLAB Device Blocks for Simulink


Code generation blocks for dsPIC33 DSCs and PIC32 and SAM7x support package for Embedded Coder

Create stand-alone applications from a Simulink discrete time model and with just one click generate, compile and load the code for your application onto your target device. The MPLAB Device Blocks for Simulink is a free set of user interfaces and Simulink peripheral blocks for developing complex designs based on dsPIC33 Digital Signal Controllers (DSCs) and PIC32 and SAM E70 microcontrollers (MCUs). The package also includes many examples in the form of demo models to further simplify your development, including a complete BLDC motor control application.

Supported Peripherals:

  • Digital I/Os
  • Analog-to-Digital Converters (ADCs)
  • Motor control Pulse-Width Modulators (PWMs)
  • Interrupts, resets and change notifications
  • Output Compares (OCs) and Input Captures (ICs)
  • Quadrature Encoder Interfaces (QEIs)
  • I2C, SPI and UART communication

PMSM Simulink Motor Model


Simulate a PMSM Motor in Simulink

Our PMSM Motor Model blockset is a set of components to be used with the Simulink simulation tool. These blocks allow you to model a closed-loop control system of a PMSM using our range of MCUs and dsPIC33 DSCs. This PMSM model assists in your development, testing and understanding of motor control systems based on your motor’s specification. You can use this free simulation block to confirm the behavior of real systems and explore the system behavior under conditions that are impossible or cumbersome to test in the real world.

Products

We're having trouble displaying information on this page right now. Please visit our Parametric Chart tool to search these products and their data.
We're having trouble displaying information on this page right now. Please visit our Parametric Chart tool to search these products and their data.
View All Parametrics
Product Status Automotive Recommended 5K Pricing CPU Type Architecture Max CPU Speed (MHz) Program Memory Size (KB) RAM (KB) DRAM Interface Data EEPROM/HEF (Bytes) Auxiliary Flash (KB) SDIO/SD-CARD/eMMC Temperature Range Operation Voltage Range Graphics Controller/GPU Direct Memory Access Channels ADC Input Max ADC Resolution (Bits) Number of DACs USB Interface Number of USB Modules Number of Comparators Timers Capture/Compare/PWM Peripherals Motor Control PWM Outputs UART/SPI/I2C Number of Op Amps I2S Peripheral Pin Select / Pin Muxing Vbat/Vddbu battery backup Low Power External Memory Bus Interface QSPI Quadrature Encoder Interface Crypto Engine Hardware Touch Peripheral Number of CAN Modules Type of CAN module Ethernet Pin count Packages
ATSAMD20E14 In Production No $1.16 Cortex-M0+ 32 48 16 2 No 0 0 0 -40 to 105 1.62V - 3.63V No 0 10 12 1 None 0 2 5 x 16-bit 2 x 32-bit 12 -Std. PWM 16-bit PWM resolutions 6 -Input Capture 0 4 -UART 4 -SPI 4 -I2C 0 0 Yes No Yes No 0 0 No PTC 0 None None 32 32/TQFP, 32/VQFN
ATSAMD20G14 In Production No $1.21 Cortex-M0+ 32 48 16 2 No 0 0 0 -40 to 105 1.62V - 3.63V No 0 14 12 1 None 0 2 5 x 16-bit 2 x 32-bit 12 -Std. PWM 16-bit PWM resolutions 8 -Input Capture 0 6 -UART 6 -SPI 6 -I2C 0 0 Yes No Yes No 0 0 No PTC 0 None None 48 48/TQFP, 48/VQFN
ATSAMD20J14 In Production No $1.28 Cortex-M0+ 32 48 16 2 No 0 0 0 -40 to 105 1.62V - 3.63V No 0 20 12 1 None 0 2 5 x 16-bit 2 x 32-bit 16 -Std. PWM 16-bit PWM resolutions 8 -Input Capture 0 6 -UART 6 -SPI 6 -I2C 0 0 Yes No Yes No 0 0 No PTC 0 None None 64 64/TQFP, 64/UFBGA, 64/VQFN
ATSAMD09C13 In Production No $0.71 Cortex-M0+ 32 48 8 4 No 0 0 0 -40 to 85 2.4V - 3.6V No 6 5 12 0 None 0 0 2 x 16-bit 1 x 32-bit 0 -Std. PWM 0-bit PWM resolutions 3 -Input Capture 6 2 -UART 2 -SPI 2 -I2C 0 0 Yes No No No 0 0 No 0 None None 14 14/SOIC
ATSAMD09D14 In Production No $0.80 Cortex-M0+ 32 48 16 4 No 0 0 0 -40 to 85 2.4V - 3.6V No 6 5 12 0 None 0 0 2 x 16-bit 1 x 32-bit 0 -Std. PWM 0-bit PWM resolutions 3 -Input Capture 6 2 -UART 2 -SPI 2 -I2C 0 0 Yes No No No 0 0 No 0 None None 14 24/VQFN
ATSAMD10C13 In Production No $0.76 Cortex-M0+ 32 48 8 4 No 0 0 0 -40 to 105 1.62V - 3.63V No 6 5 12 1 None 0 2 2 x 16-bit 1 x 32-bit 2 -Std. PWM 16-bit PWM resolutions 3 -Input Capture 8 2 -UART 2 -SPI 2 -I2C 0 0 Yes No Yes No 0 0 No PTC 0 None None 14 14/SOIC
ATSAMD10C14 In Production No $0.82 Cortex-M0+ 32 48 16 4 No 0 0 0 -40 to 105 1.62V - 3.63V No 6 5 12 1 None 0 2 2 x 16-bit 1 x 32-bit 2 -Std. PWM 16-bit PWM resolutions 3 -Input Capture 8 2 -UART 2 -SPI 2 -I2C 0 0 Yes No Yes No 0 0 No PTC 0 None None 14 14/SOIC
ATSAMD10D13 In Production No $0.80 Cortex-M0+ 32 48 8 4 No 0 0 0 -40 to 105 1.62V - 3.63V No 6 10 12 1 None 0 2 2 x 16-bit 1 x 32-bit 4 -Std. PWM 16-bit PWM resolutions 3 -Input Capture 8 3 -UART 3 -SPI 3 -I2C 0 0 Yes No Yes No 0 0 No PTC 0 None None 24 20/SOIC, 24/VQFN
ATSAMD10D14 In Production No $0.86 Cortex-M0+ 32 48 16 4 No 0 0 0 -40 to 105 1.62V - 3.63V No 6 10 12 1 None 0 2 2 x 16-bit 1 x 32-bit 4 -Std. PWM 16-bit PWM resolutions 3 -Input Capture 8 3 -UART 3 -SPI 3 -I2C 0 0 Yes No Yes No 0 0 No PTC 0 None None 24 20/SOIC, 20/WLCSP, 24/VQFN
ATSAMD11C14 In Production No $0.87 Cortex-M0+ 32 48 16 4 No 0 0 0 -40 to 105 1.62V - 3.63V No 6 5 12 1 Full Speed 1 2 2 x 16-bit 1 x 32-bit 4 -Std. PWM 16-bit PWM resolutions 3 -Input Capture 8 2 -UART 2 -SPI 2 -I2C 0 0 Yes No Yes No 0 0 No PTC 0 None None 14 14/SOIC
ATSAMD11D14 In Production No $0.96 Cortex-M0+ 32 48 16 4 No 0 0 0 -40 to 105 1.62V - 3.63V No 6 10 12 1 Full Speed 1 2 2 x 16-bit 1 x 32-bit 4 -Std. PWM 16-bit PWM resolutions 3 -Input Capture 8 3 -UART 3 -SPI 3 -I2C 0 0 Yes No Yes No 0 0 No PTC 0 None None 24 20/SOIC, 20/WLCSP, 24/VQFN
ATSAMD21E15L In Production No $1.35 Cortex-M0+ 32 48 32 4 No 1024 0 0 -40 to 125 1.62V - 3.63V No 12 14 12 1 None 0 4 5 x 16-bit 2 x 32-bit 6 -Std. PWM 16-bit PWM resolutions 11 -Input Capture 12 5 -UART 5 -SPI 5 -I2C 0 1 Yes No Yes No 0 0 No 0 None None 32 32/TQFP, 32/VQFN
ATSAMC20E15A In Production Yes $1.48 Cortex-M0+ 32 48 32 4 No 1024 0 0 -40 to 125 2.7V - 5.5V No 6 10 12 0 None 0 2 5 x 16-bit 2 x 32-bit 10 -Std. PWM 32-bit PWM resolutions 10 -Input Capture 12 4 -UART 4 -SPI 4 -I2C 0 0 Yes No No No 0 0 No PTC 0 None None 32 32/TQFP, 32/VQFN
ATSAMC20G15A In Production Yes $1.77 Cortex-M0+ 32 48 32 4 No 1024 0 0 -40 to 125 2.7V - 5.5V No 6 12 12 0 None 0 2 5 x 16-bit 2 x 32-bit 10 -Std. PWM 32-bit PWM resolutions 10 -Input Capture 14 4 -UART 4 -SPI 4 -I2C 0 0 Yes No No No 0 0 No PTC 0 None None 48 48/TQFP, 48/VQFN
ATSAMC20J15A In Production Yes $1.84 Cortex-M0+ 32 48 32 4 No 1024 0 0 -40 to 125 2.7V - 5.5V No 6 12 12 0 None 0 2 5 x 16-bit 2 x 32-bit 10 -Std. PWM 32-bit PWM resolutions 10 -Input Capture 14 4 -UART 4 -SPI 4 -I2C 0 0 Yes No No No 0 0 No PTC 0 None None 64 64/TQFP, 64/VQFN
ATSAMC21E15A In Production Yes $1.42 Cortex-M0+ 32 48 32 4 No 1024 0 0 -40 to 125 2.7V - 5.5V No 12 10 12 1 None 0 4 5 x 16-bit 2 x 32-bit 10 -Std. PWM 32-bit PWM resolutions 10 -Input Capture 14 4 -UART 4 -SPI 4 -I2C 0 0 Yes No No No 0 0 No PTC 1 CAN-FD None 32 32/TQFP, 32/VQFN
ATSAMC21G15A In Production Yes $1.76 Cortex-M0+ 32 48 32 4 No 1024 0 0 -40 to 125 2.7V - 5.5V No 12 12 12 1 None 0 4 5 x 16-bit 2 x 32-bit 10 -Std. PWM 32-bit PWM resolutions 10 -Input Capture 14 6 -UART 6 -SPI 6 -I2C 0 0 Yes No No No 0 0 No PTC 2 CAN-FD None 48 48/TQFP, 48/VQFN
ATSAMC21J15A In Production Yes $1.89 Cortex-M0+ 32 48 32 4 No 1024 0 0 -40 to 125 2.7V - 5.5V No 12 12 12 1 None 0 4 5 x 16-bit 2 x 32-bit 10 -Std. PWM 32-bit PWM resolutions 10 -Input Capture 14 6 -UART 6 -SPI 6 -I2C 0 0 Yes No No No 0 0 No PTC 2 CAN-FD None 64 64/TQFP, 64/VQFN
ATSAMD20E15 In Production Yes $1.20 Cortex-M0+ 32 48 32 4 No 0 0 0 -40 to 125 1.62V - 3.63V No 0 10 12 1 None 0 2 5 x 16-bit 2 x 32-bit 12 -Std. PWM 16-bit PWM resolutions 6 -Input Capture 0 4 -UART 4 -SPI 4 -I2C 0 0 Yes No Yes No 0 0 No PTC 0 None None 32 32/TQFP, 32/VQFN
ATSAMD20G15 In Production Yes $1.29 Cortex-M0+ 32 48 32 4 No 0 0 0 -40 to 125 1.62V - 3.63V No 0 14 12 1 None 0 2 5 x 16-bit 2 x 32-bit 12 -Std. PWM 16-bit PWM resolutions 8 -Input Capture 0 6 -UART 6 -SPI 6 -I2C 0 0 Yes No Yes No 0 0 No PTC 0 None None 48 48/TQFP, 48/VQFN
ATSAMD20J15 In Production Yes $1.35 Cortex-M0+ 32 48 32 4 No 0 0 0 -40 to 105 1.62V - 3.63V No 0 20 12 1 None 0 2 5 x 16-bit 2 x 32-bit 16 -Std. PWM 16-bit PWM resolutions 8 -Input Capture 0 6 -UART 6 -SPI 6 -I2C 0 0 Yes No Yes No 0 0 No PTC 0 None None 64 64/TQFP, 64/UFBGA, 64/VQFN
ATSAMD21E15 In Production Yes $1.30 Cortex-M0+ 32 48 32 4 No 1024 0 0 -40 to 125 1.62V - 3.63V No 12 10 12 1 Full Speed 1 2 5 x 16-bit 2 x 32-bit 6 -Std. PWM 16-bit PWM resolutions 6 -Input Capture 12 4 -UART 4 -SPI 4 -I2C 0 1 Yes No Yes No 0 0 No PTC 0 None None 32 32/TQFP, 32/VQFN, 35/WLCSP
ATSAMD21G15 In Production Yes $1.30 Cortex-M0+ 32 48 32 4 No 1024 0 0 -40 to 125 1.62V - 3.63V No 12 14 12 1 Full Speed 1 2 5 x 16-bit 2 x 32-bit 6 -Std. PWM 0-bit PWM resolutions 6 -Input Capture 14 6 -UART 6 -SPI 6 -I2C 0 1 Yes No Yes No 0 0 No PTC 0 None None 48 48/TQFP, 48/VQFN
ATSAMD21J15 In Production Yes $1.38 Cortex-M0+ 32 48 32 4 No 1024 0 0 -40 to 125 1.62V - 3.63V No 12 20 12 1 Full Speed 1 2 5 x 16-bit 2 x 32-bit 10 -Std. PWM 16-bit PWM resolutions 8 -Input Capture 14 6 -UART 6 -SPI 6 -I2C 0 1 Yes No Yes No 0 0 No PTC 0 None None 64 64/TQFP, 64/UFBGA, 64/VQFN
ATSAMDA1E14B In Production Yes $1.71 Cortex-M0+ 32 48 16 4 No 512 0 0 -40 to 105 2.7V - 3.63V No 12 10 12 1 Host, Device 1 2 5 x 16-bit 2 x 32-bit 0 -Std. PWM 0-bit PWM resolutions 6 -Input Capture 6 4 -UART 4 -SPI 4 -I2C 0 1 Yes No No No 0 0 No PTC 0 None None 32 32/TQFP, 32/VQFN
ATSAMDA1E15B In Production Yes $1.80 Cortex-M0+ 32 48 32 4 No 1024 0 0 -40 to 105 2.7V - 3.63V No 12 10 12 1 None 1 2 5 x 16-bit 2 x 32-bit 0 -Std. PWM 0-bit PWM resolutions 6 -Input Capture 6 4 -UART 4 -SPI 4 -I2C 0 1 Yes No No No 0 0 No PTC 0 None None 32 32/TQFP, 32/VQFN
ATSAMDA1G14B In Production Yes $2.00 Cortex-M0+ 32 48 16 4 No 512 0 0 -40 to 105 2.7V - 3.63V No 12 14 12 1 None 1 2 5 x 16-bit 2 x 32-bit 0 -Std. PWM 0-bit PWM resolutions 6 -Input Capture 6 6 -UART 6 -SPI 6 -I2C 0 1 Yes No No No 0 0 No PTC 0 None None 48 48/TQFP, 48/VQFN
ATSAMDA1G15B In Production Yes $2.11 Cortex-M0+ 32 48 32 4 No 1024 0 0 -40 to 105 2.7V - 3.63V No 12 14 12 1 Host, Device 1 2 5 x 16-bit 2 x 32-bit 0 -Std. PWM 0-bit PWM resolutions 6 -Input Capture 6 6 -UART 6 -SPI 6 -I2C 0 1 Yes No No No 0 0 No PTC 0 None None 48 48/TQFP, 48/VQFN
ATSAMDA1J14B In Production Yes $2.10 Cortex-M0+ 32 48 16 4 No 512 0 0 -40 to 105 2.7V - 3.63V No 12 20 12 1 None 1 2 5 x 16-bit 2 x 32-bit 0 -Std. PWM 0-bit PWM resolutions 8 -Input Capture 6 6 -UART 6 -SPI 6 -I2C 0 1 Yes No No No 0 0 No PTC 0 None None 64 64/TQFP
ATSAMDA1J15B In Production Yes $2.37 Cortex-M0+ 32 48 32 4 No 1024 0 0 -40 to 105 2.7V - 3.63V No 12 20 12 1 None 1 2 5 x 16-bit 2 x 32-bit 0 -Std. PWM 0-bit PWM resolutions 8 -Input Capture 6 6 -UART 6 -SPI 6 -I2C 0 1 Yes No No No 0 0 No PTC 0 None None 64 64/TQFP
ATSAMD21E16L In Production No $1.56 Cortex-M0+ 32 48 64 8 No 2048 0 0 -40 to 125 1.62V - 3.63V No 12 14 12 1 None 0 4 5 x 16-bit 2 x 32-bit 6 -Std. PWM 16-bit PWM resolutions 11 -Input Capture 12 5 -UART 5 -SPI 5 -I2C 0 1 Yes No Yes No 0 0 No 0 None None 32 32/TQFP, 32/VQFN
ATSAMD21G16L In Production No $1.64 Cortex-M0+ 32 48 64 8 No 2048 0 0 -40 to 125 1.62V - 3.63V No 12 18 12 1 None 0 4 5 x 16-bit 2 x 32-bit 10 -Std. PWM 16-bit PWM resolutions 13 -Input Capture 14 5 -UART 5 -SPI 5 -I2C 0 1 Yes No Yes No 0 0 No 0 None None 48 48/VQFN
ATSAMC20E16A In Production Yes $1.49 Cortex-M0+ 32 48 64 8 No 2048 0 0 -40 to 125 2.7V - 5.5V No 12 10 12 0 None 0 2 5 x 16-bit 2 x 32-bit 10 -Std. PWM 32-bit PWM resolutions 10 -Input Capture 12 4 -UART 4 -SPI 4 -I2C 0 0 Yes No No No 0 0 No PTC 0 None None 32 32/TQFP, 32/VQFN
ATSAMC20G16A In Production Yes $1.77 Cortex-M0+ 32 48 64 8 No 2048 0 0 -40 to 125 2.7V - 5.5V No 6 12 12 0 None 0 2 5 x 16-bit 2 x 32-bit 10 -Std. PWM 32-bit PWM resolutions 10 -Input Capture 14 4 -UART 4 -SPI 4 -I2C 0 0 Yes No No No 0 0 No PTC 0 None None 48 48/TQFP, 48/VQFN
ATSAMC20J16A In Production Yes $1.84 Cortex-M0+ 32 48 64 8 No 2048 0 0 -40 to 125 2.7V - 5.5V No 6 12 12 0 None 0 2 5 x 16-bit 2 x 32-bit 10 -Std. PWM 32-bit PWM resolutions 10 -Input Capture 14 4 -UART 4 -SPI 4 -I2C 0 0 Yes No No No 0 0 No PTC 0 None None 64 64/TQFP, 64/VQFN
ATSAMC21E16A In Production Yes $1.56 Cortex-M0+ 32 48 64 8 No 2048 0 0 -40 to 125 2.7V - 5.5V No 12 10 12 1 None 0 4 5 x 16-bit 2 x 32-bit 10 -Std. PWM 32-bit PWM resolutions 10 -Input Capture 14 4 -UART 4 -SPI 4 -I2C 0 0 Yes No No No 0 0 No PTC 1 CAN-FD None 32 32/TQFP, 32/VQFN
ATSAMC21G16A In Production Yes $1.71 Cortex-M0+ 32 48 64 8 No 2048 0 0 -40 to 125 2.7V - 5.5V No 12 12 12 1 None 0 4 5 x 16-bit 2 x 32-bit 10 -Std. PWM 32-bit PWM resolutions 10 -Input Capture 14 6 -UART 6 -SPI 6 -I2C 0 0 Yes No No No 0 0 No PTC 2 CAN-FD None 48 48/TQFP, 48/VQFN, 64/VQFN
ATSAMC21J16A In Production Yes $1.81 Cortex-M0+ 32 48 64 8 No 2048 0 0 -40 to 125 2.7V - 5.5V No 12 12 12 1 None 0 4 5 x 16-bit 2 x 32-bit 10 -Std. PWM 32-bit PWM resolutions 10 -Input Capture 14 6 -UART 6 -SPI 6 -I2C 0 0 Yes No No No 0 0 No PTC 2 CAN-FD None 64 64/TQFP, 64/VQFN
ATSAMD20E16 In Production Yes $1.35 Cortex-M0+ 32 48 64 8 No 0 0 0 -40 to 125 1.62V - 3.63V No 0 10 12 1 None 0 2 5 x 16-bit 2 x 32-bit 12 -Std. PWM 0-bit PWM resolutions 6 -Input Capture 0 4 -UART 4 -SPI 4 -I2C 0 0 Yes No Yes No 0 0 No PTC 0 None None 32 32/TQFP, 32/VQFN
ATSAMD20G16 In Production Yes $1.43 Cortex-M0+ 32 48 64 8 No 0 0 0 -40 to 125 1.62V - 3.63V No 0 14 12 1 None 0 2 5 x 16-bit 2 x 32-bit 12 -Std. PWM 16-bit PWM resolutions 8 -Input Capture 0 6 -UART 6 -SPI 6 -I2C 0 0 Yes No Yes No 0 0 No PTC 0 None None 48 48/TQFP, 48/VQFN
ATSAMD20J16 In Production Yes $1.50 Cortex-M0+ 32 48 64 8 No 0 0 0 -40 to 125 1.62V - 3.63V No 0 20 12 1 None 0 2 5 x 16-bit 2 x 32-bit 16 -Std. PWM 16-bit PWM resolutions 8 -Input Capture 0 6 -UART 6 -SPI 6 -I2C 0 0 Yes No Yes No 0 0 No PTC 0 None None 64 64/TQFP, 64/UFBGA, 64/VQFN
ATSAMD21E16 In Production Yes $1.51 Cortex-M0+ 32 48 64 8 No 2048 0 0 -40 to 125 1.62V - 3.63V No 12 10 12 1 Full Speed 1 2 5 x 16-bit 2 x 32-bit 6 -Std. PWM 16-bit PWM resolutions 6 -Input Capture 12 4 -UART 4 -SPI 4 -I2C 0 1 Yes No Yes No 0 0 No PTC 0 None None 32 32/TQFP, 32/VQFN, 35/WLCSP
ATSAMD21G16 In Production Yes $1.51 Cortex-M0+ 32 48 64 8 No 2048 0 0 -40 to 125 1.62V - 3.63V No 12 14 12 0 Full Speed 1 2 5 x 16-bit 2 x 32-bit 6 -Std. PWM 16-bit PWM resolutions 6 -Input Capture 14 6 -UART 6 -SPI 6 -I2C 0 1 Yes No Yes No 0 0 No PTC 0 None None 48 48/TQFP, 48/VQFN
ATSAMD21J16 In Production Yes $1.60 Cortex-M0+ 32 48 64 8 No 2048 0 0 -40 to 125 1.62V - 3.63V No 12 20 12 1 Full Speed 1 2 5 x 16-bit 2 x 32-bit 10 -Std. PWM 16-bit PWM resolutions 8 -Input Capture 14 6 -UART 6 -SPI 6 -I2C 0 1 Yes No Yes No 0 0 No PTC 0 None None 64 64/TQFP, 64/VQFN
ATSAMDA1E16B In Production Yes $1.89 Cortex-M0+ 32 48 64 8 No 2048 0 0 -40 to 105 2.7V - 3.63V No 12 10 12 1 None 1 2 5 x 16-bit 2 x 32-bit 0 -Std. PWM 0-bit PWM resolutions 6 -Input Capture 6 4 -UART 4 -SPI 4 -I2C 0 1 Yes No No No 0 0 No PTC 0 None None 32 32/TQFP, 32/VQFN
ATSAMDA1G16B In Production Yes $2.30 Cortex-M0+ 32 48 64 8 No 2048 0 0 -40 to 105 2.7V - 3.63V No 12 14 12 1 None 1 2 5 x 16-bit 2 x 32-bit 0 -Std. PWM 0-bit PWM resolutions 6 -Input Capture 6 6 -UART 6 -SPI 6 -I2C 0 1 Yes No No No 0 0 No PTC 0 None None 48 48/TQFP, 48/VQFN
ATSAMDA1J16B In Production Yes $2.76 Cortex-M0+ 32 48 64 8 No 2048 0 0 -40 to 105 2.7V - 3.63V No 12 20 12 1 Host, Device 1 2 5 x 16-bit 2 x 32-bit 0 -Std. PWM 0-bit PWM resolutions 8 -Input Capture 6 6 -UART 6 -SPI 6 -I2C 0 1 Yes No No No 0 0 No PTC 0 None None 64 64/TQFP
ATSAMD20E17 In Production No $1.45 Cortex-M0+ 32 48 128 16 No 0 0 0 -40 to 105 1.62V - 3.63V No 0 10 12 1 None 0 2 5 x 16-bit 2 x 32-bit 12 -Std. PWM 16-bit PWM resolutions 6 -Input Capture 0 4 -UART 4 -SPI 4 -I2C 0 0 Yes No Yes No 0 0 No PTC 0 None None 32 32/TQFP, 32/VQFN
ATSAMD20G17 In Production No $1.52 Cortex-M0+ 32 48 128 16 No 0 0 0 -40 to 105 1.62V - 3.63V No 0 14 12 1 None 0