DATASHEET SEARCH SITE | WWW.ALLDATASHEET.COM

Document overview

  • Manufacturer or author: Provided By ALLDATASHEET.COM(FREE DATASHEET DOWNLOAD SITE)
  • PDF pages: 84

Technical content

May. 09, 2018 Page 1 of 84 Rev.1.03 MINI58DE SERIES DATASHEET ARM® Cortex® -M0 32-bit Microcontroller NuMicro® Family Mini58DE Series Datasheet The information described in this document is the exclusive intellectual property of Nuvoton Technology Corporation and shall not be reproduced without permission from Nuvoton. Nuvoton is providing this document only for reference purposes of NuMicro microcontroller based system design. Nuvoton assumes no responsibility for errors or omissions. All data and specifications are subject to change without notice. For additional information or questions, please contact: Nuvoton Technology Corporation. www.nuvoton.com

May. 09, 2018 Page 2 of 84 Rev.1.03 MINI58DE SERIES DATASHEET Table of Contents

May. 09, 2018 Page 3 of 84 Rev.1.03 MINI58DE SERIES DATASHEET

May. 09, 2018 Page 4 of 84 Rev.1.03 MINI58DE SERIES DATASHEET

May. 09, 2018 Page 6 of 84 Rev.1.03 MINI58DE SERIES DATASHEET List of Tables

May. 09, 2018 Page 7 of 84 Rev.1.03 MINI58DE SERIES DATASHEET

1 GENERAL DESCRIPTION

The NuMicro® Mini58 series is pin-to-pin and function compatible with the NuMicro® Mini51 series, the 32-bit microcontroller (MCU) embedded with the ARM® Cortex® -M0 core. The Mini58 series can bridge the gap and replace the cost equivalent to traditional 8- and 16-bit microcontroller by 32-bit performance and rich functions. The Mini58 series supports a wide range of applications from low-end, price sensitive designs to computing-intensive ones and provides advanced high- end features in economical products. The Mini58 series can run up to 50 MHz which is faster than 24 MHz in Mini51 series, and operate at a wide voltage range of 2.5V ~ 5.5V and temperature range of -40℃ ~ +105℃. For the Mini58 series, the embedded program flash size upgrades from 16 Kbytes to 32 Kbytes and SRAM upgrades from 2 Kbytes to 4 Kbytes. The Mini58 series also offers size configurable Data Flash (shared with program flash), and 2.5 Kbytes flash for the ISP. The Mini58 series has many high-performance peripheral functions, such as 22.1184 MHz internal RC oscillator (±1% accuracy), I/O port with up to 30 pins, four 32 -bit timers, two UARTs with the RS485 function and IrDA function interface, one SPI interface, two I2C interfaces, up to three 16-bit PWM generators providing six channels, an 8-channel 10-bit ADC, Watchdog Timer, Window Watchdog Timer, two Analog Comparators and a Brown-out Detector. All these peripherals have been incorporated into the Mini58 series to reduce component count, board space and system cost. Compared to the Mini51 series, the Mini58 series supports additional one UART and one I2C interface for better and more flexible connectivity applications. Additionally, the Mini58 series is equipped with ISP (In-System Programming) and ICP (In-Circuit Programming) functions, which allow the user to update the program memory without removing the chip from the actual end product. The Mini58 series also supports In-Application-Programming (IAP) function, user switches the code executing without the chip reset after the embedded flash updated.

May. 09, 2018 Page 8 of 84 Rev.1.03 MINI58DE SERIES DATASHEET

2 FEATURES

 Core  ARM® Cortex® -M0 core running up to 50 MHz  One 24-bit system timer  Supports low power Idle mode  A single-cycle 32-bit hardware multiplier  NVIC for the 32 interrupt inputs, each with 4-level of priority  Supports Serial Wire Debug (SWD) interface and two watchpoints/four breakpoints  Built-in LDO for wide operating voltage: 2.5V to 5.5V  Memory  32 KB Flash memory for program memory (APROM)  Configurable Flash memory for data memory (Data Flash)  2.5 KB Flash for loader (LDROM)  4 KB SRAM for internal scratch-pad RAM (SRAM)  Clock Control  Programmable system clock source  Switch clock sources on-the-fly  Support 4 ~ 24 MHz external high speed crystal oscillator (HXT) for precise timing operation  Support 32.768 kHz external low speed crystal oscillator (LXT) for idle wake-up and system operation clock  Built-in 22.1184 MHz internal high speed RC oscillator (HIRC) for system operation (1% accuracy at 250C, 5V)  Dynamically calibrating the HIRC OSC to 22.1184 MHz ±1% from -40℃ to 105℃ by external 32.768K crystal oscillator (LXT)  Built-in 10 kHz internal low speed RC oscillator (LIRC) for Watchdog Timer and wake-up operation  PLL allowing CPU operation up to the maximum 50 MHz  I/O Port  Up to 30 general-purpose I/O (GPIO) pins for LQFP-48 package  Four I/O modes:  Quasi-bidirectional input/output  Push-Pull output  Open-Drain output  Input only with high impendence  Optional Schmitt trigger input  Timer  Provides two channel 32-bit Timers; one 8-bit pre-scaler counter with 24-bit up- timer for each timer

May. 09, 2018 Page 9 of 84 Rev.1.03 MINI58DE SERIES DATASHEET  Supports Event Counter mode  Supports Toggle Output mode  Supports external trigger in Pulse Width Measurement mode  Supports external trigger in Pulse Width Capture mode  WDT (Watchdog Timer)  Programmable clock source and time-out period  Supports wake-up function in Power-down mode and Idle mode  Interrupt or reset selectable on watchdog time-out  WWDT (Window Watchdog Timer)  6-bit down counter value (CNTDAT) and 6-bit compare value (CMPDAT) to make the WWDT time-out window period flexible  Supports 4-bit value (PSCSEL) to programmable maximum 11-bit prescale counter period of WWDT counter  PWM  Up to three built-in 16-bit PWM generators, providing six PWM outputs or three complementary paired PWM outputs  Individual clock source, clock divider, 8-bit pre-scalar and dead-time generator for each PWM generator  PWM interrupt synchronized to PWM period  Supports edge-alignment or center-alignment  Supports fault detection  UART (Universal Asynchronous Receiver/Transmitters)  Two UART devices  Buffered receiver and transmitter, each with 16-byte FIFO  Optional flow control function (CTSn and RTSn)  Supports IrDA (SIR) function  Programmable baud-rate generator up to 1/16 system clock  Supports RS-485 function  SPI (Serial Peripheral Interface)  One SPI device  Master up to 25 MHz, and Slave up to 10 MHz  Supports Master/Slave mode  Full-duplex synchronous serial data transfer  Variable length of transfer data from 1 to 32 bits  MSB or LSB first data transfer  RX latching data can be either at rising edge or at falling edge of serial clock  TX sending data can be either at rising edge or at falling edge of serial clock  Supports Byte Suspend mode in 32-bit transmission  I2C

May. 09, 2018 Page 10 of 84 Rev.1.03 MINI58DE SERIES DATASHEET  Two I2C devices  Supports Master/Slave mode  Bidirectional data transfer between masters and slaves  Multi-master bus (no central master)  Arbitration between simultaneously transmitting masters without corruption of serial data on the bus  Serial clock synchronization allowing devices with different bit rates to communicate via one serial bus  Serial clock synchronization can be used as a handshake mechanism to suspend and resume serial transfer  Programmable clocks allow for versatile rate control  Supports multiple address recognition (four slave addresses with mask option)  ADC (Analog-to-Digital Converter)  10-bit SAR ADC with 250 kSPS  Up to 8-ch single-end input and one internal input from band-gap  Conversion started either by software trigger or external pin trigger  Analog Comparator  Two analog comparators with programmable 16-level internal voltage reference  Built-in CRV (comparator reference voltage)  ISP (In-System Programming), ICP (In-Circuit Programming), and IAP (In-Application- Programming) update  BOD (Brown-out Detector)  With 4 programmable threshold levels: 4.4V/3.7V/2.7V/2.2V  Supports Brown-out interrupt and reset option  96-bit unique ID  LVR (Low Voltage Reset)  Threshold voltage level: 2.0V  Operating Temperature: -40℃~105℃  Reliability: EFT > ± 4KV, ESD HBM pass 4KV  Packages:  Green package (RoHS)  48-pin LQFP (7x7), 33-pin QFN (5x5) , 33-pin QFN (4x4), 20-pin TSSOP

May. 09, 2018 Page 11 of 84 Rev.1.03 MINI58DE SERIES DATASHEET

3 ABBREVIATIONS

ACMP Analog Comparator Controller ADC Analog-to-Digital Converter AHB Advanced High-Performance Bus APB Advanced Peripheral Bus BOD Brown-out Detection DAP Debug Access Port FIFO First In, First Out FMC Flash Memory Controller GPIO General-Purpose Input/Output HCLK The Clock of Advanced High-Performance Bus HIRC 22.1184 MHz Internal High Speed RC Oscillator HXT 4~24 MHz External High Speed Crystal Oscillator ICP In Circuit Programming ISP In System Programming ISR Interrupt Service Routine LDO Low Dropout Regulator LIRC 10 kHz internal low speed RC oscillator (LIRC) LXT 32.768 kHz External Low Speed Crystal Oscillator NVIC Nested Vectored Interrupt Controller PCLK The Clock of Advanced Peripheral Bus PLL Phase-Locked Loop PWM Pulse Width Modulation SPI Serial Peripheral Interface SPS Samples per Second TMR Timer Controller UART Universal Asynchronous Receiver/Transmitter UCID Unique Customer ID WDT Watchdog Timer WWDT Window Watchdog Timer Table 3-1 List of Abbreviations

May. 09, 2018 Page 12 of 84 Rev.1.03 MINI58DE SERIES DATASHEET

4 PARTS INFORMATION LIST AND PIN CONFIGURATION

NuMicro® Mini58 Series Naming Rule 4.1 Mini58-X X X ARM–Based 32-bit Microcontroller CPU Core Corte® -M0 Flash ROM 58 : 32 KB Flash ROM Temperature Reserved Package Type L: LQFP 48 7x7mm Z: QFN 33 5x5mm T: QFN 33 4x4mm F: TSSOP 20 E: -40oC ~ +105oC Figure 4.1-1 NuMicro® Mini58 Series Naming Rule

May. 09, 2018 Page 13 of 84 Rev.1.03 MINI58DE SERIES DATASHEET NuMicro® Mini58 Series Product Selection Guide 4.2 Part Number APROM RAM Data Flash ISP Loader ROM I/O Timer Connectivity Comp. PWM ADC ISP ICP IRC 22.1184 MHz Package UART SPI I2C MINI58LDE 32 KB 4 KB Configurable 2.5 KB up to 30 2x32- bit 2 1 2 2 6 8x10- bit v v LQFP48 MINI58ZDE 32 KB 4 KB Configurable 2.5 KB up to 29 2x32- bit 2 1 2 2 6 8x10- bit v v QFN33(5x5) MINI58TDE 32 KB 4 KB Configurable 2.5 KB up to 29 2x32- bit 2 1 2 2 6 8x10- bit v v QFN33(4x4) MINI58FDE 32 KB 4 KB Configurable 2.5 KB up to 17 2x32- bit 2 1 2 - 6 4x10- bit v v TSSOP20 Table 4.2-1 NuMicro® Mini58 Series Product Selection Guide

May. 09, 2018 Page 14 of 84 Rev.1.03 MINI58DE SERIES DATASHEET PIN CONFIGURATION 4.3

4.3.1 LQFP 48-pin

P1.5 nRESET P3.0 AVSS P5.4 P3.1 P3.2 P3.4 P3.5 NC NC P2.4 P2.3 P2.2 NC P5.2 P5.5 LDO_CAP VSS P5.0 P5.1 P3.6 NC NC P0.4 P0.5 P0.6 P0.7 NC P4.7 P4.6 NC NC P2.6 P2.5 P0.1 P0.0 NC NC P5.3 VDD AVDD P1.0 P1.2 P1.3 P1.4 NC Figure 4.3-1 NuMicro® Mini58 Series LQFP 48-pin Diagram

May. 09, 2018 Page 15 of 84 Rev.1.03 MINI58DE SERIES DATASHEET LQFP 48-Pin NC ACMP0_P0 / UART1_TXD / ADC_CH5 / P1.5 nRESET ADC_CH6 / ACMP1_N / P3.0 AVSS P5.4 ADC_CH7 / ACMP1_P0 / P3.1 ACMP1_P1 / STADC / TM0_EXT / INT0 / P3.2 ACMP1_P2 / I2C0_SDA / TM0_CNT_OUT / P3.4 ACMP1_P3 / I2C0_SCL / TM1_CNT_OUT / P3.5 NC NC P2.4 / UART1_RXD / PWM0_CH2 P2.3 / PWM0_CH1 / I2C1_SDA P2.2 / PWM0_CH0 / I2C1_SCL NC P5.2 / INT1 P5.5 LDO_CAP VSS P5.0 / XT1_IN / I2C1_SDA / UART0_TXD P5.1 / XT1_OUT / I2C1_SCL / UART0_RXD P3.6 / TM1_EXT / CLKO / ACMP0_O NC NC P0.4 / SPI0_SS / PWM0_CH5 P0.5 / SPI0_MOSI / PWM0_CH4 P0.6 / SPI0_MISO / PWM0_CH1 P0.7 / SPI0_CLK / PWM0_CH0 NC P4.7 / ICE_DAT / UART1_TXD P4.6 / ICE_CLK / UART1_RXD NC NC P2.6 / PWM0_CH4 / ACMP1_O P2.5 / UART1_TXD / PWM0_CH3 UART0_RXD / UART0_nRTS / SPI0_SS / P0.1 UART0_TXD / UART0_nCTS / P0.0 NC NC ADC_CH0 / P5.3 VDD AVDD ACMP0_P1 / ADC_CH1 / P1.0 PWM0_CH0 / ACMP0_P2 / UART0_RXD / ADC_CH2 / P1.2 PWM0_CH1 / ACMP0_P3 / UART0_TXD / ADC_CH3 / P1.3 PWM0_CH4 / ACMP0_N / UART1_RXD / ADC_CH4 / P1.4 NC Figure 4.3-2 NuMicro® Mini58 Series LQFP 48-pin Multi-Function Diagram

May. 09, 2018 Page 16 of 84 Rev.1.03 MINI58DE SERIES DATASHEET

4.3.2 QFN 33-pin

33 VSS

P0.1 P0.0 P5.3 VDD P1.0 P1.2 P1.3 P1.4 P1.5 nRESET P3.0 P5.4 P3.1 P3.2 P3.4 P3.5 P2.4 P2.3 P2.2 P5.2 VSS P5.0 P5.1 P3.6 P0.4 P0.5 P0.6 P0.7 P4.7 P4.6 P2.6 P2.5 Top Transparent View Figure 4.3-3 NuMicro® Mini58 Series QFN 33-pin Diagram

May. 09, 2018 Page 17 of 84 Rev.1.03 MINI58DE SERIES DATASHEET QFN 33-Pin UART0_RXD / UART0_nRTS / SPI0_SS / P0.1 UART0_TXD / UART0_nCTS / P0.0 ADC_CH0 / P5.3 VDD ACMP0_P1 / ADC_CH1 / P1.0 PWM0_CH0 / ACMP0_P2 / UART0_RXD / ADC_CH2 / P1.2 PWM0_CH1 / ACMP0_P3 / UART0_TXD / ADC_CH3 / P1.3 PWM0_CH4 / ACMP0_N / UART1_RXD / ADC_CH4 / P1.4 ACMP0_P0 / UART1_TXD / ADC_CH5 / P1.5 nRESET ADC_CH6 / ACMP1_N / P3.0 P5.4 ADC_CH7 / ACMP1_P0 / P3.1 ACMP1_P1 / STADC / TM0_EXT / INT0 / P3.2 ACMP1_P2 / I2C0_SDA / TM0_CNT_OUT / P3.4 ACMP1_P3 / I2C0_SCL / TM1_CNT_OUT / P3.5 P2.4 / UART1_RXD / PWM0_CH2 P2.3 / PWM0_CH1 / I2C1_SDA P2.2 / PWM0_CH0 / I2C1_SCL P5.2 / INT1 VSS P5.0 / XT1_IN / I2C1_SDA / UART0_TXD P5.1 / XT1_OUT / I2C1_SCL / UART0_RXD P3.6 / TM1_EXT / CLKO / ACMP0_O P0.4 / SPI0_SS / PWM0_CH5 P0.5 / SPI0_MOSI / PWM0_CH4 P0.6 / SPI0_MISO / PWM0_CH1 P0.7 / SPI0_CLK / PWM0_CH0 P4.7 / ICE_DAT / UART1_TXD P4.6 / ICE_CLK / UART1_RXD P2.6 / PWM0_CH4 / ACMP1_O P2.5 / UART1_TXD / PWM0_CH3 Top Transparent View Figure 4.3-4 NuMicro® Mini58 Series QFN 33-pin Multi-funciton Diagram

May. 09, 2018 Page 18 of 84 Rev.1.03 MINI58DE SERIES DATASHEET

4.3.3 TSSOP 20-pin

P1.2 P1.3 P1.4 P1.5 nRESET P3.2 P3.4 P3.5 P5.1 P5.0 VDD P0.4 P0.5 P0.6 P0.7 P4.7 P4.6 P2.5 P2.4 VSS Figure 4.3-5 NuMicro® Mini58 Series TSSOP 20-pin Diagram TSSOP 20-Pin PWM0_CH0 / UART0_RXD / ADC_CH2 / P1.2 PWM0_CH1 / UART0_TXD / ADC_CH3 / P1.3 PWM0_CH4 / UART1_RXD / ADC_CH4 / P1.4 UART1_TXD / ADC_CH5 / P1.5 nRESET STADC / TM0_EXT / INT0 / P3.2 I2C0_SDA / TM0_CNT_OUT / P3.4 I2C0_SCL / TM1_CNT_OUT / P3.5 UART0_RXD / I2C1_SCL / XT1_OUT / P5.1 UART0_TXD / I2C1_SDA / XT1_IN / P5.0 VDD P0.4 / SPI0_SS / PWM0_CH5 P0.5 / SPI0_MOSI / PWM0_CH4 P0.6 / SPI0_MISO / PWM0_CH1 P0.7 / SPI0_CLK / PWM0_CH0 P4.7 / ICE_DAT / UART1_TXD P4.6 / ICE_CLK / UART1_RXD P2.5 / UART1_TXD / PWM0_CH3 P2.4 / UART1_RXD / PWM0_CH2 VSS Figure 4.3-6 NuMicro® Mini58 Series TSSOP 20-pin Multi-function Diagram

May. 09, 2018 Page 19 of 84 Rev.1.03 MINI58DE SERIES DATASHEET Pin Description 4.4 Pin Number Pin Name Pin Type Description LQFP 48-pin QFN 33-pin TSSOP 20-pin 1 --- --- NC --- Not connected 2 1 4 P1.5 I/O General purpose digital I/O pin ADC_CH5 AI ADC analog input pin UART1_TXD O UART1 transmitter output pin ACMP0_P0 AI Analog comparator positive input pin 3 2 5 nRESET I(ST) The Schmitt trigger input pin for hardware device reset. A “Low” on this pin for 768 clock counter of Internal RC 22.1184 MHz while the system clock is running will reset the device. nRESET pin has an internal pull-up resistor allowing power-on reset by simply connecting an external capacitor to GND. 4 3 --- P3.0 I/O General purpose digital I/O pin ADC_CH6 AI ADC analog input pin ACMP1_N AI Analog comparator negative input pin 5 --- --- AVSS AP Ground pin for analog circuit 6 4 --- P5.4 I/O General purpose digital I/O pin 7 5 --- P3.1 I/O General purpose digital I/O pin ADC_CH7 AI ADC analog input pin ACMP1_P0 AI Analog comparator positive input pin 8 6 6 P3.2 I/O General purpose digital I/O pin INT0 I External interrupt 0 input pin STADC I ADC external trigger input pin TM0_EXT I/O Timer 0 external capture / reset trigger input pin / toggle output pin ACMP1_P1 AI Analog comparator positive input pin (not support in TSSOP20 package) 9 7 7 P3.4 I/O General purpose digital I/O pin TM0_CNT_OU T I/O Timer 0 external event counter input pin / toggle output pin I2C0_SDA I/O I2C0 data I/O pin ACMP1_P2 AI Analog comparator positive input pin 10 8 8 P3.5 I/O General purpose digital I/O pin TM1_CNT_OU T I/O Timer 1 external event counter input pin / toggle output pin I2C0_SCL I/O I2C0 clock I/O pin ACMP1_P3 AI Analog comparator positive input pin 11 --- --- NC --- Not connected

May. 09, 2018 Page 20 of 84 Rev.1.03 MINI58DE SERIES DATASHEET Pin Number Pin Name Pin Type Description LQFP 48-pin QFN 33-pin TSSOP 20-pin 12 --- --- NC --- Not connected 13 --- -- NC --- Not connected 14 9 --- P3.6 I/O General purpose digital I/O pin ACMP0_O O Analog comparator output pin CLKO O Frequency divider output pin TM1_EXT I/O Timer 1 external capture / reset trigger input pin / toggle output pin 15 10 9 P5.1 I/O General purpose digital I/O pin XT1_OUT O The output pin from the internal inverting amplifier. It emits the inverted signal of XT1_IN. I2C1_SCL I/O I2C1 clock I/O pin UART0_RXD I UART0 data receiver input pin 16 11 10 P5.0 I/O General purpose digital I/O pin XT1_IN I The input pin to the internal inverting amplifier. The system clock could be from external crystal or resonator. I2C1_SDA I/O I2C1 data I/O pin UART0_TXD O UART0 transmitter output pin

11 VSS P Ground pin for digital circuit

18 --- --- LDO_CAP P LDO output pin General purpose digital I/O pin User program must enable pull-up resistor in the QFN-33 package. 20 13 --- P5.2 I/O General purpose digital I/O pin INT1 I External interrupt 1 input pin 21 --- --- NC --- Not connected 22 14 --- P2.2 I/O General purpose digital I/O pin PWM0_CH0 O PWM0 output of PWM unit I2C1_SCL I/O I2C1 clock I/O pin 23 15 --- P2.3 I/O General purpose digital I/O pin PWM0_CH1 O PWM1 output of PWM unit I2C1_SDA I/O I2C1 data I/O pin 24 16 12 P2.4 I/O General purpose input/output digital pin UART1_RXD I UART1 data receiver input pin PWM0_CH2 O PWM2 output of PWM unit

May. 09, 2018 Page 21 of 84 Rev.1.03 MINI58DE SERIES DATASHEET Pin Number Pin Name Pin Type Description LQFP 48-pin QFN 33-pin TSSOP 20-pin 25 17 13 P2.5 I/O General purpose digital I/O pin UART1_TXD O UART1 transmitter output pin PWM0_CH3 O PWM3 output of PWM unit 26 18 --- P2.6 I/O General purpose digital I/O pin PWM0_CH4 O PWM4 output of PWM unit ACMP1_O O Analog comparator output pin 27 --- --- NC --- Not connected 28 --- --- NC --- Not connected 29 19 14 P4.6 I/O General purpose digital I/O pin ICE_CLK I Serial wired debugger clock pin UART1_RXD I UART1 data receiver input pin 30 20 15 P4.7 I/O General purpose digital I/O pin ICE_DAT I/O Serial wired debugger data pin UART1_TXD O UART1 transmitter output pin 31 --- --- NC --- Not connected 32 21 16 P0.7 I/O General purpose digital I/O pin SPI0_CLK I/O SPI serial clock pin PWM0_CH0 O PWM0 output of PWM unit 33 22 17 P0.6 I/O General purpose digital I/O pin SPI0_MISO I/O SPI MISO (master in/slave out) pin PWM0_CH1 O PWM1 output of PWM unit 34 23 18 P0.5 I/O General purpose digital I/O pin SPI0_MOSI O SPI MOSI (master out/slave in) pin PWM0_CH4 O PWM4 output of PWM unit 35 24 19 P0.4 I/O General purpose digital I/O pin SPI0_SS I/O SPI slave select pin PWM0_CH5 O PWM5 output of PWM unit 36 --- --- NC --- Not connected 37 25 --- P0.1 I/O General purpose digital I/O pin UART0_nRTS O UART0 RTS pin UART0_RXD I UART0 data receiver input pin SPI0_SS I/O SPI slave select pin 38 26 --- P0.0 I/O General purpose digital I/O pin

May. 09, 2018 Page 22 of 84 Rev.1.03 MINI58DE SERIES DATASHEET Pin Number Pin Name Pin Type Description LQFP 48-pin QFN 33-pin TSSOP 20-pin UART0_nCTS I UART0 CTS pin UAR0_TXD O UART0 transmitter output pin 39 --- --- NC --- Not connected 40 --- --- NC --- Not connected 41 27 --- P5.3 I/O General purpose digital I/O pin ADC_CH0 AI ADC analog input pin 28 20 VDD P Power supply for digital circuit

43 AVDD P Power supply for analog circuit

P1.0 I/O General purpose digital I/O pin ADC_CH1 AI ADC analog input pin ACMP0_P1 AI Analog comparator positive input pin 45 30 1 P1.2 I/O General purpose digital I/O pin ADC_CH2 AI ADC analog input pin UART0_RXD I UART0 data receiver input pin ACMP0_P2 AI Analog comparator positive input pin (not support in TSSOP20 package) PWM0_CH0 O PWM0 output of PWM unit 46 31 2 P1.3 I/O General purpose digital I/O pin ADC_CH3 AI ADC analog input pin UART0_TXD O UART0 transmitter output pin ACMP0_P3 AI Analog comparator positive input pin (not support in TSSOP20 package) PWM0_CH1 O PWM1 output of PWM unit 47 32 3 P1.4 I/O General purpose digital I/O pin ADC_CH4 I/O ADC analog input pin UART1_RXD I UART1 data receiver input pin ACMP0_N AI Analog comparator negative input pin (not support in TSSOP20 package) PWM0_CH4 O PWM4 output of PWM unit 48 --- -- NC --- Not connected Table 4.4-1 NuMicro® Mini58 Series Pin Description [1] I/O type description. I: input, O: output, I/O: quasi bi-direction, D: open-drain, P: power pin, ST: Schmitt trigger, A: Analog input.

May. 09, 2018 Page 23 of 84 Rev.1.03 MINI58DE SERIES DATASHEET

May. 09, 2018 Page 24 of 84 Rev.1.03 MINI58DE SERIES DATASHEET

5 BLOCK DIAGRAM

NuMicro® Mini58 Block Diagram 5.1 Figure 5.1-1 NuMicro® Mini58 Series Block Diagram

May. 09, 2018 Page 25 of 84 Rev.1.03 MINI58DE SERIES DATASHEET

6 FUNCTIONAL DESCRIPTION

ARM® Cortex® -M0 Core 6.1

6.1.1 Overview

The Cortex® -M0 processor, a configurable, multistage, 32-bit RISC processor, has an AMBA AHB-Lite interface and includes an NVIC component. It also has optional hardware debug functionality. The processor can execute Thumb code and is compatible with other Cortex ® -M profile processors. The profile supports two modes - Thread mode and Handler mode. Handler mode is entered as a result of an exception. An exception return can only be issued in Handler mode. Thread mode is entered on Reset and can be entered as a result of an exception return. Figure 6.1-1 shows the functional controller of the processor. Cortex-M0 Processor core Nested Vectored Interrupt Controller (NVIC) Breakpoint and Watchpoint unit Debugger interface Bus matrix Debug Access Port (DAP) DebugCortex-M0 processor Cortex-M0 components Wakeup Interrupt Controller (WIC) Interrupts Serial Wire or JTAG debug port AHB-Lite interface Figure 6.1-1 Functional Block Diagram

6.1.2 Features

 A low gate count processor  ARMv6-M Thumb® instruction set  Thumb-2 technology  ARMv6-M compliant 24-bit SysTick timer  A 32-bit hardware multiplier  System interface supported with little-endian data accesses  Ability to have deterministic, fixed-latency, interrupt handling  Load/store-multiples and multicycle-multiplies that can be abandoned and restarted to facilitate rapid interrupt handling  C Application Binary Interface compliant exception model: This is the ARMv6-M, C Application Binary Interface (C-ABI) compliant exception model that enables the use of pure C functions as interrupt handlers  Low power Idle mode entry using the Wait For Interrupt (WFI), Wait For Event (WFE) instructions, or return from interrupt sleep-on-exit feature

May. 09, 2018 Page 26 of 84 Rev.1.03 MINI58DE SERIES DATASHEET  NVIC  32 external interrupt inputs, each with four levels of priority  Dedicated Non-maskable Interrupt (NMI) input  Supports for both level-sensitive and pulse-sensitive interrupt lines  Supports Wake-up Interrupt Controller (WIC) and, providing Ultra-low Power Idle mode  Debug support  Four hardware breakpoints  Two watch points  Program Counter Sampling Register (PCSR) for non-intrusive code profiling  Single step and vector catch capabilities  Bus interfaces  Single 32-bit AMBA-3 AHB-Lite system interface that provides simple integration to all system peripherals and memory  Single 32-bit slave port that supports the DAP (Debug Access Port)

May. 09, 2018 Page 27 of 84 Rev.1.03 MINI58DE SERIES DATASHEET System Manager 6.2

6.2.1 Overview

System management includes the following sections:  System Reset  System Power Architecture  System Memory Map  System management registers for Part Number ID, chip reset and on-chip controllers reset, and multi-functional pin control  System Timer (SysTick)  Nested Vectored Interrupt Controller (NVIC)  System Control registers

6.2.2 System Reset

The system reset can be issued by one of the events listed below. These reset event flags can be read from SYS_RSTSTS register to determine the reset source. Hardware reset can reset chip through peripheral reset signals. Software reset can trigger reset through control registers.  Hardware Reset Sources  Power-on Reset (POR)  Low level on the nRESET pin  Watchdog Time-out Reset and Window Watchdog Reset (WDT/WWDT Reset)  Low Voltage Reset (LVR)  Brown-out Detector Reset (BOD Reset)  CPU Lockup Reset  Software Reset Sources  CHIP Reset will reset whole chip by writing 1 to CHIPRST (SYS_IPRST0[0])  MCU Reset to reboot but keeping the booting setting from APROM or LDROM by writing 1 to SYSRESETREQ (SCS_AIRCR[2])  CPU Reset for Cortex® -M0 core Only by writing 1 to CPURST (SYS_IPRST0[1])

May. 09, 2018 Page 28 of 84 Rev.1.03 MINI58DE SERIES DATASHEET Low Voltage Reset Power-on Reset Brown-out Reset Reset Pulse Width 3.2ms WDT/WWDT Reset System Reset ~50k ohm @5v Reset Pulse Width 2 system clocks nRESET VDD AVDD CHIP Reset CHIPRST(SYS_IPRST0[0]) CPU Reset CPURST(SYS_IPRST0[1]) CPU Lockup Reset MCU Reset SYSRSTREQ(SCS_AIRCR[2]) BODRSTEN(SYS_BODCTL[3]) Reset Pulse Width

64 WDT clocks

Figure 6.2-1 System Rese Resources There are a total of 9 reset sources in the NuMicro® family. In general, CPU reset is used to reset Cortex® -M0 only; the other reset sources will reset Cortex® -M0 and all peripherals. However, there are small differences between each reset source and they are listed in Table 6.2-5. Reset Sources Register POR nRESET WDT LVR BOD Lockup CHIP MCU CPU SYS_RSTSTS 0x001 Bit 1 = 1 Bit 2 = 1 0x001 Bit 4 = 1 Bit 8 = 1 Bit 0 = 1 Bit 5 = 1 Bit 7 = 1 CHIPRST (SYS_IPRST0[0]) BODEN (SYS_BODCTL[0]) Reload from CONFIG0 Reload from CONFIG0 Reload from CONFIG0 Reload from CONFIG0 - Reload from CONFIG0 Reload from CONFIG0 Reload from CONFIG0 BODVL (SYS_BODCTL[2:1]) BODRSTEN (SYS_BODCTL[3]) XTLEN (CLK_PWRCTL[1:0]) 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 WDTCKEN (CLK_APBCLK0[0]) HCLKSEL (CLK_CLKSEL0[2:0]) 0x8 0x8 0x8 0x8 0x8 0x8 0x8 0x8 -

May. 09, 2018 Page 29 of 84 Rev.1.03 MINI58DE SERIES DATASHEET WDTSEL (CLK_CLKSEL1[1:0]) XLTSTB (CLK_STATUS[0]) PLLSTB (CLK_STATUS[2]) LIRCSTB (CLK_STATUS[3]) 0x0 HIRCSTB (CLK_STATUS[4]) CLKSFAIL (CLK_STATUS[7]) WDT_CTL 0x0700 0x0700 0x0700 0x0700 0x0700 - 0x0700 - - WDT_ALTCTL 0x0000 0x0000 0x0000 0x0000 0x0000 - 0x0000 - - WWDT_RLDCNT 0x0000 0x0000 0x0000 0x0000 0x0000 - 0x0000 - - WWDT_CTL 0x3F0800 0x3F0800 0x3F0800 0x3F0800 0x3F0800 - 0x3F0800 - - WWDT_STATUS 0x0000 0x0000 0x0000 0x0000 0x0000 - 0x0000 - - WWDT_CNT 0x3F 0x3F 0x3F 0x3F 0x3F - 0x3F - - BS (FMC_ISPCTL[1]) Reload from CONFIG0 Reload from CONFIG0 Reload from CONFIG0 Reload from CONFIG0 Reload from CONFIG0 - Reload from CONFIG0 - - ISPEN (FMC_ISPCTL[16]) FMC_DFBA Reload from CONFIG1 Reload from CONFIG1 Reload from CONFIG1 Reload from CONFIG1 Reload from CONFIG1 - Reload from CONFIG1 - - CBS (FMC_ISPSTS[2:1)) Reload from CONFIG0 Reload from CONFIG0 Reload from CONFIG0 Reload from CONFIG0 Reload from CONFIG0 - Reload from CONFIG0 - - VECMAP  (FMC_ISPSTS[20:9]) Reload base on CONFIG0 Reload base on CONFIG0 Reload base on CONFIG0 Reload base on CONFIG0 Reload base on CONFIG0 - Reload base on CONFIG0 - - Other Peripheral Registers Reset Value - FMC Registers Reset Value Note: ‘-‘ means that the value of register keeps original setting. Table 6.2-1 Reset Value of Registers nRESET Reset 6.2.2.1 The nRESET reset means to generate a reset signal by pulling low nRESET pin, which is an asynchronous reset input pin and can be used to reset system at any time. When the nRESET voltage is lower than 0.2 VDD and the state keeps longer than 36 us (glitch filter), chip will be reset. The nRESET reset will control the chip in reset state until the nRESET voltage rises above 0.7 VDD and the state keeps longer than 36 us (glitch filter). The PINRF (SYS_RSTSTS[1]) will be set to 1 if the previous reset source is nRESET reset. Figure 6.2-2 shows the nRESET reset waveform.

May. 09, 2018 Page 30 of 84 Rev.1.03 MINI58DE SERIES DATASHEET nRESET

0.2 VDD

0.7 VDD

Figure 6.2-2 nRESET Reset Waveform Power-On Reset (POR) 6.2.2.2 The Power-on reset (POR) is used to generate a stable system reset signal and forces the system to be reset when power-on to avoid unexpected behavior of MCU. When applying the power to MCU, the POR module will detect the rising voltage and generate reset signal to system until the voltage is ready for MCU operation. At POR reset, the PORF (SYS_RSTSTS[0]) will be set to 1 to indicate there is a POR reset event. The PORF (SYS_RSTSTS[0]) bit can be cleared by writing 1 to it. Figure 6.2-3 shows the waveform of Power-On reset. VDD VPOR Power On Reset 0.1V Figure 6.2-3 Power-on Reset (POR) Waveform Low Voltage Reset (LVR) 6.2.2.3 Low Voltage Reset detects AVDD during system operation. When the AVDD voltage is lower than VLVR and the state keeps longer than De-glitch time (16*HCLK cycles), chip will be reset. The LVR reset will control the chip in reset state until the AVDD voltage rises above VLVR and the state keeps longer than De-glitch time. The PINRF (SYS_RSTSTS[1]) will be set to 1 if the previous reset source is nRESET reset. Figure 6.2-4 shows the Low Voltage Reset waveform.

May. 09, 2018 Page 31 of 84 Rev.1.03 MINI58DE SERIES DATASHEET AVDD VLVR Low Voltage Reset ( < de-glitch time) ( = de-glitch time) ( = de-glitch time) Figure 6.2-4 Low Voltage Reset (LVR) Waveform Brown-out Detector Reset (BOD Reset) 6.2.2.4 If the Brown-out Detector (BOD) function is enabled by setting the Brown-out Detector Enable Bit BODEN (SYS_BODCTL[0]), Brown-Out Detector function will detect AVDD during system operation. When the AVDD voltage is lower than VBOD which is decided by BODEN (SYS_BODCTL[0]) and BODVL (SYS_BODCTL[2:1]) and the state keeps longer than De-glitch time (Max(20*HCLK cycles, 1*LIRC cycle)), chip will be reset. The BOD reset will control the chip in reset state until the AVDD voltage rises above VBOD and the state keeps longer than De-glitch time. The default value of BODEN, BODVL and BODRSTEN is set by flash controller user configuration register CBOVEXT (CONFIG0[23]), CBOV (CONFIG0[22:21]) and CBORST (CONFIG0[20]) respectively. User can determine the initial BOD setting by setting the CONFIG0 register. Figure 6.2-5 shows the Brown-Out Detector waveform.

May. 09, 2018 Page 32 of 84 Rev.1.03 MINI58DE SERIES DATASHEET AVDD VBODL BODOUT BODRSTEN Brown-out Reset (< de-glitch time) (= de-glitch time) (= de-glitch time) Hysteresis VBODH Figure 6.2-5 Brown-out Detector (BOD) Waveform Watch Dog Timer Reset 6.2.2.5 In most industrial applications, system reliability is very important. To automatically recover the MCU from failure status is one way to improve system reliability. The watch dog timer (WDT) is widely used to check if the system works fine. If the MCU is crashed or out of control, it may cause the watch dog time-out. User may decide to enable system reset during watch dog time-out to recover the system and take action for the system crash/out-of-control after reset. Software can check if the reset is caused by watch dog time-out to indicate the previous reset is a watch dog reset and handle the failure of MCU after watch dog time-out reset by checking WDTRF (SYS_RSTSTS[2]). CPU Lockup Reset 6.2.2.6 CPU enters lockup status after CPU produces hardfault at hardfault handler and chip gives immediate indication of seriously errant kernel software. This is the result of the CPU being locked because of an unrecoverable exception following the activation of the processor’s built in system state protection hardware. When chip enters debug mode, the CPU lockup reset will be ignored. CPU Reset, CHIP Reset and SYSTEM Reset 6.2.2.7 The CPU Reset means only Cortex® -M0 core is reset and all other peripherals remain the same status after CPU reset. User can set the CPURST (SYS_IPRST0[1]) to 1 to assert the CPU Reset signal. The CHIP Reset is same with Power-On Reset. The CPU and all peripherals are reset and BS

May. 09, 2018 Page 33 of 84 Rev.1.03 MINI58DE SERIES DATASHEET (FMC_ISPCTL[1]) bit is automatically reloaded from CONFIG setting. User can set the CHIPRST (SYS_IPRST0[0]) to 1 to assert the CHIP Reset signal. The MCU Reset is similar with CHIP Reset. The difference is that BS (FMC_ISPCTL[1]) will not be reloaded from CONFIG setting and keep its original software setting for booting from APROM or LDROM. User can set the SYSRESETREQ (SCS_AIRCR[2]) to 1 to assert the MCU Reset.

6.2.3 Power Modes and Wake-up Sources

There are several wake -up sources in Idle mode and Power-down mode. Table 6.2-2 lists the available clocks for each power mode. Power Mode Normal Mode Idle Mode Power-down Mode Definition CPU is in active state CPU is in sleep state CPU is in sleep state and all clocks stop except LXT and LIRC. SRAM content retended. Entry Condition Chip is in normal mode after system reset released CPU executes WFI instruction. CPU sets sleep mode enable and power down enable and executes WFI instruction. Wake-up Sources N/A All interrupts WDT, I² C, Timer, UART, BOD and GPIO Available Clocks All All except CPU clock LXT and LIRC After Wake-up N/A CPU back to normal mode CPU back to normal mode Table 6.2-2 Power Mode Difference Table Normal Mode CPU Clock ON HXT, HIRC, LXT, LIRC, HCLK, PCLK ON Flash ON Power-down Mode CPU Clock OFF HXT, HIRC, HCLK, PCLK OFF Flash Halt System reset released CPU executes WFI Interrupts occur Idle Mode CPU Clock OFF HXT, HIRC, LXT, LIRC, HCLK, PCLK ON Flash Halt 1. SLEEPDEEP (SCS_SCR[2]) = 1 2. PDEN (CLK_PWRCTL[7]) = 1 and PDWKIF (CLK_PWRCTL[8]) = 1 3. CPU executes WFI Wake-up events occur LXT, LIRC ON Figure 6.2-6 Power Mode State Machine

May. 09, 2018 Page 34 of 84 Rev.1.03 MINI58DE SERIES DATASHEET 1. LXT (32768 Hz XTL) ON or OFF depends on SW setting in run mode. 2. LIRC (10 kHz OSC) ON or OFF depends on S/W setting in run mode. 3. If TIMER clock source is selected as LIRC/LXT and LIRC/LXT is on. 4. If WDT clock source is selected as LIRC and LIRC is on. Normal Mode Idle Mode Power-down Mode HXT (4~20 MHz XTL) ON ON Halt HIRC (12/16 MHz OSC) ON ON Halt LXT (32768 Hz XTL) ON ON ON/OFF1 LIRC (10 kHz OSC) ON ON ON/OFF2 PLL ON ON Halt LDO ON ON ON CPU ON Halt Halt HCLK/PCLK ON ON Halt SRAM retention ON ON ON FLASH ON ON Halt GPIO ON ON Halt TIMER ON ON ON/OFF3 PWM ON ON Halt WDT ON ON ON/OFF4 WWDT ON ON Halt UART ON ON Halt I2C ON ON Halt SPI ON ON Halt ADC ON ON Halt ACMP ON ON Halt Table 6.2-3 Clocks in Power Modes Wake-up sources in Power-down mode: WDT, I² C, Timer, UART, BOD and GPIO After chip enters power down, the following wake -up sources can wake chip up to normal mode. Table 6.2-4 lists the condition about how to enter Power-down mode again for each peripheral. *User needs to wait t his condition before setting PD EN (CLK_PWRCTL[7]) and execute WFI to enter Power-down mode. Wake-up Source Wake-up condition System can enter Power-down mode again condition*

May. 09, 2018 Page 35 of 84 Rev.1.03 MINI58DE SERIES DATASHEET BOD Brown-Out Detector Interrupt After software writes 1 to clear SYS_BODCTL[BODIF]. GPIO GPIO Interrupt After software write 1 to clear the Px_INTSRC[n] bit. TIMER Timer Interrupt After software writes 1 to clear TWKF (TIMERx_INTSTS[1]) and TIF (TIMERx_INTSTS[0]). WDT WDT Interrupt After software writes 1 to clear WKF (WDT_CTL[5]) (Write Protect). UART nCTS wake-up After software writes 1 to clear CTSWKIF (UARTx_INTSTS[16]). I2C Falling edge in the I2C_SDA or I2C_CLK After software writes 1 to clear WKIF ( I2C_STATUS1[0]). Table 6.2-4 Condition of Entering Power-down Mode Again

6.2.4 System Power Architecture

In this chip, the power distribution is divided into three segments.  Analog power from AV DD and AV SS provides the power for analog components operation. AVDD must be equal to VDD to avoid leakage current.  Digital power from V DD and VSS supplies power to the I/O pins and internal regulator which provides a fixed 1.8V power for digital operation.  Built-in a capacitor for internal voltage regulator The output of internal voltage regulator, LDO_CAP, require s an external capacitor which should be located close to the corresponding pin. Analog power (AVDD) should be the same voltage level as the digital power (VDD). Figure 6.2-7 shows the power distribution of the Mini58 series.

May. 09, 2018 Page 36 of 84 Rev.1.03 MINI58DE SERIES DATASHEET 2.5~5.5V to 1.8V LDO 10-bit SAR-ADC Brown Out Detector POR18 Analog Comparator FLASH Digital Logic 1.8V 10 kHz LIRC Oscillator AVDD AVSS VDD VSS LDO_CAP IO cell GPIO Pins Mini58TM Series Power Distribution PLL XT1_OUT XT1_IN 4~24 MHz or 32.768 kHz crystal oscillator Low Voltage Reset SRAM

22.1184 MHz

Figure 6.2-7 NuMicro® Mini58 Series Power Architecture Diagram

May. 09, 2018 Page 37 of 84 Rev.1.03 MINI58DE SERIES DATASHEET

6.2.5 System Memory Mapping

Table 6.2-5 Memory Mapping Table

6.2.6 Memory Organization

Overview 6.2.6.1 The NuMicro® Mini58 series provides 4G-byte addressing space. The addressing space assigned to each on -chip controllers is shown the following table . The detailed register definition, addressing space, and programming details will be described in the following sections for each on-chip peripheral. The Mini58 series only supports little-endian data format. Mini58 System Control

4 GB 0xFFFF_FFFF System Control 0xE000_ED00 SCS_BA

| External Interrupt Control 0xE000_E100 SCS_BA 0xE000_F000 System Timer Control 0xE000_E010 SCS_BA 0xE000_EFFF 0xE000_E000 0xE000_E00F 0x6002_0000 0x6001_FFFF 0x6000_0000 0x5FFF_FFFF 0x5020_0000 AHB peripherals 0x501F_FFFF FMC 0x5000_C000 FMC_BA 0x5000_0000 GPIO Control 0x5000_4000 GP_BA 0x4FFF_FFFF Interrupt Multiplexer Control 0x5000_0300 INT_BA Clock Control 0x5000_0200 CLK_BA System Global Control 0x5000_0000 SYS_BA 0x4020_0000 0x401F_FFFF

1 GB 0x4000_0000 APB peripherals

0x3FFF_FFFF UART1 Control 0x4015_0000 UART1_BA I2C1 Control 0x4012_0000 I2C1_BA ADC Control 0x400E_0000 ADC_BA ACMP Control 0x400D_0000 CMP_BA UART0 Control 0x4005_0000 UART0_BA 0x2000_1000 PWM Control 0x4004_0000 PWM_BA 0x2000_0FFF SPI Control 0x4003_0000 SPI_BA

0.5 GB 0x2000_0000 I2C0 Control 0x4002_0000 I2C0_BA

0x1FFF_FFFF Timer0/Timer1 Control 0x4001_0000 TMR_BA WWDT Control 0x4000_4100 WWDT_BA WDT Control 0x4000_4000 WDT_BA 0x0000_8000 0x0000_7FFF

0 GB 0x0000_0000

32 KB on-chip Flash (Mini58)

4 KB SRAM

May. 09, 2018 Page 38 of 84 Rev.1.03 MINI58DE SERIES DATASHEET System Memory Map 6.2.6.2 The memory locations assigned to each on-chip controllers are shown in the following table. Addressing Space Token Modules Flash and SRAM Memory Space 0x0000_0000 – 0x0000_7FFF FLASH_BA Flash Memory Space (32 KB) 0x2000_0000 – 0x2000_0FFF SRAM_BA SRAM Memory Space (4 KB) AHB Modules Space (0x5000_0000 – 0x501F_FFFF) 0x5000_0000 – 0x5000_01FF SYS_BA System Global Control Registers 0x5000_0200 – 0x5000_02FF CLK_BA Clock Control Registers 0x5000_0300 – 0x5000_03FF INT_BA Interrupt Multiplexer Control Registers 0x5000_4000 – 0x5000_7FFF GP_BA GPIO (P0~P5) Control Registers 0x5000_C000 – 0x5000_FFFF FMC_BA Flash Memory Control Registers APB Modules Space (0x4000_0000 – 0x401F_FFFF) 0x4000_4000 – 0x4000_00FF WDT_BA Watchdog Timer Control Registers 0x4000_4100 – 0x4000_47FF WWDT_BA Window Watchdog Timer Control Registers 0x4001_0000 – 0x4001_3FFF TMR_BA Timer0/Timer1 Control Registers 0x4002_0000 – 0x4002_3FFF I2C0_BA I2C0 Interface Control Registers 0x4003_0000 – 0x4003_3FFF SPI_BA SPI with Master/slave Function Control Registers 0x4004_0000 – 0x4004_3FFF PWM_BA PWM Control Registers 0x4005_0000 – 0x4005_3FFF UART0_BA UART0 Control Registers 0x400D_0000 – 0x400D_3FFF ACMP_BA Analog Comparator Control Registers 0x400E_0000 – 0x400E_3FFF ADC_BA Analog-Digital-Converter (ADC) Control Registers 0x4012_0000 – 0x4012_3FFF I2C1_BA I2C1 Interface Control Registers 0x4015_0000 – 0x4015_3FFF UART1_BA UART1 Control Registers System Control Space (0xE000_E000 – 0xE000_EFFF) 0xE000_E010 – 0xE000_E0FF SCS_BA System Timer Control Registers 0xE000_E100 – 0xE000_ECFF SCS_BA Nested Vectored Interrupt Control Registers 0xE000_ED00 – 0xE000_ED8F SCS_BA System Control Block Registers Table 6.2-6 Address Space Assignments for On-Chip Modules

May. 09, 2018 Page 39 of 84 Rev.1.03 MINI58DE SERIES DATASHEET

6.2.7 System Timer (SysTick)

The Cortex ® -M0 includes an integrated system timer, SysTick , which provides a simple, 24 -bit clear-on-write, decrementing, wrap -on-zero counter with a flexible control mechanism. The counter can be used as a Real Time Operating System (RTOS) tick timer or as a simple counter. When system timer is enabled, it will count down from the value in the SysTick Current Value Register (SYST_CVR) to zero, and reload (wrap) to the value in the SysTick Reload Value Register (SYST_RVR) on the next clock edge, and then decrement on subsequent clocks. When the counter transitions to zero, the COUNTFLAG status bit is set. The COUNTFLAG bit clears on reads. The SYST_CVR value is UNKNOWN on reset. Software should write to the register to clear it to zero before enabling the feature. This ensures the timer to count from the SYST_RVR value rather than an arbitrary value when it is enabled. If the SYST_RVR is zero, the timer will be maintained with a current value of zero after it is reloaded with this value. This mechanism can be used to disable the feature independently from the timer enable bit. For more detailed information, please refer to the “ARM ® Cortex® -M0 Technical Reference Manual” and “ARM® v6-M Architecture Reference Manual”.

May. 09, 2018 Page 40 of 84 Rev.1.03 MINI58DE SERIES DATASHEET

6.2.8 Nested Vectored Interrupt Controller (NVIC)

Overview 6.2.8.1 The Cortex® -M0 CPU provides an interrupt controller as an integral part of the exception mode, named as “Nested Vectored Interrupt Controller (NVIC)” , which is closely coupled to the processor core and provides following features. Features 6.2.8.2  Nested and Vectored interrupt support  Automatic processor state saving and restoration  Dynamic priority change  Reduced and deterministic interrupt latency The NVIC prioritizes and handles all supported exceptions. All exceptions are handled in “Handler Mode”. This NVIC architecture supports 32 (IRQ[31:0]) discrete interrupts with 4 levels of priority. All of the interrupts and most of the system exceptions can be configured to different priority levels. When an interrupt occurs, the NVIC will compare the priority of the new interrupt to the current running one’s priority. If the priority of the new interrupt is higher than the current one, the new interrupt handler will override the current handler. When an interrupt is accepted, the starting address of the Interrupt Service Routine (ISR) is fetched from a vector table in memory. There is no need to determine which interrupt is accepted and branch to the starting address of the correlated ISR by software. While the starting address is fetched, NVIC will also automatically save processor state including the registers “PC, PSR, LR, R0~R3, R12” to the stack. At the end of the ISR, the NVIC wil l restore the mentioned registers from stack and resume the normal execution. Thus it will take less and deterministic time to process the interrupt request. The NVIC supports “Tail Chaining” which handles back -to-back interrupts efficiently without the overhead of states saving and restoration and therefore reduces delay time in switching to pending ISR at the end of current ISR. The NVIC also supports “Late Arrival” which improves the efficiency of concurrent ISRs. When a higher priority interrupt reques t occurs before the current ISR starts to execute (at the stage of state saving and starting address fetching), the NVIC will give priority to the higher one without delay penalty. Thus it advances the real-time capability. For more detailed information, please refer to the “ARM ® Cortex® -M0 Technical Reference Manual” and “ARM® v6-M Architecture Reference Manual”. Exception Model and System Interrupt Map 6.2.8.3 The following table lists the exception model supported by NuMicro® Mini58 series. Software can set four levels of priority on some of these exceptions as well as on all interrupts. The highest user-configurable priority is denoted as 0 and the lowest priority is denoted as 3. The default priority of all the user -configurable interrupts is 0. Note that the priority 0 is treated as the fourth priority on the system, after three system exceptions “Reset”, “NMI” and “Hard Fault”.

May. 09, 2018 Page 41 of 84 Rev.1.03 MINI58DE SERIES DATASHEET Exception Name Vector Number Priority Reset 1 -3 NMI 2 -2 Hard Fault 3 -1 Reserved 4 ~ 10 Reserved SVCall 11 Configurable Reserved 12 ~ 13 Reserved PendSV 14 Configurable SysTick 15 Configurable Interrupt (IRQ0 ~ IRQ31) 16 ~ 47 Configurable Table 6.2-7 Exception Model Exception Number Interrupt Number (Bit In Interrupt Registers) Interrupt Name Source Module Interrupt Description Power-Down Wake-Up 1 ~ 15 - - - System exceptions - 16 0 BODOUT Brown-out Brown-out low voltage detected interrupt Yes 17 1 WDT_INT WDT Watchdog Timer interrupt Yes 18 2 EINT0 GPIO External signal interrupt from P3.2 pin Yes 19 3 EINT1 GPIO External signal interrupt from P5.2 pin Yes 20 4 GP0/1_INT GPIO External signal interrupt from GPIO group P0~P1 Yes 21 5 GP2/3/4_INT GPIO External signal interrupt from GPIO group P2~P4 except P3.2 Yes 22 6 PWM_INT PWM PWM interrupt No 23 7 BRAKE_INT PWM PWM Brake interrupt No 24 8 TMR0_INT TMR0 Timer 0 interrupt Yes 25 9 TMR1_INT TMR1 Timer 1 interrupt Yes 26 ~ 27 10 ~ 11 - - - 28 12 UART0_INT UART0 UART0 interrupt Yes 29 13 UART1_INT UART1 UART1 interrupt Yes 30 14 SPI_INT SPI SPI interrupt No 31 15 - - - 32 16 GP5_INT GPIO External signal interrupt from GPIO group P5 except P5.2 Yes 33 17 HIRC_TRIM_IN T HIRC HIRC trim interrupt No 34 18 I2C0_INT I2C0 I C0 interrupt Yes

May. 09, 2018 Page 42 of 84 Rev.1.03 MINI58DE SERIES DATASHEET Exception Number Interrupt Number (Bit In Interrupt Registers) Interrupt Name Source Module Interrupt Description Power-Down Wake-Up 35 19 I2C1_INT I2C1 I2C1 interrupt No 36 ~ 40 20 ~ 24 - - - 41 25 ACMP_INT ACMP Analog Comparator 0 or Comparator 1 interrupt Yes 42 ~ 43 26 ~ 27 - - - 44 28 PWRWU_INT CLKC Clock controller interrupt for chip wake- up from Power-down state Yes 45 29 ADC_INT ADC ADC interrupt No 46 ~ 47 30 ~ 31 - - - Table 6.2-8 System Interrupt Map Vector Table Vector Table 6.2.8.4 When an interrupt is accepted, the processor will automatically fetch the starting address of the interrupt service routine (ISR) from a vector table in memory. For ARMv6 -M, the vector table based address is fixed at 0x00000000. The vector table contains the initialization value for the stack pointer on reset, and the entry point addresses for all exception handlers. The vector number on previous page defines the order of entries in the vector tabl e associated with the exception handler entry as illustrated in previous section. Vector Table Word Offset (Bytes) Description 0x00 Initial Stack Pointer Value Exception Number * 0x04 Exception Entry Pointer using that Exception Number Table 6.2-9 Vector Table Format Operation Description 6.2.8.5 NVIC interrupts can be enabled and disabled by writing to their corresponding Interrupt Set - Enable or Interrupt Clear-Enable register bit-field. The registers use a write-1-to-enable and write- 1-to-clear policy, both registers reading back the current enabled state of the corresponding interrupts. When an interrupt is disabled, interrupt assertion will cause the interrupt to become Pending; however, the interrupt w ill not be activated. If an interrupt is Active when it is disabled, it remains in its Active state until cleared by reset or an exception return. Clearing the enable bit prevents new activations of the associated interrupt. NVIC interrupts can be pended/u n-pended using a complementary pair of registers to those used to enable/disable the interrupts, named the Set -Pending Register and Clear -Pending Register respectively. The registers use a write -1-to-enable and write -1-to-clear policy, both registers reading back the current pended state of the corresponding interrupts. The Clear -Pending Register has no effect on the execution status of an Active interrupt. NVIC interrupts are prioritized by updating an 8 -bit field within a 32 -bit register (each register supporting four interrupts). The general registers associated with the NVIC are all accessible from a block of memory in the System Control Space and will be described in next section.

May. 09, 2018 Page 43 of 84 Rev.1.03 MINI58DE SERIES DATASHEET

6.2.9 System Control Registers (SCB)

The Cortex® -M0 status and operating mode control are managed System Control Registers. Including CPUID, Cortex® -M0 interrupt priority and Cortex® -M0 power management can be controlled through these system control registers. For more detailed information, please refer to the “ARM ® Cortex® -M0 Technical Reference Manual” and “ARM® v6-M Architecture Reference Manual”.

May. 09, 2018 Page 44 of 84 Rev.1.03 MINI58DE SERIES DATASHEET Clock Controller 6.3

6.3.1 Overview

The clock controller generates clocks for the whole chip, including system clocks and all peripheral clocks. The clock controller also implements the power control function with the individually clock ON/OFF control, clock source selection and clock divider. The chip enters Power-down mode when Cortex® -M0 core executes the WFI instruction only if the PDEN (CLK_PWRCTL[7]) bit is set to 1. After that, chip enters Power-down mode and waits for wake-up interrupt source triggered to exit Power-down mode. In Power-down mode, the clock controller turns off the 4~24 MHz external high speed crystal (HXT) and 22.1184 MHz internal high speed RC oscillator (HIRC) to reduce the overall system power consumption. The following figures show the clock generator and the overview of the clock source control. The clock generator consists of 3 sources as listed below:  4~24 MHz external high speed crystal oscillator (HXT) or 32.768 kHz (LXT) external low speed crystal oscillator  Programmable PLL output clock frequency (PLL source can be selected from external 4 ~ 24 MHz external high speed crystal (HXT) or 22.1184 MHz internal high speed oscillator (HIRC)) (PLL FOUT)  22.1184 MHz internal high speed RC oscillator (HIRC)  10 kHz internal low speed RC oscillator (LIRC) XT1_OUT 4~24 MHz HXT or 32.768 kHz LXT XTLEN (CLK_PWRCTL[1:0]) XT1_IN HIRCEN (CLK_PWRCTL[2]) 10 kHz LIRC LIRCEN (CLK_PWRCTL[3]) HXT or LXT LIRC Legend: HXT = 4~24 MHz external high speed crystal oscillator LXT = 32.768 kHz external low speed crystal oscillator HIRC = 22.1184 MHz internal high speed RC oscillator LIRC = 10 kHz internal low speed RC oscillator PLL PLLSRC (CLK_PLLCTL[19]) PLL FOUT HIRC Figure 6.3-1 Clock Generator Block Diagram

May. 09, 2018 Page 45 of 84 Rev.1.03 MINI58DE SERIES DATASHEET PLLCON[19] 22.1184 MHz 4~24 MHz PLLFOUT 111 011 010 001 4~24 MHz Reserved 4~24 MHz HCLK CLKSEL0[5:3] SysTick ADC UART 0~1 ISP WDT PWMCH23 TMR 1 TMR 0 CPU FMC 10 kHz 011 010 001 000 HCLK 10 kHz 4~24 MHz 111 011 010 001 PLLFOUT Reserved 4~24 MHz 10 kHz CLKSEL0[2:0] SYST_CSR[2] CPUCLK 1/(HCLKDIV+1) PCLK CPUCLK HCLK PLLFOUT 4~24 MHz HCLK CLKSEL1[3:2] External trigger CLKSEL1[14:12] CLKSEL1[10:8] 1/(ADC_DIV+1) CLKSEL1[1:0] HCLK 1/2048 1/(UARTDIV+1) 4~24 MHz 10, 11 PLLFOUT 4~24 MHz CLKSEL1[25:24]

22.1184 MHz 111

4~24 MHz CLKSEL2[3:2] FREQDIV BOD10 kHz CLKSEL2[17:16] 10 kHzCLKSEL1[31:30] CLKSEL1[29:28] I2C 0~1 ACMP PWMCH01 PWMCH45 CLKSEL2[5:4] HCLK 1/2048 PLLFOUT 4~24 MHz HCLK CLKSEL1[5:4] Reserved 004~24 MHz 10HCLK Reserved Note: Before clock switching, both the pre- selected and newly selected clock sources must be turned on and stable. Figure 6.3-2 Clock Generator Global View Diagram

May. 09, 2018 Page 46 of 84 Rev.1.03 MINI58DE SERIES DATASHEET

6.3.2 Auto-trim

This chip supports auto -trim function: the HIRC trim (22.1184 MHz internal RC oscillator), according to the accurate LXT (32.768 kHz crystal oscillator), automatically gets accurate HIRC output frequency, 1 % deviation within all temperature ranges. For instance, the system needs an accurate 22.1184 MHz clock. In such case, if u sers do not want to use 22.1184 MHz HXT as the system clock source, they need to solder 32.768 kHz crystal in system, and set FREQSEL (SYS_IRCTCTL[0] trim frequency selection) to “1”, and the auto -trim function will be enabled. Interrupt status bit FREQLOC K (SYS_IRCTISTS[0] HIRC frequency lock status) high indicates the HIRC output frequency is accurate within 1% deviation. To get better results, it is recommended to set both LOOPSEL (SYS_IRCTCTL[5:4] trim calculation loop) and RETRYCNT (SYS_IRCTCTL[7:6] trim value update limitation count) to “11”.

6.3.3 System Clock and SysTick Clock

The system clock has 4 clock sources which were generated from clock generator block. The clock source switch depends on the register HCLKSEL (CLK_CLKSEL0[2:0]). The block diagram is shown in Figure 6.3-3. 111 011 010 001 PLL FOUT Reserved 4~24 MHz HXT or 32.768 kHz LXT 10 kHz LIRC HCLKSEL (CLK_CLKSEL0[2:0]) 1/(HCLK_N+1) HCLKDIV (CLK_CLKDIV[3:0]) CPU in Power Down Mode CPU AHB APB CPUCLK HCLK PCLK Legend: HXT = 4~24 MHz external high speed crystal oscillator HIRC = 22.1184 MHz internal high speed RC oscillator LIRC = 10 kHz internal low speed RC oscillator Note: Before clock switching, both the pre- selected and newly selected clock sources must be turned on and stable. Figure 6.3-3 System Clock Block Diagram The source of PCLK is equal to HCLK in system clock architecture. The clock source of SysTick in Cortex® -M0 core can use CPU clock or external clock CLKSRC(SYST_CSR[2]). If using external clock, the SysTick clock (STCLK) has 4 clock sources. The clock source switch depends on the setting of the register STCLKSEL (CLK_CLKSEL0[5:3]). The block diagram is shown in Figure 6.3-4.

May. 09, 2018 Page 47 of 84 Rev.1.03 MINI58DE SERIES DATASHEET 111 010 HCLK 4~24 MHz HXT or 32.768 kHz LXT STCLKSEL (CLK_CLKSEL0[5:3]) STCLK 4~24 MHz HXT or 32.768 kHz LXT 000 Reserved Legend: HXT = 4~24 MHz external high speed crystal oscillator HIRC = 22.1184 MHz internal high speed RC oscillator LIRC = 10 kHz internal low speed RC oscillator Note: Before clock switching, both the pre- selected and newly selected clock sources must be turned on and stable. Figure 6.3-4 SysTick Clock Control Block Diagram

6.3.4 Peripherals Clock Source Selection

The peripheral clock has different clock source switch settings depending on different peripherals. Please note that, while switching clock source from one to another, user must wait until both clock sources are running stabled.

May. 09, 2018 Page 48 of 84 Rev.1.03 MINI58DE SERIES DATASHEET Timer1 Timer0TMR0CKEN (CLK_APBCLK[2]) TMR1CKEN (CLK_APBCLK[3]) CLKOCKEN (CLK_APBCLK[6]) I2C1CKEN (CLK_APBCLK[9]) SPIEN (CLK_APBCLK[12]) UART0CKEN (CLK_APBCLK[16]) PWMCH01CKEN (CLK_APBCLK[20]) PWMCH23CKEN (CLK_APBCLK[21]) PWMCH45CKEN (CLK_APBCLK[22]) ACMPCKEN (CLK_APBCLK[30]) ADCCKEN (CLK_APBCLK[28]) Frequency Divider I2C1 SPI UART0 PWM01 PWM23 PWM45 ACMP ADC WDTCKEN (CLK_APBCLK[0]) PCLK Watch Dog Timer I2C0I2C0CKEN (CLK_APBCLK[8]) UART1CKEN (CLK_APBCLK[17]) UART1 Figure 6.3-5 Peripherals Bus Clock Source Selection for PCLK

May. 09, 2018 Page 49 of 84 Rev.1.03 MINI58DE SERIES DATASHEET Peripheral Clok Selectable Ext. CLK (HXT Or LXT) HIRC LIRC HCLK PLL WDT Yes Yes No Yes Yes No WWDT Yes Yes No Yes Yes No Timer0 Yes Yes Yes Yes Yes No Timer1 Yes Yes Yes Yes Yes No I2C0 No - - - - - I2C1 No - - - - - SPI Yes Yes No No Yes Yes UART0 Yes Yes Yes No No Yes UART1 Yes Yes Yes No No Yes PWM No - - - - - ADC Yes Yes Yes No Yes Yes ACMP No - - - - - Table 6.3-1 Peripheral Clock Source Selection Table Note: For the peripherals those peripheral clock are not selectable, its clock source is fixed to PCLK.

6.3.5 Power-down Mode Clock

When chip enters Power-down mode, system clocks, some clock sources, and some peripheral clocks will be disabled. Some clock sources and peripheral clocks are still active in Power-down mode. The clocks still kept active are listed below:  Clock Generator  10 kHz internal low speed oscillator (LIRC) clock  32.768 kHz external low speed crystal oscillator (LXT) clock (If PDLXT = 1 and XTLEN[1:0] = 10)  Peripherals Clock (When 10 kHz low speed oscillator is adopted as clock source)  Watchdog Clock  Timer 0/1 Clock

6.3.6 Frequency Divider Output

This device is equipped with a power-of-2 frequency divider which is composed of 16 chained divide-by-2 shift registers. One of the 16 shift register outputs selected by a sixteen to one multiplexer is reflected to the CLKO pin. Therefore there are 16 options of power-of-2 divided clocks with the frequency from Fin/21 to Fin/216 where Fin is input clock frequency to the clock divider.

May. 09, 2018 Page 50 of 84 Rev.1.03 MINI58DE SERIES DATASHEET The output formula is Fout = Fin/2(N+1), where Fin is the input clock frequency, Fout is the clock divider output frequency and N is the 4-bit value in FREQSEL (CLK_CLKOCTL[3:0]). When writing 1 to CLKOEN (CLK_CLKOCTL[4]), the chained counter starts to count. When writing 0 to CLKOEN (CLK_CLKOCTL[4]), the chained counter continuously runs till divided clock reaches low state and stay in low state. If DIV1EN (CLK_CLKOCTL[5]) set to 1, the frequency divider clock (FRQDIV_CLK) will bypass power-of-2 frequency divider. The frequency divider clock will be output to CLKO pin directly. HCLK LIRC 4~24 MHz HXT or 32.768 kHz LXT FREQSEL (CLK_CLKSEL2[3:2]) CLKOCKEN (CLK_APBCLK[6]) CLKO_CLK Legend: HXT = 4~24 MHz external high speed crystal oscillator LXT = 32.768 kHz external low speed crystal oscillator HIRC = 22.1184 MHz internal high speed RC oscillator Note: Before clock switching, both the pre- selected and newly selected clock sources must be turned on and stable. Figure 6.3-6 Clock Source of Frequency Divider 0000 0001 1110 1111 16 to 1 MUX FREQSEL (CLK_CLKOCTL[3:0]) CLKO 16 chained divide-by-2 counter CLKOEN (CLK_CLKOCTL[4]) Enable divide-by-2 counter DIV1EN (CLK_CLKOCTL[5]) CLKO_CLK Figure 6.3-7 Block Diagram of Frequency Divider

May. 09, 2018 Page 51 of 84 Rev.1.03 MINI58DE SERIES DATASHEET Flash Memory Controller (FMC) 6.4

6.4.1 Overview

The NuMicro® Mini58 series is equipped with 32 Kbytes on-chip embedded flash for application and Data Flash to store some application dependent data. A User Configuration block provides for system initialization. A 2.5 Kbytes loader ROM (LDROM) is used for In-System-Programming (ISP) function. A 512 bytes security protection ROM (SPROM) can conceal user program. This chip also supports In-Application-Programming (IAP) function, user switches the code executing without the chip reset after the embedded flash updated.

6.4.2 Features

 Supports 32 Kbytes application ROM (APROM).  Supports 2.5 Kbytes loader ROM (LDROM).  Supports configurable Data Flash size to share with APROM.  Supports 512 bytes security protection ROM (SPROM) to conceal user program.  Supports 12 bytes User Configuration block to control system initialization.  Supports 512 bytes page erase for all embedded flash.  Supports CRC-32 checksum calculation function.  Supports In-System-Programming (ISP) / In-Application-Programming (IAP) to update embedded flash memory.

May. 09, 2018 Page 52 of 84 Rev.1.03 MINI58DE SERIES DATASHEET General Purpose I/O (GPIO) 6.5

6.5.1 Overview

The NuMicro® Mini58 series has up to 30 General Purpose I/O pins to be shared with other function pins depending on the chip configuration. These 30 pins are arranged in 6 ports named as P0, P1, P2, P3, P4 and P5. Each of the 30 pins is independent and has the corresponding register bits to control the pin mode function and data. The I/O type of each pin can be configured by software individually as Input, Push-pull output, Open-drain output, or Quasi-bidirectional mode. After the chip is reset, the I/O mode of all pins is stay in input mode and each port data register Px_DOUT[n] resets to 1. For Quasi-bidirectional mode, each I/O pin is equipped with a very weak individual pull-up resistor about 110 k ~ 300 k for VDD is from 5.0 V to 2.5 V.

6.5.2 Features

 Four I/O modes:  Quasi-bidirectional mode  Push-pull output  Open-drain output  Input-only with high impendence  Quasi-bidirectional TTL/Schmitt trigger input mode selected by SYS_Px_MFP[23:16]  I/O pin configured as interrupt source with edge/level setting  I/O pin internal pull-up resistor enabled only in Quasi-bidirectional I/O mode  Enabling the pin interrupt function will also enable the pin wake-up function  High driver and high sink I/O mode support  Configurable default I/O mode of all pins after reset by CIOINI (Config0[10]) setting  CIOINI = 0, all GPIO pins in Quasi-bidirectional mode after chip reset  CIOINI = 1, all GPIO pins in Input tri-state mode after chip reset

May. 09, 2018 Page 53 of 84 Rev.1.03 MINI58DE SERIES DATASHEET Timer Controller (TMR) 6.6

6.6.1 Overview

The Timer Controller includes two 32-bit timers, TMR0 and TMR1, allowing user to easily implement a timer control for applications. The timer can perform functions, such as frequency measurement, delay timing, clock generation, event counting by external input pins, and interval measurement by external capture pins.

6.6.2 Features

 Two sets of 32-bit timer with 24-bit up counter and one 8-bit prescale counter  Independent clock source for each timer  Provides one-shot, periodic, toggle-output and continuous counting operation modes  24-bit up counter value is readable through CNT (TIMRTx_CNT[23:0])  Supports event counting function  24-bit capture value is readable through CAPDAT (TIMERx_CAP[23:0])  Supports external capture pin event for interval measurement  Supports external capture pin event to reset 24-bit up counter  Supports chip wake-up from Idle/Power-down mode if a timer interrupt signal is generated  Supports internal capture triggered while internal ACMP output signal transition

May. 09, 2018 Page 54 of 84 Rev.1.03 MINI58DE SERIES DATASHEET Enhanced PWM Generator 6.7

6.7.1 Overview

The NuMicro® Mini58 series has built in one PWM unit (PWM0) which is specially designed for motor driving control applications. The PWM0 supports six PWM generators which can be configured as six independent PWM outputs, PWM0_CH0~PWM0_CH5, or as three complementary PWM pairs, (PWM0_CH0, PWM0_CH1), (PWM0_CH2, PWM0_CH3) and (PWM0_CH4, PWM0_CH5) with three programmable dead-time generators. Every complementary PWM pairs share one 8-bit prescaler. There are six clock dividers providing five divided frequencies (1, 1/2, 1/4, 1/8, 1/16) for each channel. Each PWM output has independent 16-bit counter for PWM period control, and 16-bit comparators for PWM duty control. The six PWM generators provide twelve independent PWM interrupt flags which are set by hardware when the corresponding PWM period counter comparison matched period and duty. Each PWM interrupt source with its corresponding enable bit can request PWM interrupt. The PWM generators can be configured as One-shot mode to produce only one PWM cycle signal or Auto-reload mode to output PWM waveform continuously. To prevent PWM driving output pin with unsteady waveform, the 16-bit period down counter and 16-bit comparator are implemented with double buffer. When user writes data to counter/comparator buffer registers, the updated value will be loaded into the 16 -bit down counter/ comparator at the end of current period. The double buffering feature avoids glitch at PWM outputs. Besides PWM, Motor controlling also need Timer, ACMP and ADC to work together. In order to control motor more precisely, we provide some registers that not only configure PWM but also Timer, ADC and ACMP, by doing so, it can save more CPU time and control motor with ease especially in BLDC.

6.7.2 Features

The PWM0 supports the following features:  Six independent 16-bit PWM duty control units with maximum six port pins:  Six independent PWM outputs – PWM0_CH0, PWM0_CH1, PWM0_CH2, PWM0_CH3, PWM0_CH4, and PWM0_CH5  Three complementary PWM pairs, with each pin in a pair mutually complement to each other and capable of programmable dead-time insertion – (PWM0_CH0, PWM0_CH1), (PWM0_CH2, PWM0_CH3) and (PWM0_CH4, PWM0_CH5)  Three synchronous PWM pairs, with each pin in a pair in-phase – (PWM0_CH0, PWM0_CH1), (PWM0_CH2, PWM0_CH3) and (PWM0_CH4, PWM0_CH5)  Group control bit – PWM0_CH2 and PWM0_CH4 are synchronized with PWM0_CH0, PWM0_CH3 and PWM0_CH5 are synchronized with PWM0_CH1  One-shot (only support edge-aligned type) or Auto-reload mode PWM  Up to 16-bit resolution  Supports edge-aligned, center-aligned and precise center-aligned mode  Supports asymmetric PWM generating in center-aligned and precise center-aligned mode  Supports center loading in center-aligned and precise center-aligned mode  Programmable dead-time insertion between complementary paired PWMs

May. 09, 2018 Page 55 of 84 Rev.1.03 MINI58DE SERIES DATASHEET  Each pin of PWM0_CH0 to PWM0_CH5 has independent polarity setting control  Hardware fault brake protections  Supports software trigger  Two Interrupt source types:  Synchronously requested at PWM frequency when down counter comparison matched (edge- and center-aligned type) or underflow (edge- aligned type)  Requested when external fault brake asserted  BKP0: EINT0 or CPO1  BKP1: EINT1 or CPO0  The PWM signals before polarity control stage are defined in the view of positive logic. The PWM ports is active high or active low are controlled by polarity control register  Supports mask aligned function  Supports independently rising CMP matching, PERIOD matching, falling CMP matching (in Center-aligned type), period matching to trigger ADC conversion  Timer comparing matching event trigger PWM to do phase change in BLDC application  Supports ACMP output event trigger PWM to force PWM output at most one pe riod low, this feature is usually for step motor control  Provides interrupt accumulation function

May. 09, 2018 Page 56 of 84 Rev.1.03 MINI58DE SERIES DATASHEET Figure 6.7-1 Application Circuit Diagram ADC PWM0 UART Timer UART UART Interface 3-Phase Inverter (IPM, MOSFET, IGBT) Isolation circuit DC Bus + DC Bus - BLDC S N +5V AIN[7] +5V CH0 CH1 CH2 CH3 CH4 CH5 AIN[6] nINT0 Push Button +5V CPO0 +VDC Bus MINI58 Trapezoidal Commutation System Architecture Hyper Terminal AIN[0] AIN[1] AIN[2] AIN[3] +VDC Bus Option 1 Option 2 Sensorless circuit

May. 09, 2018 Page 57 of 84 Rev.1.03 MINI58DE SERIES DATASHEET Watchdog Timer (WDT) 6.8

6.8.1 Overview

The Watchdog Timer is used to perform a system reset when system runs into an unknown state. This prevents system from hanging for an infinite period of time. Besides, the Watchdog Timer supports the function to wake-up system from Idle/Power-down mode.

6.8.2 Features

 18-bit free running up counter for WDT time-out interval  Selectable time-out interval (24 ~ 218) WDT_CLK cycles and the time-out interval is 1.6 ms ~ 26.214s if WDT_CLK = 10 kHz  System kept in reset state for a period of (1 / WDT_CLK) * 63  Supports selectable WDT reset delay period, including 1026、130、18 or 3 WDT_CLK reset delay period  Supports to force WDT enabled after chip powered on or reset by setting CWDTEN[2:0] in Config0 register  Supports WDT time-out wake-up function only if WDT clock source is selected as LIRC or LXT

May. 09, 2018 Page 58 of 84 Rev.1.03 MINI58DE SERIES DATASHEET Window Watchdog Timer (WWDT) 6.9

6.9.1 Overview

The Window Watchdog Timer (WWDT) is used to perform a system reset within a specified window period to prevent software run to uncontrollable status by any unpredictable condition.

6.9.2 Features

 6-bit down counter value (CNTDAT) and 6-bit compare value (CMPDAT) to make the WWDT time-out window period flexible  Supports 4-bit value (PSCSEL) to programmable maximum 11-bit prescale counter period of WWDT counter

May. 09, 2018 Page 59 of 84 Rev.1.03 MINI58DE SERIES DATASHEET UART Controller (UART) 6.10

6.10.1 Overview

The NuMicro® Mini58 series provides two channels of Universal Asynchronous Receiver/Transmitters (UART). The UART0 performs supports flow control function. The UART0 performs a serial-to-parallel conversion on data received from the peripheral, and a parallel-to- serial conversion on data transmitted from the CPU. The UART0 controller also supports IrDA SIR Function, and RS-485 function mode. The UART0 channel supports six types of interrupts. The UART1 channel supports five types of interrupts. The UART1 only performs a serial-to- parallel conversion on data received from the peripheral, and a parallel-to-serial conversion on data transmitted from the CPU. The UART0 has 16 bytes Receiver/Transmitter FIFO. The UART1 only has one Receiver/Transmitter buffer.

6.10.2 Features

 Full duplex, asynchronous communications  Separates receive/transmit 16/16 bytes entry FIFO for data payloads (Only Available in UART0)  Separates receive/transmit 1/1 byte buffer for data payloads (Only Available in UART1)  Supports hardware auto flow control/flow control function (CTS, RTS) and programmable RTS flow control trigger level (Only Available in UART0)  Programmable receiver buffer trigger level (Only Available in UART0)  Supports programmable baud-rate generator for each channel individually  Supports CTS wake-up function (Only Available in UART0)  Supports 8-bit receiver buffer time-out detection function  Programmable transmitting data delay time between the last stop and the next start bit by setting UART_TOUT[15:8] register  Supports break error, frame error, parity error and receive/transmit buff er overflow detection function  Fully programmable serial-interface characteristics  Programmable number of data bit, 5, 6, 7, 8 character  Programmable parity bit, even, odd, no parity or stick parity bit generation and detection  Programmable stop bit, 1, 1.5, or 2 stop bit generation  Supports IrDA SIR function mode (Only Available in UART0)  Supports 3/16-bit duration for normal mode  Supports RS-485 function mode (Only Available in UART0)  Supports RS-485 9-bit mode  Supports hardware or software enable to program RTS pin to control RS-485 transmission direction directly

May. 09, 2018 Page 60 of 84 Rev.1.03 MINI58DE SERIES DATASHEET I2C Serial Interface Controller (I2C) 6.11

6.11.1 Overview

I2C is a two-wire, bi-directional serial bus that provides a simple and efficient method for data exchange between devices. The I2C standard is a true multi-master bus including collision detection and arbitration that prevents data corruption if two or more masters attempt to control the bus simultaneously. There are two sets of I2C controller and only I2C0 supports Power-down wake-up function.

6.11.2 Features

The I2C bus uses two wires (SDA and SCL) to transfer information between devices connected to the bus. The main features of the bus include:  Supports up to two I2C ports  Master/Slave mode  Bi-directional data transfer between masters and slaves  Multi-master bus  Arbitration between simultaneously transmitting masters without corruption of serial data on the bus  Serial clock synchronization allowing devices with different bit rates to communicate via one serial bus  Serial clock synchronization can be used as a handshake mechanism to suspend and resume serial transfer  Built-in 14-bit time-out counter that requests the I2C interrupt if the I2C bus hangs up and timer-out counter overflows  Programmable clocks allowing for versatile rate control  Supports 7-bit addressing mode  Supports multiple address recognition (four slave address registers with mask option)  Supports Power-down wake-up function (Only I2C0 channel support this function)  Supports two-level buffer function

May. 09, 2018 Page 61 of 84 Rev.1.03 MINI58DE SERIES DATASHEET Serial Peripheral Interface (SPI) 6.12

6.12.1 Overview

The Serial Peripheral Interface (SPI) applies to synchronous serial data communication and allows full duplex transfer. Devices communicate in Master/Slave mode with 4-wire bi-direction interface. The SPI controller performing a serial-to-parallel conversion on data received from a peripheral device, and a parallel-to-serial conversion on data transmitted to a peripheral device. SPI controller can be configured as a master or a slave device.

6.12.2 Features

 Supports Master or Slave mode operation  Configurable transfer bit length  Provides four 32-bit FIFO buffers  Supports MSB first or LSB first transfer  Supports byte reorder function  Supports byte or word suspend mode  Supports Slave 3-wire mode

May. 09, 2018 Page 62 of 84 Rev.1.03 MINI58DE SERIES DATASHEET Analog-to-Digital Converter (ADC) 6.13

6.13.1 Overview

The Mini58 series contains one 10-bit successive approximation analog-to-digital converters (SAR A/D converter) with eight input channels. The A/D converters can be started by software, external pin (STADC/P3.2) or PWM trigger.

6.13.2 Features

 Analog input voltage range: 0 ~ Analog Supply Voltage from AVDD  10-bit resolution and 8-bit accuracy is guaranteed  Up to eight single-end analog input channels  Maximum ADC clock frequency is 6 MHz, and 14 ADC clocks per sample  Two operating modes  Single mode: A/D conversion is performed one time on a specified channel  PWM sequence mode: When PWM trigger, two of three ADC channels from 0 to 2 will automatically convert analog data in the sequence of channel [0,1] or channel[1,2] or channel[0,2] defined by MODESEL (ADC_SEQCTL[3:2])  An A/D conversion can be started by:  Software write 1 to SWTRG bit  External pin STADC  PWM trigger with optional start delay period  Each Conversion result is held in data register with valid and overrun indicators  Conversion results can be compared with specified value and user can select whether to generate an interrupt when conversion result matches the compare register setting  Channel 7 supports 2 input sources: External analog voltage and internal fixed band- gap voltage

May. 09, 2018 Page 63 of 84 Rev.1.03 MINI58DE SERIES DATASHEET Analog Comparator (ACMP) 6.14

6.14.1 Overview

The NuMicro® Mini58 series contains two comparators which can be used in a number of different configurations. The comparator output is logic 1 when positive input is greater than negative input, otherwise the output is 0. Each comparator can be configured to generate interrupt when the comparator output value changes.

6.14.2 Features

 Analog input voltage range: 0 ~ AVDD  Supports Hysteresis function  Optional internal reference voltage source for each comparator negative input  ACMP0 supports:  Four positive sources  Three negative sources  P1.4  Internal Comparator Reference Voltage (CRV)  Internal band-gap voltage (VBG)  ACMP1 supports:  Four positive sources  Three negative sources  P3.0  Internal Comparator Reference Voltage (CRV)  Internal band-gap voltage (VBG)

May. 09, 2018 Page 64 of 84 Rev.1.03 MINI58DE SERIES DATASHEET

7 APPLICATION CIRCUIT

4~24 MHz or 32.768 kHz crystal 0.1uF FB FB 20p 20p DVCC 10uF/25V 10K Power Crystal Reset Circuit nRESET XT1_OUT LDO_CAP Mini58LDE LQFP48 VDD VSS nRESET ICE_CLK ICE_DATSWD Interface 1uF VDD VSS I2C Device CLK DIOI2Cx_SDA I2Cx_SCL 4.7K VDD VSS SPI Device CS CLK MISO SPI_SS MOSI SPI_CLK SPI_MISO SPI_MOSI LDO RS232 Transceiver ROUT TIN RIN TOUT PC COM Port XT1_IN 0.1uF DVCC 4.7K DVCC DVCC Note 1: For the SPI device, the Mini58 chip supply voltage must be equal to SPI device working voltage. For example, when the SPI Flash working voltage is 3.3 V, the Mini58 chip supply voltage must also be 3.3V. UART [1] UARTx_RXD UARTx_TXD Note 2: x denotes 0 or 1. [2] [2]

May. 09, 2018 Page 65 of 84 Rev.1.03 MINI58DE SERIES DATASHEET

8 ELECTRICAL CHARACTERISTICS

Absolute Maximum Ratings 8.1 Symbol Parameter Min Max Unit VDD VSS DC Power Supply -0.3 +7.0 V VIN Input Voltage VSS -0.3 VDD +0.3 V 1/tCLCL Oscillator Frequency 4 24 MHz TA Operating Temperature -40 +105 ℃ TST Storage Temperature -55 +150 ℃ IDD Maximum Current into VDD - 120 mA ISS Maximum Current out of VSS - 120 mA IIO Maximum Current sunk by an I/O pin - 35 mA Maximum Current sourced by an I/O pin - 35 mA Maximum Current sunk by total I/O pins - 100 mA Maximum Current sourced by total I/O pins - 100 mA Note: Exposure to conditions beyond those listed under absolute maximum ratings may adversely affects the life and reliability of the device.

May. 09, 2018 Page 66 of 84 Rev.1.03 MINI58DE SERIES DATASHEET (VDD - VSS = 2.5 ~ 5.5 V, TA = 25C) Symbol Parameter Min Typ Max Unit Test Conditions VDD Operation voltage 2.5 - 5.5 V VDD = 2.5V ~ 5.5V up to 50 MHz VSS / AVSS Power Ground -0.3 - - V VLDO LDO Output Voltage 1.62 1.8 1.98 V VDD ≥ 2.5 V VBG Band-gap Voltage 1.18 1.24 1.32 V VDD = 2.5V ~ 5.5V, TA = -40C~105C VDD-AVDD Allowed Voltage Difference for VDD and AVDD -0.3 0 0.3 V - IDD1 Operating Current Normal Run Mode HCLK = 50 MHz while(1){} Executed from Flash - 16.277 - mA VDD HXT HIRC PLL All Digital Modules 5.5V 24 MHz X V V IDD2 - 11.272 - mA 5.5V 24 MHz X V X IDD3 - 14.651 - mA 3.3V 24 MHz X V V IDD4 - 9.739 - mA 3.3V 24 MHz X V X IDD5 Operating Current Normal Run Mode HCLK =22.1184 MHz while(1){} Executed from Flash - 7.098 - mA VDD HXT HIRC PLL All Digital Modules 5.5V X V X V IDD6 - 4.050 - mA 5.5V X V X X IDD7 - 6.997 - mA 3.3V X V X V IDD8 - 4.001 - mA 3.3V X V X X IDD9 Operating Current Normal Run Mode HCLK = 12MHz while(1){} Executed from Flash - 5.514 - mA VDD HXT HIRC PLL All Digital Modules 5.5V 12 MHz X X V IDD10 - 4.038 - mA 5.5V 12 MHz X X X IDD11 - 3.992 - mA 3.3V 12 MHz X X V IDD12 - 2.809 - mA 3.3V 12 MHz X X X

May. 09, 2018 Page 67 of 84 Rev.1.03 MINI58DE SERIES DATASHEET IDD13 Operating Current Normal Run Mode HCLK = 4 MHz while(1){} Executed from Flash - 3.151 - mA VDD HXT HIRC PLL All Digital Modules 5.5V 4 MHz X X V IDD14 - 2.747 - mA 5.5V 4 MHz X X X IDD15 - 1.757 - mA 3.3V 4 MHz X X V IDD16 - 1.360 - mA 3.3V 4 MHz X X X IDD17 Operating Current Normal Run Mode HCLK = 32.768 kHz while(1){} Executed from Flash - 176 - μA VDD LXT HIRC PLL All Digital Modules 5.5V 32.76 8 kHz X X V IDD18 - 173 - μA 5.5V 32.76 8 kHz X X X IDD19 - 158 - μA 3.3V 32.76 8 kHz X X V IDD20 - 155 - μA 3.3V 32.76 8 kHz X X X IDD21 Operating Current Normal Run Mode HCLK = 10 kHz while(1){} Executed from Flash - 168 - μA VDD HXT LIRC PLL All Digital Modules 5.5V X V X V[4] IDD22 - 167 - μA 5.5V X V X X IDD23 - 150 - μA 3.3V X V X V[4] IDD24 - 150 - μA 3.3V X V X X IIDLE1 Operating Current Idle Mode HCLK = 50MHz - 12.386 - mA VDD HXT HIRC PLL All Digital Modules 5.5V 24 MHz X V V IIDLE2 - 7.346 - mA 5.5V 24 MHz X V X IIDLE3 - 10.784 - mA 3.3V 24 MHz X V V IIDLE4 - 5.838 - mA 3.3V 24 MHz X V X IIDLE5 Operating Current Idle Mode HCLK=22.1184 MHz - 5.378 - mA VDD HXT HIRC PLL All Digital Modules 5.5V X V X V IIDLE6 - 2.300 - mA 5.5V X V X X IIDLE7 - 5.291 - mA 3.3V X V X V

May. 09, 2018 Page 68 of 84 Rev.1.03 MINI58DE SERIES DATASHEET IIDLE8 - 2.265 - mA 3.3V X V X X IIDLE9 Operating Current Idle Mode HCLK =12 MHz - 4.577 - mA VDD HXT HIRC PLL All Digital Modules 5.5V V X X V IIDLE10 - 3.364 - mA 5.5V V X X X IIDLE11 - 3.062 - mA 3.3V V X X V IIDLE12 - 1.871 - mA 3.3V V X X X IIDLE13 Operating Current Idle Mode HCLK = 4 MHz - 2.838 - mA VDD HXT HIRC PLL All Digital Modules 5.5V V X X V IIDLE14 - 2.433 - mA 5.5V V X X X IIDLE15 - 1.446 - mA 3.3V V X X V IIDLE16 - 1.048 - mA 3.3V V X X X IIDLE17 Operating Current Idle Mode HCLK = 32.768 kHz - 167 - μA VDD LXT HIRC PLL All Digital Modules 5.5V V X X V IIDLE18 - 166 - μA 5.5V V X X X IIDLE19 - 150 - μA 3.3V V X X V IIDLE20 - 149 - μA 3.3V V X X X IIDLE 21 Operating Current Idle Mode HCLK = 10 kHz - 167 - μA VDD HXT LIRC PLL All Digital Modules 5.5V X V X V[4] IIDLE 22 - 166 - μA 5.5V X V X X IIDLE 23 - 150 - μA 3.3V X V X V[4] IIDLE 24 - 149 - μA 3.3V X V X X IPWD1 Standby Current Power-down Mode (Deep Sleep Mode) - 6.2 - A VDD = 5.5 V, All oscillators and analog blocks turned off. IPWD2 - 5.8 - A VDD = 3.3 V, All oscillators and analog blocks turned off. IIL Logic 0 Input Current P0/1/2/3/4/5 (Quasi- bidirectional Mode) - -70 -75 A VDD = 5.5 V, VIN = 0V

May. 09, 2018 Page 69 of 84 Rev.1.03 MINI58DE SERIES DATASHEET ITL Logic 1 to 0 Transition Current P0/1/2/3/4/5 (Quasi-bidirectional Mode) [*3] - -595 -750 A VDD = 5.5 V, VIN = 2.0V ILK Input Leakage Current VDD = 5.5 V, 0 < VIN< VDD Open-drain or input only mode VIL1 Input Low Voltage P0/1/2/3/4/5 (TTL Input) -0.3 - 0.8 V VDD = 4.5 V VIH1 Input High Voltage P0/1/2/3/4/5 (TTL Input) 2.0 - VDD + 0.3 V VDD = 5.5 V 1.5 - VDD + 0.3 VDD = 3.0 V VIL3 Input Low Voltage XTAL1[*2] 0 - 0.8 V VDD = 4.5 V 0 - 0.4 VDD = 2.5 V VIH3 Input High Voltage XTAL1[*2] 3.5 - VDD + 0.3 V VDD = 5.5 V 2.4 - VDD + 0.3 VDD = 3.0 V VILS Negative-going Threshold (Schmitt Input), nRESET -0.3 - 0.2VDD V - VIHS Positive-going Threshold (Schmitt Input), nRESET 0.7 VDD - VDD + 0.3 V - RRST Internal nRESETPin Pull-up Resistor 40 150 kΩ VDD = 2.5 V ~ 5.5V VILS Negative-going Threshold (Schmitt input), P0/1/2/3/4/5 -0.3 - 0.3VDD V - VIHS Positive-going Threshold (Schmitt input), P0/1/2/3/4/5 0.7 VDD - VDD + 0.3 V - ISR11 Source Current P0/1/2/3/4/5 (Quasi- bidirectional Mode) -300 -400 - A VDD = 4.5 V, VSS = 2.4 V ISR12 -50 -80 - A VDD = 2.7 V, VSS = 2.2 V ISR13 -40 -73 - A VDD = 2.5 V, VSS = 2.0 V ISR21 Source Current P0/1/2/3/4/5 (Push-pull Mode) -20 -26 - mA VDD = 4.5 V, VSS = 2.4 V ISR22 -3 -5 - mA VDD = 2.7 V, VSS = 2.2 V ISR23 -2.5 -5 - mA VDD = 2.5 V, VSS = 2.0 V ISK11 Sink Current P0/1/2/3/4/5 (Quasi- bidirectional, Open- Drain and Push-pull Mode) 10 15 - mA VDD = 4.5 V, VSS = 0.45 V ISK12 6 9 - mA VDD = 2.7 V, VSS = 0.45 V ISK13 5 8 - mA VDD = 2.5 V, VSS = 0.45 V Notes: 1. nRESET pin is a Schmitt trigger input.

May. 09, 2018 Page 70 of 84 Rev.1.03 MINI58DE SERIES DATASHEET 2. XTAL1 is a CMOS input. 3. Pins of P0, P1, P2, P3, P4 and P5 can source a transition current when they are being externally driven from 1 to 0. In the condition of VDD=5.5V, the transition current reaches its maximum value when VIN approximates to 2V. 4. Only enable modules which support 10 kHz LIRC clock source

May. 09, 2018 Page 71 of 84 Rev.1.03 MINI58DE SERIES DATASHEET

8.3.1 External Input Clock

90% 10% tCLCH tCHCL tCLCX tCLCL

0.3 VDD

Note: Duty cycle is 50%. Symbol Parameter Min Typ Max Unit Test Conditions tCHCX Clock High Time 10 - - ns - tCLCX Clock Low Time 10 - - ns - tCLCH Clock Rise Time 2 - 15 ns - tCHCL Clock Fall Time 2 - 15 ns -

8.3.2 External 4~24 MHz High Speed Crystal (HXT)

Symbol Parameter Min. Typ. Max Unit Test Conditions VHXT Operation Voltage 2.5 - 5.5 V - TA Temperature -40 - 105 ℃ - IHXT Operating Current - 2.5 - mA 12 MHz, VDD = 5.5V - 1.0 - mA 12 MHz, VDD = 3.3V fHXT Clock Frequency 4 - 24 MHz - 8.3.3 External 32.768 kHz XTAL Oscillator (LXT) Sym. Parameter Specifications Test Conditions Min. Typ. Max. Unit fLXTAL Oscillator frequency 32.768 kHz VDD = 2.5V ~ 5.5V TLXTAL Temperature -40 +105 oC ILXTAL Operating current 5 A VDD = 2.5V

8.3.4 Typical Crystal Application Circuits

May. 09, 2018 Page 72 of 84 Rev.1.03 MINI58DE SERIES DATASHEET

4 MHz ~ 24 MHz 20 pF 20 pF

32.768 kHz 20 pF 20 pF XT1_IN C1 C2 XT1_OUT 4~24 MHz or 32.768 kHz Crystal Vss Vss Figure 8.3-1 Mini58 Typical Crystal Application Circuit 8.3.5 22.1184 MHz Internal High Speed RC Oscillator (HIRC) Symbol Parameter Min Typ Max Unit Test Conditions VHRC Supply Voltage 1.62 1.8 1.98 V - fHRC Center Frequency - 22.1184 MHz - Calibrated Internal Oscillator Frequency -1 - +1 % TA = 25 ℃ VDD = 5 V -2 - +2 % TA = -40℃~105℃ VDD=2.5 V~ 5.5 V IHRC Operating Current - 700 - μA TA = 25 ℃,VDD = 5 V

May. 09, 2018 Page 73 of 84 Rev.1.03 MINI58DE SERIES DATASHEET 8.3.6 10 kHz Internal Low Speed RC Oscillator (LIRC) Symbol Parameter Min Typ Max Unit Test Conditions VLRC Supply Voltage 2.5 - 5.5 V - fLRC Center Frequency - 10 - kHz - Oscillator Frequency -10 - +10 % VDD=2.5V~ 5.5V TA = 25℃ -40 - +40 % VDD=2.5V~ 5.5V TA = -40℃~+105℃ -1.00 -0.80 -0.60 -0.40 -0.20 0.00 0.20 0.40 0.60 0.80 1.00 -40 -30 -20 -10 0 10 20 25 30 40 50 60 70 80 85 90 100 110 Deviation Percentage % TA ℃ HIRC oscillator accuracy vs. temperature Max Min

May. 09, 2018 Page 74 of 84 Rev.1.03 MINI58DE SERIES DATASHEET Analog Characteristics 8.4 8.4.1 10-bit SARADC Symbol Parameter Min Typ Max Unit Test Condition - Resolution - - 10 Bit - DNL Differential Nonlinearity Error - -1~1.5 -1~+2.5 LSB - INL Integral Nonlinearity Error - ±1 ±2 LSB - EO Offset Error - 1 2 LSB - EG Gain Error (Transfer Gain) - -1 -3 LSB - - Monotonic Guaranteed - - FADC ADC Clock Frequency - - 4.2 MHz AVDD = 4.5~5.5 V FS Sample Rate (FADC/TCONV) - - 300 kSPS AVDD = 4.5~5.5 V - - 200 kSPS AVDD = 2.5~5.5 V TACQ Acquisition Time (Sample Stage) N+1 1/FADC N is sampling counter, 128, 256,1024 TCONV Total Conversion Time N+14 1/FADC AVDD Supply Voltage 2.5 - 5.5 V - IDDA Supply Current (Avg.) - 600 - μA AVDD = 5.5 V VIN Analog Input Voltage 0 - AVDD V - CIN Input Capacitance - 3.2 - pF - RIN Input Load - 6 - kΩ - Note: ADC voltage reference is same with AVDD

May. 09, 2018 Page 75 of 84 Rev.1.03 MINI58DE SERIES DATASHEET 1023 1022 1021 1020 Ideal transfer curve Actual transfer curve Offset Error EO Analog input voltage (LSB) 1023 ADC output code Offset Error EO Gain Error EG EF (Full scale error) = EO + EG DNL

1 LSB

8.4.2 LDO & Power Management

Symbol Parameter Min Typ Max Unit Test Condition VDD DC Power Supply 2.5 - 5.5 V - VLDO Output Voltage 1.62 1.8 1.98 V - TA Temperature -40 25 105 ℃ Notes: 1. It is recommended a 0.1μF bypass capacitor is connected between VDD and the closest VSS pin of the device.

8.4.3 Low Voltage Reset

Symbol Parameter Min Typ Max Unit Test Condition AVDD Supply Voltage 0 - 5.5 V - TA Temperature -40 25 105 ℃ -

May. 09, 2018 Page 76 of 84 Rev.1.03 MINI58DE SERIES DATASHEET ILVR Quiescent Current - 1 5 μA AVDD =5.5V VLVR Threshold Voltage 1.90 2.00 2.10 V TA=25℃ 1.70 1.90 2.05 V TA=-40℃ 2.00 2.20 2.45 V TA =105℃

8.4.4 Brown-out Detector

Symbol Parameter Min Typ Max Unit Test Condition AVDD Supply Voltage 0 - 5.5 V - TA Temperature -40 25 105 ℃ - IBOD Quiescent Current - - 140 μA AVDD =5.5V VBOD Brown-out Detector (Falling edge) 4.2 4.38 4.55 V BODEN = 1, BOD_VL [1:0]=11 3.5 3.68 3.85 V BODEN = 1, BOD_VL [1:0]=10 2.5 2.68 2.85 V BODEN = 1, BOD_VL [1:0]=01 2.0 2.18 2.35 V BODEN = 1, BOD_VL [1:0]=00 VBOD Brown-out Detector (Rising edge) 4.3 4.52 4.75 V BODEN = 1, BOD_VL [1:0]=11 3.5 3.8 4.05 V BODEN = 1, BOD_VL [1:0]=10 2.5 2.77 3.05 V BODEN = 1, BOD_VL [1:0]=01 2.0 2.25 2.55 V BODEN = 1, BOD_VL [1:0]=00

8.4.5 Power-on Reset

Symbol Parameter Min Typ Max Unit Test Condition TA Temperature -40 25 105 ℃ - VPOR Reset Voltage 1.6 2 2.4 V - VPOR VDD Start Voltage to Ensure Power-on Reset - - 100 mV RRVDD VDD Raising Rate to Ensure Power-on Reset 0.025 - - V/ms tPOR Minimum Time for VDD Stays at VPOR to Ensure Power-on Reset 0.5 - - ms

May. 09, 2018 Page 77 of 84 Rev.1.03 MINI58DE SERIES DATASHEET tPOR RRVDD VPOR VDD Time Figure 8.4-1 Power-up Ramp Condition

8.4.6 Comparator

Symbol Parameter Min Typ Max Unit Test Condition VCMP Supply Voltage 2.5 - 5.5 V TA Temperature -40 25 105 ℃ - ICMP Operation Current - 40 80 μA AVDD=5V VOFF Input Offset Voltage 10 20 mV - VSW Output Swing 0.1 - AVDD – 0.1 V - VCOM Input Common Mode Range 0.1 - AVDD – 0.1 V - - DC Gain 40 70 - dB - TPGD Propagation Delay - 200 - ns VCOM=1.2 V, VDIFF=0.1 V VHYS Hysteresis - ±30 ±60 mV VCOM=1.2 V TSTB Stable time - - 1 μs

May. 09, 2018 Page 78 of 84 Rev.1.03 MINI58DE SERIES DATASHEET Flash DC Electrical Characteristics 8.5 Symbol Parameter Min Typ Max Unit Test Condition VFLA [2] Supply Voltage 1.62 1.8 1.98 V NENDUR Endurance 20,000 - - cycles[1] TRET Data Retention 10 - - year TA =85℃ TERASE Page Erase Time - 20 - ms TPROG Program Time - 40 - us IDD1 Read Current - 7 - mA IDD2 Program Current - 8 - mA IDD3 Erase Current - 12 - mA Notes: 1. Number of program/erase cycles. 2. VFLA is source from chip LDO output voltage. 3. Guaranteed by design, not test in production.

May. 09, 2018 Page 79 of 84 Rev.1.03 MINI58DE SERIES DATASHEET

9 PACKAGE DIMENSIONS

48-pin LQFP 9.1

May. 09, 2018 Page 80 of 84 Rev.1.03 MINI58DE SERIES DATASHEET 33-pin QFN (4 mm x 4 mm) 9.2

May. 09, 2018 Page 81 of 84 Rev.1.03 MINI58DE SERIES DATASHEET 33-pin QFN (5 mm x 5 mm) 9.3

May. 09, 2018 Page 82 of 84 Rev.1.03 MINI58DE SERIES DATASHEET 20-pin TSSOP 9.4

May. 09, 2018 Page 83 of 84 Rev.1.03 MINI58DE SERIES DATASHEET

10 REVISION HISTORY

2015.06.11 1.00 Preliminary version. 2015.12.09 1.02 Fixed cross reference error. 2. Modified Flash data retention time to 10 years in Sectoin 8.5.

May. 09, 2018 Page 84 of 84 Rev.1.03 MINI58DE SERIES DATASHEET Important Notice Nuvoton Products are neither intended nor warranted for usage in systems or equipment, any malfunction or failure of which may cause loss of human life, bodily injury or severe property damage. Such applications are deemed, “Insecure Usage”. Insecure usage inclu des, but is not limited to: equipment for surgical implementation, atomic energy control instruments, airplane or spaceship instruments, the control or operation of dynamic, brake or safety systems designed for vehicular use, traffic signal instruments, al l types of safety devices, and other applications intended to support or sustain life. All Insecure Usage shall be made at customer’s risk, and in the event that third parties lay claims to Nuvoton as a result of customer’s Insecure Usage, customer shall indemnify the damages and liabilities thus incurred by Nuvoton.