General Description
General Description
General Description
Single-chip 16-bit/32-bit microcontroller; 512 kB ash with ISP/IAP, Ethernet, USB 2.0, CAN, and 10-bit ADC/DAC
Rev. 04 19 November 2008 Product data sheet
1. General description
The LPC2377/78 microcontroller is based on a 16-bit/32-bit ARM7TDMI-S CPU with real-time emulation that combines the microcontroller with 512 kB of embedded high-speed ash memory. A 128-bit wide memory interface and a unique accelerator architecture enable 32-bit code execution at the maximum clock rate. For critical performance in interrupt service routines and DSP algorithms, this increases performance up to 30 % over Thumb mode. For critical code size applications, the alternative 16-bit Thumb mode reduces code by more than 30 % with minimal performance penalty. The LPC2377/78 is ideal for multi-purpose serial communication applications. It incorporates a 10/100 Ethernet Media Access Controller (MAC), USB full speed device with 4 kB of endpoint RAM (LPC2378 only), four UARTs, two CAN channels (LPC2378 only), an SPI interface, two Synchronous Serial Ports (SSP), three I2C-bus interfaces, an I2S-bus interface, and an External Memory Controller (EMC). This blend of serial communications interfaces combined with an on-chip 4 MHz internal oscillator, SRAM of 32 kB, 16 kB SRAM for Ethernet, 8 kB SRAM for USB and general purpose use, together with 2 kB battery powered SRAM make this device very well suited for communication gateways and protocol converters. Various 32-bit timers, an improved 10-bit ADC, 10-bit DAC, PWM unit, a CAN control unit, and up to 104 fast GPIO lines with up to 50 edge and up to four level sensitive external interrupt pins make these microcontrollers particularly suitable for industrial control and medical systems.
2. Features
I ARM7TDMI-S processor, running at up to 72 MHz. I Up to 512 kB on-chip ash program memory with In-System Programming (ISP) and In-Application Programming (IAP) capabilities. Flash program memory is on the ARM local bus for high performance CPU access. I 32 kB of SRAM on the ARM local bus for high performance CPU access. I 16 kB SRAM for Ethernet interface. Can also be used as general purpose SRAM. I 8 kB SRAM for general purpose DMA use also accessible by the USB. I Dual Advanced High-performance Bus (AHB) system that provides for simultaneous Ethernet DMA, USB DMA, and program execution from on-chip ash with no contention between those functions. A bus bridge allows the Ethernet DMA to access the other AHB subsystem. I EMC provides support for static devices such as ash and SRAM as well as off-chip memory mapped peripherals. I Advanced Vectored Interrupt Controller (VIC), supporting up to 32 vectored interrupts.
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
I General Purpose DMA controller (GPDMA) on AHB that can be used with the SSP serial interfaces, the I2S port, and the Secure Digital/MultiMediaCard (SD/MMC) card port, as well as for memory-to-memory transfers. I Serial Interfaces: N Ethernet MAC with associated DMA controller. These functions reside on an independent AHB. N USB 2.0 full-speed device with on-chip PHY and associated DMA controller (LPC2378 only). N Four UARTs with fractional baud rate generation, one with modem control I/O, one with IrDA support, all with FIFO. N CAN controller with two channels (LPC2378 only). N SPI controller. N Two SSP controllers with FIFO and multi-protocol capabilities. One is an alternate for the SPI port, sharing its interrupt and pins. These can be used with the GPDMA controller. N Three I2C-bus interfaces (one with open-drain and two with standard port pins). N I2S (Inter-IC Sound) interface for digital audio input or output. It can be used with the GPDMA. I Other peripherals: N SD/MMC memory card interface. N 104 General purpose I/O pins with congurable pull-up/down resistors. N 10-bit ADC with input multiplexing among 8 pins. N 10-bit DAC. N Four general purpose timers/counters with 8 capture inputs and 10 compare outputs. Each timer block has an external count input. N One PWM/timer block with support for three-phase motor control. The PWM has two external count inputs. N Real-Time Clock (RTC) with separate power pin, clock source can be the RTC oscillator or the APB clock. N 2 kB SRAM powered from the RTC power pin, allowing data to be stored when the rest of the chip is powered off. N WatchDog Timer (WDT). The WDT can be clocked from the internal RC oscillator, the RTC oscillator, or the APB clock. I Standard ARM test/debug interface for compatibility with existing tools. I Emulation trace module supports real-time trace. I Single 3.3 V power supply (3.0 V to 3.6 V). I Three reduced power modes: idle, sleep, and power-down. I Four external interrupt inputs congurable as edge/level sensitive. All pins on PORT0 and PORT2 can be used as edge sensitive interrupt sources. I Processor wake-up from Power-down mode via any interrupt able to operate during Power-down mode (includes external interrupts, RTC interrupt, USB activity, Ethernet wake-up interrupt). I Two independent power domains allow ne tuning of power consumption based on needed features. I Each peripheral has its own clock divider for further power saving. I Brownout detect with separate thresholds for interrupt and forced reset. I On-chip power-on reset.
LPC2377_78_4 NXP B.V. 2008. All rights reserved.
2 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
I On-chip crystal oscillator with an operating range of 1 MHz to 25 MHz. I 4 MHz internal RC oscillator trimmed to 1 % accuracy that can optionally be used as the system clock. When used as the CPU clock, does not allow CAN and USB to run. I On-chip PLL allows CPU operation up to the maximum CPU rate without the need for a high frequency crystal. May be run from the main oscillator, the internal RC oscillator, or the RTC oscillator. I Boundary scan for simplied board testing. I Versatile pin function selections allow more possibilities for using on-chip peripheral functions.
3. Applications
I I I I Industrial control Medical systems Protocol converter Communications
4. Ordering information
Table 1. Ordering information Package Name LPC2377FBD144 LPC2378FBD144 LQFP144 LQFP144 Description plastic low prole quad at package; 144 leads; body 20 20 1.4 mm plastic low prole quad at package; 144 leads; body 20 20 1.4 mm Version SOT486-1 SOT486-1 Type number
GP/USB
LPC2377FBD144 512
32 16 8
58 MiniBus: 8 data, 16 address, and 2 chip select lines 58 MiniBus: 8 data, 16 address, and 2 chip select lines
Total
RTC
RMII
no
LPC2378FBD144 512
32 16 8
RMII
yes
LPC2377_78_4
3 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
5. Block diagram
XTAL1 VDD(3V3) XTAL2
TMS TDI
trace signals
RESET
TEST/DEBUG INTERFACE
LPC2377/78
32 kB SRAM
512 kB FLASH
ARM7TDMI-S
AHB2
AHB BRIDGE
AHB1
RMII(8)
16 kB SRAM
MASTER AHB TO SLAVE PORT AHB BRIDGE PORT AHB TO APB BRIDGE
8 kB SRAM
GP DMA CONTROLLER I2SRX_CLK I2STX_CLK I2SRX_WS I2STX_WS I2SRX_SDA I2STX_SDA SCK, SCK0 MOSI, MOSI0 MISO, MISO0 SSEL, SSEL0 SCK1 MOSI1 MISO1 SSEL1 MCICLK, MCIPWR MCICMD, MCIDAT[3:0] TXD0, TXD2, TXD3 RXD0, RXD2, RXD3 TXD1 RXD1 DTR1, RTS1 DSR1, CTS1, DCD1, RI1 CAN1, CAN2(1) RD1, RD2 TD1, TD2 SCL0, SCL1, SCL2 SDA0, SDA1, SDA2
EINT3 to EINT0 P0, P2 2 CAP0/CAP1/ CAP2/CAP3 4 MAT2, 2 MAT0/MAT1/ MAT3 6 PWM1 2 PCAP1
PWM1
P0, P1
SSP1 INTERFACE
8 AD0
A/D CONVERTER
RTC OSCILLATOR
REALTIME CLOCK
UART1
002aac574
4 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
6. Pinning information
6.1 Pinning
144 109 108 73 37 72
002aac584
LPC2377FBD144 LPC2378FBD144
36
P0[0]/RD1/TXD/ SDA1
66[1]
I/O I O I/O
P0[1]/TD1/RXD3/ SCL1
67[1]
I/O O I I/O
LPC2377_78_4
5 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
Table 3. Symbol
Pin description continued Pin 115[1] Type I/O I/O O I Description P0[5] General purpose digital input/output pin. I2SRX_WS Receive Word Select. It is driven by the master and received by the slave. Corresponds to the signal WS in the I2S-bus specication. TD2 CAN2 transmitter output. (LPC2378 only) CAP2[1] Capture input for Timer 2, channel 1. P0[6] General purpose digital input/output pin. I2SRX_SDA Receive data. It is driven by the transmitter and read by the receiver. Corresponds to the signal SD in the I2S-bus specication. SSEL1 Slave Select for SSP1. MAT2[0] Match output for Timer 2, channel 0. P0[7] General purpose digital input/output pin. I2STX_CLK Transmit Clock. It is driven by the master and received by the slave. Corresponds to the signal SCK in the I2S-bus specication. SCK1 Serial Clock for SSP1. MAT2[1] Match output for Timer 2, channel 1. P0[8] General purpose digital input/output pin. I2STX_WS Transmit Word Select. It is driven by the master and received by the slave. Corresponds to the signal WS in the I2S-bus specication. MISO1 Master In Slave Out for SSP1. MAT2[2] Match output for Timer 2, channel 2. P0[9] General purpose digital input/output pin. I2STX_SDA Transmit data. It is driven by the transmitter and read by the receiver. Corresponds to the signal SD in the I2S-bus specication. MOSI1 Master Out Slave In for SSP1. MAT2[3] Match output for Timer 2, channel 3. P0[10] General purpose digital input/output pin. TXD2 Transmitter output for UART2. SDA2 I2C2 data input/output (this is not an open-drain pin). MAT3[0] Match output for Timer 3, channel 0. P0[11] General purpose digital input/output pin. RXD2 Receiver input for UART2. SCL2 I2C2 clock input/output (this is not an open-drain pin). MAT3[1] Match output for Timer 3, channel 1. P0[12] General purpose digital input/output pin. MISO1 Master In Slave Out for SSP1. AD0[6] A/D converter 0, input 6. P0[13] General purpose digital input/output pin. USB_UP_LED2 USB2 Good Link LED indicator. It is LOW when device is congured (non-control endpoints enabled). It is HIGH when the device is not congured or during global suspend. (LPC2378 only) MOSI1 Master Out Slave In for SSP1. AD0[7] A/D converter 0, input 7.
113[1]
112[1]
111[1]
109[1]
69[1]
I/O O I/O O
P0[11]/RXD2/ SCL2/MAT3[1]
70[1]
I/O I I/O O
P0[12]/MISO1/ AD0[6]
29[2]
I/O I/O I
32[2]
I/O O
I/O I
LPC2377_78_4
6 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
Table 3. Symbol
Pin description continued Pin Type I/O O Description P0[14] General purpose digital input/output pin. USB_CONNECT2 USB2 Soft Connect control. Signal used to switch an external 1.5 k resistor under software control. Used with the SoftConnect USB feature. (LPC2378 only) SSEL1 Slave Select for SSP1. P0[15] General purpose digital input/output pin. TXD1 Transmitter output for UART1. SCK0 Serial clock for SSP0. SCK Serial clock for SPI. P0 [16] General purpose digital input/output pin. RXD1 Receiver input for UART1. SSEL0 Slave Select for SSP0. SSEL Slave Select for SPI. P0[17] General purpose digital input/output pin. CTS1 Clear to Send input for UART1. MISO0 Master In Slave Out for SSP0. MISO Master In Slave Out for SPI. P0[18] General purpose digital input/output pin. DCD1 Data Carrier Detect input for UART1. MOSI0 Master Out Slave In for SSP0. MOSI Master Out Slave In for SPI. P0[19] General purpose digital input/output pin. DSR1 Data Set Ready input for UART1. MCICLK Clock output line for SD/MMC interface. SDA1 I2C1 data input/output (this is not an open-drain pin). P0[20] General purpose digital input/output pin. DTR1 Data Terminal Ready output for UART1. MCICMD Command line for SD/MMC interface. SCL1 I2C1 clock input/output (this is not an open-drain pin). P0[21] General purpose digital input/output pin. RI1 Ring Indicator input for UART1. MCIPWR Power Supply Enable for external SD/MMC power supply. RD1 CAN1 receiver input. (LPC2378 only) P0[22] General purpose digital input/output pin. RTS1 Request to Send output for UART1. MCIDAT0 Data line for SD/MMC interface. TD1 CAN1 transmitter output. (LPC2378 only) P0[23] General purpose digital input/output pin. AD0[0] A/D converter 0, input 0. I2SRX_CLK Receive Clock. It is driven by the master and received by the slave. Corresponds to the signal SCK in the I2S-bus specication. CAP3[0] Capture input for Timer 3, channel 0.
NXP B.V. 2008. All rights reserved.
I/O P0[15]/TXD1/ SCK0/SCK 89[1] I/O O I/O I/O P0[16]/RXD1/ SSEL0/SSEL 90[1] I/O I I/O I/O P0[17]/CTS1/ MISO0/MISO 87[1] I/O I I/O I/O P0[18]/DCD1/ MOSI0/MOSI 86[1] I/O I I/O I/O P0[19]/DSR1/ MCICLK/SDA1 85[1] I/O I O I/O P0[20]/DTR1/ MCICMD/SCL1 83[1] I/O O I I/O P0[21]/RI1/ MCIPWR/RD1 82[1] I/O I O I P0[22]/RTS1/ MCIDAT0/TD1 80[1] I/O O O O P0[23]/AD0[0]/ I2SRX_CLK/ CAP3[0] 13[2] I/O I I/O I
LPC2377_78_4
7 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
Table 3. Symbol
Pin description continued Pin 11[3] Type I/O I I/O I Description P0[24] General purpose digital input/output pin. AD0[1] A/D converter 0, input 1. I2SRX_WS Receive Word Select. It is driven by the master and received by the slave. Corresponds to the signal WS in the I2S-bus specication. CAP3[1] Capture input for Timer 3, channel 1. P0[25] General purpose digital input/output pin. AD0[2] A/D converter 0, input 2. I2SRX_SDA Receive data. It is driven by the transmitter and read by the receiver. Corresponds to the signal SD in the I2S-bus specication. TXD3 Transmitter output for UART3. P0[26] General purpose digital input/output pin. AD0[3] A/D converter 0, input 3. AOUT D/A converter output. RXD3 Receiver input for UART3. P0[27] General purpose digital input/output pin. Output is open-drain. SDA0 I2C0 data input/output. Open-drain output (for I2C-bus compliance). P0[28] General purpose digital input/output pin. Output is open-drain. SCL0 I2C0 clock input/output. Open-drain output (for I2C-bus compliance). P0[29] General purpose digital input/output pin. USB_D+1 USB1 port bidirectional D+ line. (LPC2378 only) P0[30] General purpose digital input/output pin. USB_D1 USB1 port bidirectional D line. (LPC2378 only) P0[31] General purpose digital input/output pin. USB_D+2 USB2 port bidirectional D+ line. (LPC2378 only) Port 1: Port 1 is a 32-bit I/O port with individual direction controls for each bit. The operation of port 1 pins depends upon the pin function selected via the pin connect block. Pins 2, 3, 5, 6, 7, 11, 12, and 13 of this port are not available. P1[0] General purpose digital input/output pin. ENET_TXD0 Ethernet transmit data 0. P1[1] General purpose digital input/output pin. ENET_TXD1 Ethernet transmit data 1. P1[4] General purpose digital input/output pin. ENET_TX_EN Ethernet transmit data enable. P1[8] General purpose digital input/output pin. ENET_CRS Ethernet carrier sense. P1[9] General purpose digital input/output pin. ENET_RXD0 Ethernet receive data. P1[10] General purpose digital input/output pin. ENET_RXD1 Ethernet receive data. P1[14] General purpose digital input/output pin. ENET_RX_ER Ethernet receive error.
10[2]
I/O I I/O O
P0[26]/AD0[3]/ AOUT/RXD3
8[2]
I/O I O I
I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O
P1[0]/ ENET_TXD0 P1[1]/ ENET_TXD1 P1[4]/ ENET_TX_EN P1[8]/ ENET_CRS P1[9]/ ENET_RXD0 P1[10]/ ENET_RXD1 P1[14]/ ENET_RX_ER
LPC2377_78_4
8 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
Table 3. Symbol
Pin description continued Pin 126[1] 125[1] 123[1] 46[1] Type I/O I I/O O I/O I/O I/O O Description P1[15] General purpose digital input/output pin. ENET_REF_CLK/ENET_RX_CLK Ethernet receiver clock. P1[16] General purpose digital input/output pin. ENET_MDC Ethernet MIIM clock. P1[17] General purpose digital input/output pin. ENET_MDIO Ethernet MIIM data input and output. P1[18] General purpose digital input/output pin. USB_UP_LED1 USB1 port Good Link LED indicator. It is LOW when device is congured (non-control endpoints enabled). It is HIGH when the device is not congured or during global suspend. (LPC2378 only) PWM1[1] Pulse Width Modulator 1, channel 1 output. CAP1[0] Capture input for Timer 1, channel 0. P1[19] General purpose digital input/output pin. CAP1[1] Capture input for Timer 1, channel 1. P1[20] General purpose digital input/output pin. PWM1[2] Pulse Width Modulator 1, channel 2 output. SCK0 Serial clock for SSP0. P1[21] General purpose digital input/output pin. PWM1[3] Pulse Width Modulator 1, channel 3 output. SSEL0 Slave Select for SSP0. P1[22] General purpose digital input/output pin. MAT1[0] Match output for Timer 1, channel 0. P1[23] General purpose digital input/output pin. PWM1[4] Pulse Width Modulator 1, channel 4 output. MISO0 Master In Slave Out for SSP0. P1[24] General purpose digital input/output pin. PWM1[5] Pulse Width Modulator 1, channel 5 output. MOSI0 Master Out Slave in for SSP0. P1[25] General purpose digital input/output pin. MAT1[1] Match output for Timer 1, channel 1. P1[26] General purpose digital input/output pin. PWM1[6] Pulse Width Modulator 1, channel 6 output. CAP0[0] Capture input for Timer 0, channel 0. P1[27] General purpose digital input/output pin. CAP0[1] Capture input for Timer 0, channel 1. P1[28] General purpose digital input/output pin. PCAP1[0] Capture input for PWM1, channel 0. MAT0[0] Match output for Timer 0, channel 0. P1[29] General purpose digital input/output pin. PCAP1[1] Capture input for PWM1, channel 1. MAT0[1] Match output for Timer 0, channel 0.
NXP B.V. 2008. All rights reserved.
P1[15]/ ENET_REF_CLK P1[16]/ ENET_MDC P1[17]/ ENET_MDIO P1[18]/ USB_UP_LED1/ PWM1[1]/ CAP1[0]
O I P1[19]/CAP1[1] P1[20]/PWM1[2]/ SCK0 47[1] 49[1] I/O I I/O O I/O P1[21]/PWM1[3]/ SSEL0 50[1] I/O O I/O P1[22]/MAT1[0] P1[23]/PWM1[4]/ MISO0 51[1] 53[1] I/O O I/O O I/O P1[24]/PWM1[5]/ MOSI0 54[1] I/O O I/O P1[25]/MAT1[1] P1[26]/PWM1[6]/ CAP0[0] 56[1] 57[1] I/O O I/O O I P1[27]/CAP0[1] P1[28]/ PCAP1[0]/ MAT0[0] P1[29]/ PCAP1[1]/ MAT0[1] 61[1] 63[1] I/O I I/O I O 64[1] I/O I O
LPC2377_78_4
9 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
Table 3. Symbol
Pin description continued Pin 30[2] Type I/O I I Description P1[30] General purpose digital input/output pin. VBUS Monitors the presence of USB bus power. (LPC2378 only) Note: This signal must be HIGH for USB reset to occur. AD0[4] A/D converter 0, input 4. P1[31] General purpose digital input/output pin. SCK1 Serial Clock for SSP1. AD0[5] A/D converter 0, input 5. Port 2: Port 2 is a 32 bit I/O port with individual direction controls for each bit. The operation of port 2 pins depends upon the pin function selected via the pin connect block. Pins 14 through 31 of this port are not available. P2[0] General purpose digital input/output pin. PWM1[1] Pulse Width Modulator 1, channel 1 output. TXD1 Transmitter output for UART1. TRACECLK Trace Clock. P2[1] General purpose digital input/output pin. PWM1[2] Pulse Width Modulator 1, channel 2 output. RXD1 Receiver input for UART1. PIPESTAT0 Pipeline Status, bit 0. P2[2] General purpose digital input/output pin. PWM1[3] Pulse Width Modulator 1, channel 3 output. CTS1 Clear to Send input for UART1. PIPESTAT1 Pipeline Status, bit 1. P2[3] General purpose digital input/output pin. PWM1[4] Pulse Width Modulator 1, channel 4 output. DCD1 Data Carrier Detect input for UART1. PIPESTAT2 Pipeline Status, bit 2. P2[4] General purpose digital input/output pin. PWM1[5] Pulse Width Modulator 1, channel 5 output. DSR1 Data Set Ready input for UART1. TRACESYNC Trace Synchronization. P2[5] General purpose digital input/output pin. PWM1[6] Pulse Width Modulator 1, channel 6 output. DTR1 Data Terminal Ready output for UART1. TRACEPKT0 Trace Packet, bit 0. P2[6] General purpose digital input/output pin. PCAP1[0] Capture input for PWM1, channel 0. RI1 Ring Indicator input for UART1. TRACEPKT1 Trace Packet, bit 1.
P1[30]/ VBUS/AD0[4]
P1[31]/SCK1/ AD0[5]
28[2]
P2[0] to P2[31]
107[1]
I/O O O O
106[1]
I/O O I O
105[1]
I/O O I O
100[1]
I/O O I O
99[1]
I/O O I O
97[1]
I/O O O O
96[1]
I/O I I O
LPC2377_78_4
10 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
Table 3. Symbol
Pin description continued Pin 95[1] Type I/O I O O 93[1] I/O O O O I/O O Description P2[7] General purpose digital input/output pin. RD2 CAN2 receiver input. (LPC2378 only) RTS1 Request to Send output for UART1. TRACEPKT2 Trace Packet, bit 2. P2[8] General purpose digital input/output pin. TD2 CAN2 transmitter output. (LPC2378 only) TXD2 Transmitter output for UART2. TRACEPKT3 Trace Packet, bit 3. P2[9] General purpose digital input/output pin. USB_CONNECT1 USB1 Soft Connect control. Signal used to switch an external 1.5 k resistor under the software control. Used with the SoftConnect USB feature. (LPC2378 only) RXD2 Receiver input for UART2. EXTIN0 External Trigger Input. P2[10] General purpose digital input/output pin. Note: LOW on this pin while RESET is LOW forces on-chip boot-loader to take over control of the part after a reset. I EINT0 External interrupt 0 input. P2[11] General purpose digital input/output pin. EINT1 External interrupt 1 input. MCIDAT1 Data line for SD/MMC interface. I2STX_CLK Transmit Clock. It is driven by the master and received by the slave. Corresponds to the signal SCK in the I2S-bus specication. P2[12] General purpose digital input/output pin. EINT2 External interrupt 2 input. MCIDAT2 Data line for SD/MMC interface. I2STX_WS Transmit Word Select. It is driven by the master and received by the slave. Corresponds to the signal WS in the I2S-bus specication. P2[13] General purpose digital input/output pin. EINT3 External interrupt 3 input. MCIDAT3 Data line for SD/MMC interface. I2STX_SDA Transmit data. It is driven by the transmitter and read by the receiver. Corresponds to the signal SD in the I2S-bus specication. Port 3: Port 3 is a 32 bit I/O port with individual direction controls for each bit. The operation of port 3 pins depends upon the pin function selected via the pin connect block. Pins 8 through 22, and 27 through 31 of this port are not available. P3[0] General purpose digital input/output pin. D0 External memory data line 0. P3[1] General purpose digital input/output pin. D1 External memory data line 1. P3[2] General purpose digital input/output pin. D2 External memory data line 2.
75[6]
I/O I O I/O
73[6]
I/O I O I/O
71[6]
I/O I O I/O
P3[0] to P3[31]
I/O
LPC2377_78_4
11 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
Pin description continued Pin 2[1] 9[1] 12[1] 16[1] 19[1] 45[1] Type I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I I 40[1] I/O I O 39[1] I/O O O 38[1] I/O O O I/O Description P3[3] General purpose digital input/output pin. D3 External memory data line 3. P3[4] General purpose digital input/output pin. D4 External memory data line 4. P3[5] General purpose digital input/output pin. D5 External memory data line 5. P3[6] General purpose digital input/output pin. D6 External memory data line 6. P3[7] General purpose digital input/output pin. D7 External memory data line 7. P3[23] General purpose digital input/output pin. CAP0[0] Capture input for Timer 0, channel 0. PCAP1[0] Capture input for PWM1, channel 0. P3[24] General purpose digital input/output pin. CAP0[1] Capture input for Timer 0, channel 1. PWM1[1] Pulse Width Modulator 1, output 1. P3[25] General purpose digital input/output pin. MAT0[0] Match output for Timer 0, channel 0. PWM1[2] Pulse Width Modulator 1, output 2. P3[26] General purpose digital input/output pin. MAT0[1] Match output for Timer 0, channel 1. PWM1[3] Pulse Width Modulator 1, output 3. Port 4: Port 4 is a 32 bit I/O port with individual direction controls for each bit. The operation of port 4 pins depends upon the pin function selected via the pin connect block. Pins 16 through 23, 26, and 27 of this port are not available. P4[0] ]General purpose digital input/output pin. A0 External memory address line 0. P4[1] General purpose digital input/output pin. A1 External memory address line 1. P4[2] General purpose digital input/output pin. A2 External memory address line 2. P4[3] General purpose digital input/output pin. A3 External memory address line 3. P4[4] General purpose digital input/output pin. A4 External memory address line 4. P4[5] General purpose digital input/output pin. A5 External memory address line 5. P4[6] General purpose digital input/output pin. A6 External memory address line 6. P4[7] General purpose digital input/output pin. A7 External memory address line 7.
NXP B.V. 2008. All rights reserved.
P3[23]/CAP0[0]/ PCAP1[0]
P3[24]/CAP0[1]/ PWM1[1]
P3[25]/MAT0[0]/ PWM1[2]
P3[26]/MAT0[1]/ PWM1[3]
P4[0] to P4[31]
I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O
LPC2377_78_4
12 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
Table 3. Symbol P4[8]/A8 P4[9]/A9 P4[10]/A10 P4[11]/A11 P4[12]/A12 P4[13]/A13 P4[14]/A14 P4[15]/A15 P4[24]/OE
Pin description continued Pin 88[1] 91[1] 94[1] 101[1] 104[1] 108[1] 110[1] 120[1] 127[1] 124[1] 118[1] Type I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O I/O O I/O O I/O O O 122[1] I/O O I 130[1] 134[1] 26[8] 37 6[1] 1[1] 3[1] 4[1] 5[1] 7[1] I/O O I/O O O I/O I O I I I I Description P4[8] General purpose digital input/output pin. A8 External memory address line 8. P4[9] General purpose digital input/output pin. A9 External memory address line 9. P4[10] General purpose digital input/output pin. A10 External memory address line 10. P4[11] General purpose digital input/output pin. A11 External memory address line 11. P4[12] General purpose digital input/output pin. A12 External memory address line 12. P4[13] General purpose digital input/output pin. A13 External memory address line 13. P4[14] General purpose digital input/output pin. A14 External memory address line 14. P4[15] General purpose digital input/output pin. A15 External memory address line 15. P4[24] General purpose digital input/output pin. OE LOW active Output Enable signal. P4[25] General purpose digital input/output pin. BLS0 LOW active Byte Lane select signal 0. P4 [28] General purpose digital input/output pin. MAT2[0] Match output for Timer 2, channel 0. TXD3 Transmitter output for UART3. P4[29] General purpose digital input/output pin. MAT2[1] Match output for Timer 2, channel 1. RXD3 Receiver input for UART3. P4[30] General purpose digital input/output pin. CS0 LOW active Chip Select 0 signal. P4[31] General purpose digital input/output pin. CS1 LOW active Chip Select 1 signal. ALARM RTC controlled output. This is a 1.8 V pin. It goes HIGH when a RTC alarm is generated. USB_D2 USB2 port bidirectional D line. LPC2378 only. This pin is not connected on the LPC2377. DBGEN JTAG interface control signal. Also used for boundary scanning. TDO Test Data out for JTAG interface. TDI Test Data in for JTAG interface. TMS Test Mode Select for JTAG interface. TRST Test Reset for JTAG interface. TCK Test Clock for JTAG interface. This clock must be slower than 16 of the CPU clock (CCLK) for the JTAG interface to operate.
P4[29]/MAT2[1]/ RXD3
P4[30]/CS0 P4[31]/CS1 ALARM USB_D2 DBGEN TDO TDI TMS TRST TCK
LPC2377_78_4
13 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
Pin description continued Pin 143[1] Type I/O Description RTCK JTAG interface control signal. Note: LOW on this pin while RESET is LOW enables ETM pins (P2[9:0]) to operate as Trace port after reset.
RSTOUT RESET
20 24[7]
O I
RSTOUT This is a 3.3 V pin. LOW on this pin indicates LPC2377/78 being in Reset state. external reset input: A LOW on this pin resets the device, causing I/O ports and peripherals to take on their default states, and processor execution to begin at address 0. TTL with hysteresis, 5 V tolerant. Input to the oscillator circuit and internal clock generator circuits. Output from the oscillator amplier. Input to the RTC oscillator circuit. Output from the RTC oscillator circuit. ground: 0 V reference.
I O I O
VSSA VDD(3V3)
analog ground: 0 V reference. This should nominally be the same voltage as VSS, but should be isolated to minimize noise and error. 3.3 V supply voltage: This is the power supply voltage for the I/O ports.
41, 62, I 77, 102, 114, 138[11] 21, 81, 98[12] 18, 60, 121[13] 14[14] I I I
Leave these pins unconnected. 3.3 V DC-to-DC converter supply voltage: This is the power supply for the on-chip DC-to-DC converter only. analog 3.3 V pad supply voltage: This should be nominally the same voltage as VDD(3V3) but should be isolated to minimize noise and error. This voltage is used to power the ADC and DAC. ADC reference: This should be nominally the same voltage as VDD(3V3) but should be isolated to minimize noise and error. The level on this pin is used as a reference for ADC and DAC. RTC pin power supply: 3.3 V on this pin supplies the power to the RTC peripheral.
VREF
17[14]
VBAT
[1] [2] [3] [4]
27[14]
5 V tolerant pad providing digital I/O functions with TTL levels and hysteresis. 5 V tolerant pad providing digital I/O functions (with TTL levels and hysteresis) and analog input. When congured as a DAC input, digital section of the pad is disabled. 5 V tolerant pad providing digital I/O with TTL levels and hysteresis and analog output function. When congured as the DAC output, digital section of the pad is disabled. Open-drain, 5 V tolerant digital I/O pad compatible with I2C-bus 400 kHz specication. It requires an external pull-up to provide output functionality. When power is switched off, this pin connected to the I2C-bus is oating and does not disturb the I2C lines. Open-drain conguration applies to all functions on this pin. Pad provides digital I/O and USB functions (LPC2378 only). It is designed in accordance with the USB specication, revision 2.0 (Full-speed and Low-speed mode only). 5 V tolerant pad with 5 ns glitch lter providing digital I/O functions with TTL levels and hysteresis. 5 V tolerant pad with 20 ns glitch lter providing digital I/O function with TTL levels and hysteresis. Pad provides special analog functionality. Pad provides special analog functionality.
NXP B.V. 2008. All rights reserved.
LPC2377_78_4
14 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
[10] Pad provides special analog functionality. [11] Pad provides special analog functionality. [12] Pad provides special analog functionality. [13] Pad provides special analog functionality. [14] Pad provides special analog functionality.
7. Functional description
7.1 Architectural overview
The LPC2377/78 microcontroller consists of an ARM7TDMI-S CPU with emulation support, the ARM7 local bus for closely coupled, high-speed access to the majority of on-chip memory, the AMBA AHB interfacing to high-speed on-chip peripherals and external memory, and the AMBA APB for connection to other on-chip peripheral functions. The microcontroller permanently congures the ARM7TDMI-S processor for little-endian byte order. The LPC2377/78 implements two AHB in order to allow the Ethernet block to operate without interference caused by other system activity. The primary AHB, referred to as AHB1, includes the VIC, GPDMA controller, and EMC. The second AHB, referred to as AHB2, includes only the Ethernet block and an associated 16 kB SRAM. In addition, a bus bridge is provided that allows the secondary AHB to be a bus master on AHB1, allowing expansion of Ethernet buffer space into off-chip memory or unused space in memory residing on AHB1. In summary, bus masters with access to AHB1 are the ARM7 itself, the GPDMA function, and the Ethernet block (via the bus bridge from AHB2). Bus masters with access to AHB2 are the ARM7 and the Ethernet block. AHB peripherals are allocated a 2 MB range of addresses at the very top of the 4 GB ARM memory space. Each AHB peripheral is allocated a 16 kB address space within the AHB address space. Lower speed peripheral functions are connected to the APB bus. The AHB to APB bridge interfaces the APB to the AHB. APB peripherals are also allocated a 2 MB range of addresses, beginning at the 3.5 GB address point. Each APB peripheral is allocated a 16 kB address space within the APB address space. The ARM7TDMI-S processor is a general purpose 32-bit microprocessor, which offers high performance and very low power consumption. The ARM architecture is based on Reduced Instruction Set Computer (RISC) principles, and the instruction set and related decode mechanism are much simpler than those of microprogrammed complex instruction set computers. This simplicity results in a high instruction throughput and impressive real-time interrupt response from a small and cost-effective processor core. Pipeline techniques are employed so that all parts of the processing and memory systems can operate continuously. Typically, while one instruction is being executed, its successor is being decoded, and a third instruction is being fetched from memory. The ARM7TDMI-S processor also employs a unique architectural strategy known as Thumb, which makes it ideally suited to high-volume applications with memory restrictions, or applications where code density is an issue.
LPC2377_78_4
15 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
The key idea behind Thumb is that of a super-reduced instruction set. Essentially, the ARM7TDMI-S processor has two instruction sets:
LPC2377_78_4
16 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
0xE000 0000
2.0 GB
EXTERNAL MEMORY BANK 0 (64 kB) BOOT ROM AND BOOT FLASH (BOOT FLASH REMAPPED FROM ON-CHIP FLASH) RESERVED ADDRESS SPACE ETHERNET RAM (16 kB) GENERAL PURPOSE OR USB RAM (8 kB)
0x4000 8000 0x4000 7FFF 1.0 GB 32 kB LOCAL ON-CHIP STATIC RAM 0x4000 0000
RESERVED ADDRESS SPACE 0x0008 0000 0x0007 FFFF TOTAL OF 512 kB ON-CHIP NON-VOLATILE MEMORY 0.0 GB 0x0000 0000
002aac585
LPC2377_78_4
17 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
FIQs have the highest priority. If more than one request is assigned to FIQ, the VIC ORs the requests to produce the FIQ signal to the ARM processor. The fastest possible FIQ latency is achieved when only one request is classied as FIQ, because then the FIQ service routine can simply start dealing with that device. But if more than one request is assigned to the FIQ class, the FIQ service routine can read a word from the VIC that identies which FIQ source(s) is (are) requesting an interrupt. Vectored IRQs, which include all interrupt requests that are not classied as FIQs, have a programmable interrupt priority. When more than one interrupt is assigned the same priority and occur simultaneously, the one connected to the lowest numbered VIC channel will be serviced rst. The VIC ORs the requests from all of the vectored IRQs to produce the IRQ signal to the ARM processor. The IRQ service routine can start by reading a register from the VIC and jumping to the address supplied by that register.
7.7.1 Features
Asynchronous static memory device support including RAM, ROM, and ash, with or
without asynchronous page mode
LPC2377_78_4
Low transaction latency Read and write buffers to reduce latency and to improve performance 8 data and 16 address lines wide static memory support Two chip selects for static memory devices
NXP B.V. 2008. All rights reserved.
18 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
7.8.1 Features
Two DMA channels. Each channel can support a unidirectional transfer. The GPDMA can transfer data between the 8 kB SRAM and peripherals such as the
SD/MMC, two SSP, and I2S-bus interfaces.
Single DMA and burst DMA request signals. Each peripheral connected to the
GPDMA can assert either a burst DMA request or a single DMA request. The DMA burst size is set by programming the GPDMA.
Scatter or gather DMA is supported through the use of linked lists. This means that
the source and destination areas do not have to occupy contiguous areas of memory.
Hardware DMA channel priority. Each DMA channel has a specic hardware priority.
DMA channel 0 has the highest priority and channel 1 has the lowest priority. If requests from two channels become active at the same time, the channel with the highest priority is serviced rst.
AHB slave DMA programming interface. The GPDMA is programmed by writing to the
DMA control registers over the AHB slave interface.
One AHB master for transferring data. This interface transfers data when a DMA
request goes active.
32-bit AHB master bus width. Incrementing or non-incrementing addressing for source and destination. Programmable DMA burst size. The DMA burst size can be programmed to more
efciently transfer data. Usually the burst size is set to half the size of the FIFO in the peripheral.
Internal four-word FIFO per channel. Supports 8-bit, 16-bit, and 32-bit wide transactions.
LPC2377_78_4 NXP B.V. 2008. All rights reserved.
19 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
Interrupt masking. The DMA error and DMA terminal count interrupt requests can be
masked.
Raw interrupt status. The DMA error and DMA count raw interrupt status can be read
prior to masking.
GPIO registers are relocated to the ARM local bus so that the fastest possible I/O
timing can be achieved.
Mask registers allow treating sets of port bits as a group, leaving other bits
unchanged.
All GPIO registers are byte and half-word addressable. Entire port value can be written in one instruction.
Additionally, any pin on PORT0 and PORT2 (total of 46 pins) providing a digital function can be programmed to generate an interrupt on a rising edge, a falling edge, or both. The edge detection is asynchronous, so it may operate when clocks are not present such as during Power-down mode. Each enabled interrupt can be used to wake up the chip from Power-down mode.
7.9.1 Features
Bit level set and clear registers allow a single instruction to set or clear any number of
bits in one port.
Direction control of individual bits. All I/O default to inputs after reset. Backward compatibility with other earlier devices is maintained with legacy PORT0
and PORT1 registers appearing at the original addresses on the APB bus.
7.10 Ethernet
The Ethernet block contains a full featured 10 Mbit/s or 100 Mbit/s Ethernet MAC designed to provide optimized performance through the use of DMA hardware acceleration. Features include a generous suite of control registers, half or full duplex operation, ow control, control frames, hardware acceleration for transmit retry, receive packet ltering and wake-up on LAN activity. Automatic frame transmission and reception with scatter-gather DMA off-loads many operations from the CPU. The Ethernet block and the CPU share a dedicated AHB subsystem that is used to access the Ethernet SRAM for Ethernet data, control, and status information. All other AHB trafc in the LPC2377/78 takes place on a different AHB subsystem, effectively separating Ethernet activity from the rest of the system. The Ethernet DMA can also access off-chip
LPC2377_78_4 NXP B.V. 2008. All rights reserved.
20 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
memory via the EMC, as well as the SRAM located on another AHB, if it is not being used by the USB block. However, using memory other than the Ethernet SRAM, especially off-chip memory, will slow Ethernet access to memory and increase the loading of its AHB. The Ethernet block interfaces between an off-chip Ethernet PHY using the Reduced MII (RMII) protocol and the on-chip Media Independent Interface Management (MIIM) serial bus.
7.10.1 Features
Memory management:
Independent transmit and receive buffers memory mapped to shared SRAM. DMA managers with scatter/gather DMA and arrays of frame descriptors. Memory trafc optimized by buffering and pre-fetching.
Physical interface:
Attachment of external PHY chip through standard RMII interface. PHY register access is available via the MIIM interface.
LPC2377_78_4
21 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
Fully compliant with USB 2.0 specication (full speed). Supports 32 physical (16 logical) endpoints with a 4 kB endpoint buffer RAM. Supports Control, Bulk, Interrupt and Isochronous endpoints. Scalable realization of endpoints at run time. Endpoint Maximum packet size selection (up to USB maximum specication) by software at run time.
Supports SoftConnect and GoodLink features. While USB is in the Suspend mode, the LPC2377/78 can enter one of the reduced
power modes and wake up on a USB activity.
Supports DMA transfers with the DMA RAM of 8 kB on all non-control endpoints. Allows dynamic switching between CPU-controlled and DMA modes. Double buffer implementation for Bulk and Isochronous endpoints. 7.12 CAN controller and acceptance lters (LPC2378 only)
The Controller Area Network (CAN) is a serial communications protocol which efciently supports distributed real-time control with a very high level of security. Its domain of application ranges from high-speed networks to low cost multiplex wiring. The CAN block is intended to support multiple CAN buses simultaneously, allowing the device to be used as a gateway, switch, or router among a number of CAN buses in industrial or automotive applications. Each CAN controller has a register structure similar to the NXP SJA1000 and the PeliCAN Library block, but the 8-bit registers of those devices have been combined in 32-bit words to allow simultaneous access in the ARM environment. The main operational difference is
LPC2377_78_4 NXP B.V. 2008. All rights reserved.
22 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
that the recognition of received Identiers, known in CAN terminology as Acceptance Filtering, has been removed from the CAN controllers and centralized in a global Acceptance Filter.
7.12.1 Features
Two CAN controllers and buses. Data rates to 1 Mbit/s on each bus. 32-bit register and RAM access. Compatible with CAN specication 2.0B, ISO 11898-1. Global Acceptance Filter recognizes 11-bit and 29-bit receive identiers for all CAN buses. Standard Identiers.
Acceptance Filter can provide FullCAN-style automatic reception for selected Full CAN messages can generate interrupts. 7.13 10-bit ADC
The LPC2377/78 contains one ADC. It is a single 10-bit successive approximation ADC with eight channels.
7.13.1 Features
10-bit successive approximation ADC Input multiplexing among 8 pins Power-down mode Measurement range 0 V to Vi(VREF) 10-bit conversion time 2.44 s Burst conversion mode for single or multiple inputs Optional conversion on transition of input pin or Timer Match signal Individual result registers for each ADC channel to reduce interrupt overhead
7.14.1 Features
10-bit DAC Resistor string architecture Buffered output Power-down mode Selectable output drive
LPC2377_78_4
23 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
7.15 UARTs
The LPC2377/78 contains four UARTs. In addition to standard transmit and receive data lines, UART1 also provides a full modem control handshake interface. The UARTs include a fractional baud rate generator. Standard baud rates such as 115200 can be achieved with any crystal frequency above 2 MHz.
7.15.1 Features
16 B Receive and Transmit FIFOs. Register locations conform to 16C550 industry standard. Receiver FIFO trigger points at 1 B, 4 B, 8 B, and 14 B. Built-in fractional baud rate generator covering wide range of baud rates without a need for external crystals of particular values. mechanism that enables software ow control implementation.
Fractional divider for baud rate control, auto baud capabilities and FIFO control UART1 equipped with standard modem interface signals. This module also provides
full support for hardware ow control (auto-CTS/RTS).
UART3 includes an IrDA mode to support infrared communication. 7.16 SPI serial I/O controller
The LPC2377/78 contains one SPI controller. SPI is a full duplex serial interface designed to handle multiple masters and slaves connected to a given bus. Only a single master and a single slave can communicate on the interface during a given data transfer. During a data transfer the master always sends 8 bits to 16 bits of data to the slave, and the slave always sends 8 bits to 16 bits of data to the master.
7.16.1 Features
Compliant with SPI specication Synchronous, Serial, Full Duplex Communication Combined SPI master and slave Maximum data bit rate of one eighth of the input clock rate 8 bits to 16 bits per transfer
7.17.1 Features
Compatible with Motorola SPI, 4-wire TI SSI, and National Semiconductor Microwire
buses
LPC2377_78_4 NXP B.V. 2008. All rights reserved.
24 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
Synchronous serial communication Master or slave operation 8-frame FIFOs for both transmit and receive 4-bit to 16-bit frame DMA transfers supported by GPDMA
7.18.1 Features
The MCI provides all functions specic to the SD/MMC memory card. These include
the clock generation unit, power management control, and command and data transfer.
Conforms to Multimedia Card Specication v2.11. Conforms to Secure Digital Memory Card Physical Layer Specication, v0.96. Can be used as a multimedia card bus or a secure digital memory card bus host. The
SD/MMC can be connected to several multimedia cards or a single secure digital memory card.
DMA supported through the GPDMA controller. 7.19 I2C-bus serial I/O controllers
The LPC2377/78 contains three I2C-bus controllers. The I2C-bus is bidirectional, for inter-IC control using only two wires: a serial clock line (SCL), and a serial data line (SDA). Each device is recognized by a unique address and can operate as either a receiver-only device (e.g., an LCD driver) or a transmitter with the capability to both receive and send information (such as memory). Transmitters and/or receivers can operate in either master or slave mode, depending on whether the chip has to initiate a data transfer or is only addressed. The I2C-bus is a multi-master bus and can be controlled by more than one bus master connected to it. The I2C-bus implemented in LPC2377/78 supports bit rates up to 400 kbit/s (Fast I2C-bus).
7.19.1 Features
I2C0 is a standard I2C compliant bus interface with open-drain pins. I2C1 and I2C2 use standard I/O pins and do not support powering off of individual
devices connected to the same bus lines.
LPC2377_78_4
Easy to congure as master, slave, or master/slave. Programmable clocks allow versatile rate control. Bidirectional data transfer between masters and slaves. Multi-master bus (no central master).
25 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
Serial clock synchronization allows devices with different bit rates to communicate via
one serial bus.
The I2C-bus can be used for test and diagnostic purposes. 7.20 I2S-bus serial I/O controllers
The I2S-bus provides a standard communication interface for digital audio applications. The I2S-bus specication denes a 3-wire serial bus using one data line, one clock line, and one word select signal. The basic I2S connection has one master, which is always the master, and one slave. The I2S interface on the LPC2377/78 provides a separate transmit and receive channel, each of which can operate as either a master or a slave.
7.20.1 Features
The interface has separate input/output channels each of which can operate in master
or slave mode.
Capable of handling 8-bit, 16-bit, and 32-bit word sizes. Mono and stereo audio data supported. The sampling frequency can range from 16 kHz to 48 kHz ((16, 22.05, 32, 44.1,
48) kHz).
Congurable word select period in master mode (separately for I2S input and output). Two 8 word FIFO data buffers are provided, one for transmit and one for receive. Generates interrupt requests when buffer levels cross a programmable boundary. Two DMA requests, controlled by programmable buffer levels. These are connected to the GPDMA block.
Controls include reset, stop and mute options separately for I2S input and I2S output. 7.21 General purpose 32-bit timers/external event counters
The LPC2377/78 includes four 32-bit Timer/Counters. The Timer/Counter is designed to count cycles of the system derived clock or an externally-supplied clock. It can optionally generate interrupts or perform other actions at specied timer values, based on four match registers. The Timer/Counter also includes four capture inputs to trap the timer value when an input signal transitions, optionally generating an interrupt.
7.21.1 Features
A 32-bit Timer/Counter with a programmable 32-bit prescaler. Counter or Timer operation. Up to four 32-bit capture channels per timer, that can take a snapshot of the timer
value when an input signal transitions. A capture event may also optionally generate an interrupt.
26 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
Continuous operation with optional interrupt generation on match. Stop timer on match with optional interrupt generation. Reset timer on match with optional interrupt generation.
7.22.1 Features
LPC2377/78 has one PWM block with Counter or Timer operation (may use the
peripheral clock or one of the capture inputs as the clock source).
27 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
Supports single edge controlled and/or double edge controlled PWM outputs. Single
edge controlled PWM outputs all go high at the beginning of each cycle unless the output is a constant low. Double edge controlled PWM outputs can have either edge occur at any position within a cycle. This allows for both positive going and negative going pulses.
Pulse period and width can be any number of timer counts. This allows complete
exibility in the trade-off between resolution and repetition rate. All PWM outputs will occur at the same repetition rate.
Double edge controlled PWM outputs can be programmed to be either positive going
or negative going pulses.
Match register updates are synchronized with pulse outputs to prevent generation of
erroneous pulses. Software must release new match values before they can become effective.
May be used as a standard timer if the PWM mode is not enabled. A 32-bit Timer/Counter with a programmable 32-bit Prescaler. 7.23 Watchdog timer
The purpose of the watchdog is to reset the microcontroller within a reasonable amount of time if it enters an erroneous state. When enabled, the watchdog will generate a system reset if the user program fails to feed (or reload) the watchdog within a predetermined amount of time.
7.23.1 Features
Internally resets chip if not periodically reloaded. Debug mode. Enabled by software but requires a hardware reset or a watchdog reset/interrupt to be
disabled.
Incorrect/Incomplete feed sequence causes reset/interrupt if enabled. Flag to indicate watchdog reset. Programmable 32-bit timer with internal prescaler. Selectable time period from (Tcy(WDCLK) 256 4) to (Tcy(WDCLK) 232 4) in multiples of Tcy(WDCLK) 4. Internal RC oscillator (IRC), or the APB peripheral clock. This gives a wide range of potential timing choices of Watchdog operation under different power reduction conditions. It also provides the ability to run the WDT from an entirely internal source that is not dependent on an external crystal and its associated components and wiring, for increased reliability.
The Watchdog Clock (WDCLK) source can be selected from the RTC clock, the
LPC2377_78_4
28 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
based on the APB clock. Also, the RTC is powered by its own power supply pin, VBAT, which can be connected to a battery or to the same 3.3 V supply used by the rest of the device. The VBAT pin supplies power only to the RTC and the battery RAM. These two functions require a minimum of power to operate, which can be supplied by an external battery. When the CPU and the rest of chip functions are stopped and power removed, the RTC can supply an alarm output that can be used by external hardware to restore chip power and resume operation.
7.24.1 Features
Measures the passage of time to maintain a calendar and clock. Ultra low power design to support battery powered systems. Provides Seconds, Minutes, Hours, Day of Month, Month, Year, Day of Week, and Day
of Year.
Dedicated 32 kHz oscillator or programmable prescaler from APB clock. Dedicated power supply pin can be connected to a battery or to the main 3.3 V. An alarm output pin is included to assist in waking up from Power-down mode, or
when the chip has had power removed to all functions except the RTC and battery RAM.
Periodic interrupts can be generated from increments of any eld of the time registers,
and selected fractional second values.
2 kB data SRAM powered by VBAT. RTC and battery RAM power supply is isolated from the rest of the chip. 7.25 Clocking and power control
7.25.1 Crystal oscillators
The LPC2377/78 includes three independent oscillators. These are the Main Oscillator, the Internal RC oscillator, and the RTC oscillator. Each oscillator can be used for more than one purpose as required in a particular application. Any of the three clock sources can be chosen by software to drive the PLL and ultimately the CPU. Following reset, the LPC2377/78 will operate from the Internal RC oscillator until switched by software. This allows systems to operate without any external crystal and the bootloader code to operate at a known frequency. 7.25.1.1 Internal RC oscillator The IRC may be used as the clock source for the WDT, and/or as the clock that drives the PLL and subsequently the CPU. The nominal IRC frequency is 4 MHz. The IRC is trimmed to 1 % accuracy. Upon power-up or any chip reset, the LPC2377/78 uses the IRC as the clock source. Software may later switch to one of the other available clock sources.
LPC2377_78_4
29 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
7.25.1.2
Main oscillator The main oscillator can be used as the clock source for the CPU, with or without using the PLL. The main oscillator operates at frequencies of 1 MHz to 25 MHz. This frequency can be boosted to a higher frequency, up to the maximum CPU operating frequency, by the PLL. The clock selected as the PLL input is PLLCLKIN. The ARM processor clock frequency is referred to as CCLK elsewhere in this document. The frequencies of PLLCLKIN and CCLK are the same value unless the PLL is active and connected. The clock frequency for each peripheral can be selected individually and is referred to as PCLK. Refer to Section 7.25.2 for additional information.
7.25.1.3
RTC oscillator The RTC oscillator can be used as the clock source for the RTC and/or the WDT. Also, the RTC oscillator can be used to drive the PLL and the CPU.
7.25.2 PLL
The PLL accepts an input clock frequency in the range of 32 kHz to 25 MHz. The input frequency is multiplied up to a high frequency, then divided down to provide the actual clock used by the CPU and the USB block. The PLL input, in the range of 32 kHz to 25 MHz, may initially be divided down by a value N, which may be in the range of 1 to 256. This input division provides a wide range of output frequencies from the same input frequency. Following the PLL input divider is the PLL multiplier. This can multiply the input divider output through the use of a Current Controlled Oscillator (CCO) by a value M, in the range of 1 through 32768. The resulting frequency must be in the range of 275 MHz to 550 MHz. The multiplier works by dividing the CCO output by the value of M, then using a phase-frequency detector to compare the divided CCO output to the multiplier input. The error value is used to adjust the CCO frequency. The PLL is turned off and bypassed following a chip Reset and by entering Power-down mode. PLL is enabled by software only. The program must congure and activate the PLL, wait for the PLL to lock, then connect to the PLL as a clock source.
30 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
including the rate of VDD(3V3) ramp (in the case of power on), the type of crystal and its electrical characteristics (if a quartz crystal is used), as well as any other external circuitry (e.g., capacitors), and the characteristics of the oscillator itself under the existing ambient conditions.
31 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
On the wake-up of power-down mode, if the IRC was used before entering power-down mode, it will take IRC 60 s to start-up. After this 4 IRC cycles will expire before the code execution can then be resumed if the code was running from SRAM. In the meantime, the ash wake-up timer then counts 4 MHz IRC clock cycles to make the 100 s ash start-up time. When it times out, access to the ash will be allowed. The customers need to recongure the PLL and clock dividers accordingly. 7.25.4.4 Power domains The LPC2377/78 provides two independent power domains that allow the bulk of the device to have power removed while maintaining operation of the RTC and the battery RAM. On the LPC2377/78, I/O pads are powered by the 3.3 V (VDD(3V3)) pins, while the VDD(DCDC)(3V3) pin powers the on-chip DC-to-DC converter which in turn provides power to the CPU and most of the peripherals. Depending on the LPC2377/78 application, a design can use two power options to manage power consumption. The rst option assumes that power consumption is not a concern and the design ties the VDD(3V3) and VDD(DCDC)(3V3) pins together. This approach requires only one 3.3 V power supply for both pads, the CPU, and peripherals. While this solution is simple, it does not support powering down the I/O pad ring on the y while keeping the CPU and peripherals alive. The second option uses two power supplies; a 3.3 V supply for the I/O pads (VDD(3V3)) and a dedicated 3.3 V supply for the CPU (VDD(DCDC)(3V3)). Having the on-chip DC-to-DC converter powered independently from the I/O pad ring enables shutting down of the I/O pad power supply on the y, while the CPU and peripherals stay active. The VBAT pin supplies power only to the RTC and the battery RAM. These two functions require a minimum of power to operate, which can be supplied by an external battery. When the CPU and the rest of chip functions are stopped and power removed, the RTC can supply an alarm output that may be used by external hardware to restore chip power and resume operation.
LPC2377_78_4
32 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
7.26.4 AHB
The LPC2377/78 implements two AHBs in order to allow the Ethernet block to operate without interference caused by other system activity. The primary AHB, referred to as AHB1, includes the Vectored Interrupt Controller, GPDMA controller, USB interface, and 8 kB SRAM primarily intended for use by the USB.
LPC2377_78_4
33 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
The second AHB, referred to as AHB2, includes only the Ethernet block and an associated 16 kB SRAM. In addition, a bus bridge is provided that allows the secondary AHB to be a bus master on AHB1, allowing expansion of Ethernet buffer space into off-chip memory or unused space in memory residing on AHB1. In summary, bus masters with access to AHB1 are the ARM7 itself, the USB block, the GPDMA function, and the Ethernet block (via the bus bridge from AHB2). Bus masters with access to AHB2 are the ARM7 and the Ethernet block.
7.27.1 EmbeddedICE
The EmbeddedICE logic provides on-chip debug support. The debugging of the target system requires a host computer running the debugger software and an EmbeddedICE protocol convertor. The EmbeddedICE protocol convertor converts the Remote Debug Protocol commands to the JTAG data needed to access the ARM7TDMI-S core present on the target system. The ARM core has a Debug Communication Channel (DCC) function built-in. The DCC allows a program running on the target to communicate with the host debugger or another separate host without stopping the program ow or even entering the debug state. The DCC is accessed as a coprocessor 14 by the program running on the ARM7TDMI-S core. The DCC allows the JTAG port to be used for sending and receiving data without affecting the normal program ow. The DCC data and control registers are mapped in to addresses in the EmbeddedICE logic. The JTAG clock (TCK) must be slower than 16 of the CPU clock (CCLK) for the JTAG interface to operate.
LPC2377_78_4
34 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
information about processor execution to a trace port. A software debugger allows conguration of the ETM using a JTAG interface and displays the trace information that has been captured. The ETM is connected directly to the ARM core and not to the main AMBA system bus. It compresses the trace information and exports it through a narrow trace port. An external Trace Port Analyzer captures the trace information under software debugger control. The trace port can broadcast the Instruction trace information. Instruction trace (or PC trace) shows the ow of execution of the processor and provides a list of all the instructions that were executed. Instruction trace is signicantly compressed by only broadcasting branch addresses as well as a set of status signals that indicate the pipeline status on a cycle by cycle basis. Trace information generation can be controlled by selecting the trigger resource. Trigger resources include address comparators, counters and sequencers. Since trace information is compressed the software debugger requires a static image of the code being executed. Self-modifying code can not be traced because of this restriction.
7.27.3 RealMonitor
RealMonitor is a congurable software module, developed by ARM Inc., which enables real-time debug. It is a lightweight debug monitor that runs in the background while users debug their foreground application. It communicates with the host using the DCC, which is present in the EmbeddedICE logic. The LPC2377/78 contain a specic conguration of RealMonitor software programmed into the on-chip ROM memory.
LPC2377_78_4
35 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
8. Limiting values
Table 4. Limiting values In accordance with the Absolute Maximum Rating System (IEC 60134).[1] Symbol VDD(3V3) Parameter supply voltage (3.3 V) Conditions core and external rail Min 3.0 3.0 0.5 for the RTC on ADC related pins 5 V tolerant I/O pins; only valid when the VDD(3V3) supply voltage is present other I/O pins IDD ISS Tstg Ptot(pack) supply current ground current storage temperature total power dissipation (per package) based on package heat transfer, not device power consumption human body model; all pins
[6] [2]
Unit V V V V V V V
VDD(DCDC)(3V3) DC-to-DC converter supply voltage (3.3 V) VDDA Vi(VBAT) Vi(VREF) VIA VI analog 3.3 V pad supply voltage input voltage on pin VBAT input voltage on pin VREF analog input voltage input voltage
[2][3]
0.5 65 -
V mA mA C W
Vesd
2000
+2000
[1]
The following applies to the limiting values: a) This product includes circuitry specically designed for the protection of its internal devices from the damaging effects of excessive static charge. Nonetheless, it is suggested that conventional precautions be taken to avoid applying greater than the rated maximum. b) Parameters are valid over operating temperature range unless otherwise specied. All voltages are with respect to VSS unless otherwise noted. Including voltage on outputs in 3-state mode. Not to exceed 4.6 V. The peak current is limited to 25 times the corresponding maximum current. Dependent on package type. Human body model: equivalent to discharging a 100 pF capacitor through a 1.5 k series resistor.
LPC2377_78_4
36 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
9. Static characteristics
Table 5. Static characteristics Tamb = 40 C to +85 C for commercial applications, unless otherwise specied. Symbol VDD(3V3) VDD(DCDC)(3V3) VDDA Vi(VBAT) Vi(VREF) Parameter supply voltage (3.3 V) DC-to-DC converter supply voltage (3.3 V) analog 3.3 V pad supply voltage input voltage on pin VBAT input voltage on pin VREF LOW-level input current HIGH-level input current OFF-state output current I/O latch-up current VI = 0 V; no pull-up VI = VDD(3V3); no pull-down VO = 0 V; VO = VDD(3V3); no pull-up/down (0.5VDD(3V3)) < VI < (1.5VDD(3V3)); Tj < 125 C VI VO VIH VIL Vhys VOH VOL IOH IOL IOHS input voltage output voltage HIGH-level input voltage LOW-level input voltage hysteresis voltage HIGH-level output voltage LOW-level output voltage HIGH-level output current LOW-level output current HIGH-level short-circuit output current IOH = 4 mA IOL = 4 mA VOH = VDD(3V3) 0.4 V VOL = 0.4 V VOH = 0 V
[7] [2]
Unit V V V V V
Standard port pins, RESET, RTCK IIL IIH IOZ Ilatch 3 3 3 100 A A A mA
[3][4][5] [6]
V V V V V V V mA mA mA
[7]
[7]
[7]
[8]
LOW-level short-circuit VOL = VDDA output current pull-down current pull-up current VI = 5 V VI = 0 V VDD(3V3) < VI < 5 V
[8]
10 15 0
50 50 0
50 150 85 0
mA A A A
[9]
[9]
LPC2377_78_4
37 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
Table 5. Static characteristics continued Tamb = 40 C to +85 C for commercial applications, unless otherwise specied. Symbol Parameter Conditions Min Typ[1] Max Unit IDD(DCDC)act(3V3) active mode DC-to-DC VDD(DCDC)(3V3) = 3.3 V; converter supply Tamb = 25 C; code current (3.3 V) while(1){} executed from ash; no peripherals enabled; PCLK = CCLK CCLK = 10 MHz CCLK = 72 MHz all peripherals enabled; PCLK = CCLK / 8 CCLK = 10 MHz CCLK = 72 MHz all peripherals enabled; PCLK = CCLK CCLK = 10 MHz CCLK = 72 MHz IDD(DCDC)pd(3V3) power-down mode DC-to-DC converter supply current (3.3 V) active mode battery supply current HIGH-level input voltage LOW-level input voltage hysteresis voltage LOW-level output voltage input leakage current IOLS = 3 mA VI = VDD(3V3) VI = 5 V Oscillator pins Vi(XTAL1) Vo(XTAL2) Vi(RTCX1) Vo(RTCX2) input voltage on pin XTAL1 output voltage on pin XTAL2 input voltage on pin RTCX1 output voltage on pin RTCX2 OFF-state output current bus supply voltage 0 V < VI < 3.3 V 0 0 0 0 1.8 1.8 1.8 1.8 V V V V
[7]
15 63
mA mA
21 92
mA mA
27 125 150
mA mA A
20 A
IBATact
I2C-bus pins (P0[27] and P0[28]) VIH VIL Vhys VOL ILI 0.7VDD(3V3) V
0.3VDD(3V3) V V V A A
0.5VDD(3V3) 2 10 0.4 4 22
[11]
10 5.25
A V
38 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
Table 5. Static characteristics continued Tamb = 40 C to +85 C for commercial applications, unless otherwise specied. Symbol VDI VCM Vth(rs)se Parameter differential input sensitivity differential common mode voltage range single-ended receiver switching threshold voltage LOW-level output voltage for low-/full-speed HIGH-level output voltage (driven) for low-/full-speed transceiver capacitance driver output impedance for driver which is not high-speed capable pull-up resistance RL of 1.5 k to 3.6 V Conditions |(D+) (D)| includes VDI range Min 0.2 0.8 0.8 Typ[1] Max 2.5 2.0 Unit V V V
VOL
0.18
VOH
RL of 15 k to GND
2.8
3.5
Ctrans ZDRV
36
20 44.1
pF
Rpu
[1] [2] [3] [4] [5] [6] [7] [8] [9]
SoftConnect = ON
1.1
1.9
Typical ratings are not guaranteed. The values listed are at room temperature (25 C), nominal supply voltages The RTC typically fails when Vi(VBAT) drops below 1.6 V. Including voltage on outputs in 3-state mode. VDD(3V3) supply voltages must be present. 3-state outputs go into 3-state mode when VDD(3V3) is grounded. Please also see the errata note in errata sheet. Accounts for 100 mV voltage drop in all supply lines. Allowed as long as the current limit does not exceed the maximum current allowed by the device. Minimum condition for VI = 4.5 V, maximum condition for VI = 5.5 V.
[10] On pin VBAT. [11] To VSS. [12] Includes external resistors of 18 1 % on D+ and D.
LPC2377_78_4
39 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
Table 6. ADC static characteristics VDDA = 2.5 V to 3.6 V; Tamb = 40 C to +85 C unless otherwise specied; ADC frequency 4.5 MHz. Symbol VIA Cia ED EL(adj) EO EG ET Rvsi Parameter analog input voltage analog input capacitance differential linearity error integral non-linearity offset error gain error absolute error voltage source interface resistance
Conditions: VSSA = 0 V, VDDA = 3.3 V. The ADC is monotonic, there are no missing codes. The differential linearity error (ED) is the difference between the actual step width and the ideal step width. See Figure 4. The integral non-linearity (EL(adj)) is the peak difference between the center of the steps of the actual and the ideal transfer curve after appropriate adjustment of gain and offset errors. See Figure 4. The offset error (EO) is the absolute difference between the straight line which ts the actual curve and the straight line which ts the ideal curve. See Figure 4. The gain error (EG) is the relative difference in percent between the straight line tting the actual transfer curve after removing offset error, and the straight line which ts the ideal transfer curve. See Figure 4. The absolute error (ET) is the maximum difference between the center of the steps of the actual transfer curve of the non-calibrated ADC and the ideal transfer curve. See Figure 4. See Figure 5.
[1][2][3] [1][4] [1][5] [1][6] [1][7] [8]
Conditions
Min 0 -
Typ -
LPC2377_78_4
40 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
gain error EG
1022
1021
1020
1019
1018
(2)
7 code out 6
(1)
5
(5)
4
(4)
3
(3)
1 LSB =
(1) Example of an actual transfer curve. (2) The ideal transfer curve. (3) Differential linearity error (ED). (4) Integral non-linearity (EL(adj)). (5) Center of a step of the actual transfer curve.
LPC2377_78_4
41 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
LPC23XX
20 k
AD0[y]SAMPLE
3 pF 5 pF
AD0[y]
Rvsi
VEXT
VSS
002aac610
LPC2377_78_4
42 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
Conditions 10 % to 90 % 10 % to 90 % tr / tf
Typ -
Unit ns ns % V ns ns ns ns ns
160 2 18.5 9 40
tEOPR2
[1]
82
ns
[1]
Table 8. Dynamic characteristics Tamb = 40 C to +85 C for commercial applications; VDD(3V3) over specied ranges.[1] Symbol External clock fosc Tcy(clk) tCHCX tCLCX tCLCH tCHCL I2C-bus tf(o) SSP interface tsu(SPI_MISO) SPI_MISO set-up time Tamb = 25 C; measured in SPI Master mode; see Figure 10 11 ns oscillator frequency clock cycle time clock HIGH time clock LOW time clock rise time clock fall time pins (P0[27] and P0[28]) output fall time VIH to VIL 20 + 0.1 Cb[3] ns 1 42 Tcy(clk) 0.4 Tcy(clk) 0.4 25 1000 5 5 MHz ns ns ns ns ns Parameter Conditions Min Typ[2] Max Unit
Parameters are valid over operating temperature range unless otherwise specied. Typical ratings are not guaranteed. The values listed are at room temperature (25 C), nominal supply voltages. Bus capacitance Cb in pF, from 10 pF to 400 pF.
LPC2377_78_4
43 of 55
xxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxx x x x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxx xx xx xxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxx xxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxx x x xxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx xxx
Product data sheet Rev. 04 19 November 2008
NXP B.V. 2008. All rights reserved. LPC2377_78_4
NXP Semiconductors
Table 9. Dynamic characteristics: Static external memory interface CL = 30 pF, Tamb = 40 C to 85 C, VDD(DCDC)(3V3) = VDD(3V3) = 3.0 V to 3.6 V, AHB clock = 1 MHz Symbol tCSLAV Parameter CS LOW to address valid time OE LOW to address valid time CS LOW to OE LOW time memory access time data input hold time CS HIGH to OE HIGH time OE HIGH to address invalid time OE LOW to OE HIGH time BLS LOW to address valid time CS HIGH to BLS HIGH time parameters[1][6] 0.88 + Tcy(CCLK) (1 + WAITWEN) 0.88 0.68 0
[3] [3][4]
Conditions
Min 0.29
Typ 0.20
Max 2.54
Unit ns
Read cycle parameters[1][2] tOELAV tCSLOEL tam th(D) tCSHOEH tOEHANV tOELOEH tBLSLAV tCSHBLSH tCSLWEL tCSLBLSL tWELDV tCSLDV tWELWEH 0.29 0.20 2.54 0.49 + Tcy(CCLK) WAITOEN (WAITRD WAITOEN + 1) Tcy(CCLK) 12.70 5.20 0.20 2.44 0.10 + (WAITRD WAITOEN + 1) Tcy(CCLK) 2.54 0.68 0.20 + Tcy(CCLK) (1 + WAITWEN) 0.98 5.86 4.79 0.10 + Tcy(CCLK) (WAITWR WAITWEN + 1) 0.59 + Tcy(CCLK) (WAITWR WAITWEN + 3) 2.74 + Tcy(CCLK) ns ns ns ns ns ns ns ns ns ns ns ns ns ns ns
0.78 + Tcy(CCLK) WAITOEN 0 + Tcy(CCLK) WAITOEN (WAITRD WAITOEN + 1) Tcy(CCLK) 8.11 1.29 0.49 0.20 0.59 + (WAITRD WAITOEN + 1) Tcy(CCLK) 0.39 0.88 (WAITRD WAITOEN + 1) Tcy(CCLK) 9.57 4.22 0 0.20 0 + (WAITRD WAITOEN + 1) Tcy(CCLK) 0 0.49 0.10 + Tcy(CCLK) (1 + WAITWEN) 0.49 2.54 2.64 0 + Tcy(CCLK) (WAITWR WAITWEN + 1) 0 + Tcy(CCLK) (WAITWR WAITWEN + 3) 0.20 + Tcy(CCLK)
[5]
Write cycle
CS LOW to WE LOW time CS LOW to BLS LOW time WE LOW to data valid time CS LOW to data valid time WE LOW to WE HIGH time
LPC2377/78
tBLSLBLSH BLS LOW to BLS HIGH time tWEHANV WE HIGH to address invalid time
[3]
[3]
44 of 55
xxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxx x x x xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxx xx xx xxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxx xxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxx x x xxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxx xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx xxx
Table 9. Dynamic characteristics: Static external memory interface continued CL = 30 pF, Tamb = 40 C to 85 C, VDD(DCDC)(3V3) = VDD(3V3) = 3.0 V to 3.6 V, AHB clock = 1 MHz Symbol tWEHDNV tBLSHANV tBLSHDNV Parameter WE HIGH to data invalid time BLS HIGH to address invalid time BLS HIGH to data invalid time Conditions
[3]
NXP Semiconductors
Unit ns ns ns
[3]
[3]
VOH = 2.5 V, VOL = 0.2 V. VIH = 2.5 V, VIL = 0.5 V. Tcy(CCLK) = 1CCLK. Latest of address valid, CS LOW, OE LOW to data valid. Earliest of CS HIGH, OE HIGH, address change to data invalid. Byte lane state bit (PB) = 1.
LPC2377/78
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
10.1 Timing
tCHCL
tCLCX Tcy(clk)
tCHCX tCLCH
002aaa907
Fig 6.
tCSLAV CS
tCSHOEH
tBLSLAV BLS
tCSHBLSH
002aad955
LPC2377_78_4
46 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
CS
tCSLWEL BLS/WE
OE
002aad956
source EOP width: tFEOPT differential data to SE0/EOP skew n tPERIOD + tFDEOP
LPC2377_78_4
47 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
shifting edges
SCK
sampling edges
MOSI
MISO
tsu(SPI_MISO)
002aad326
USB_UP_LED USB_CONNECT
LPC23XX
soft-connect switch
R1 1.5 k
USB-B connector
LPC2377_78_4
48 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
VDD(3V3)
R2
LPC23XX
USB_UP_LED VBUS USB_D+ RS = 33 USB_D RS = 33 VSS
R1 1.5 k
USB-B connector
002aac579
LPC2377_78_4
49 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
c
y X
A 108 109 73 72 ZE
E HE
A A2
A1
(A 3) Lp L detail X
5 scale
10 mm
DIMENSIONS (mm are the original dimensions) UNIT mm A max. 1.6 A1 0.15 0.05 A2 1.45 1.35 A3 0.25 bp 0.27 0.17 c 0.20 0.09 D (1) 20.1 19.9 E (1) 20.1 19.9 e 0.5 HD HE L 1 Lp 0.75 0.45 v 0.2 w 0.08 y 0.08 Z D(1) Z E(1) 1.4 1.1 1.4 1.1 7 o 0
o
Note 1. Plastic or metal protrusions of 0.25 mm maximum per side are not included. OUTLINE VERSION SOT486-1 REFERENCES IEC 136E23 JEDEC MS-026 JEITA EUROPEAN PROJECTION
50 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
13. Abbreviations
Table 10. Acronym ADC AHB AMBA APB BLS BOD CAN CTS DAC DCC DMA DSP EOP ETM GPIO JTAG MII MIIM PHY PLL PWM RMII RTS SE0 SPI SSI SSP TTL UART USB Acronym list Description Analog-to-Digital Converter Advanced High-performance Bus Advanced Microcontroller Bus Architecture Advanced Peripheral Bus Byte Lane Select BrownOut Detection Controller Area Network Clear To Send Digital-to-Analog Converter Debug Communication Channel Direct Memory Access Digital Signal Processing End Of Packet Embedded Trace Macrocell General Purpose Input/Output Joint Test Action Group Media Independent Interface Media Independent Interface Management Physical Layer Phase-Locked Loop Pulse Width Modulator Reduced Media Independent Interface Request To Send Single Ended Zero Serial Peripheral Interface Synchronous Serial Interface Synchronous Serial Port Transistor-Transistor Logic Universal Asynchronous Receiver/Transmitter Universal Serial Bus
LPC2377_78_4
51 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
Changed status to Product data sheet. Part LPC2377FBD144 added. Table 5 Static characteristics, Vhys, moved 0.4 from Typ to Min column. Table 5 Static characteristics, VI, added Table note 6. Table 5 Static characteristics, updated Table note 8. Added Table 9 Dynamic characteristics: Static external memory interface. Figure 6 External clock timing (with an amplitude of at least Vi(RMS) = 200 mV), removed gure note, modied gure and title. Added Figure 7 External memory read access and Figure 8 External memory write access. RSTOUT pin description updated: This is a 3.3 V pin. Updated description of pins RESET, RSTOUT and VBAT. Updated Figure 1 LPC2377/78 block diagram. Preliminary data sheet Preliminary data sheet LPC2378_2 LPC2378_1 Font in graphics updated. Removed references to VDD(1V8). Removed Deep power-down mode chapter and related references. Preliminary data sheet -
20070927
20070501
20061206
LPC2377_78_4
52 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
Denition This document contains data from the objective specication for product development. This document contains data from the preliminary specication. This document contains the product specication.
Please consult the most recently issued document before initiating or completing a design. The term short data sheet is explained in section Denitions. The product status of device(s) described in this document may have changed since this document was published and may differ in case of multiple devices. The latest product status information is available on the Internet at URL http://www.nxp.com.
15.2 Denitions
Draft The document is a draft version only. The content is still under internal review and subject to formal approval, which may result in modications or additions. NXP Semiconductors does not give any representations or warranties as to the accuracy or completeness of information included herein and shall have no liability for the consequences of use of such information. Short data sheet A short data sheet is an extract from a full data sheet with the same product type number(s) and title. A short data sheet is intended for quick reference only and should not be relied upon to contain detailed and full information. For detailed and full information see the relevant full data sheet, which is available on request via the local NXP Semiconductors sales ofce. In case of any inconsistency or conict with the short data sheet, the full data sheet shall prevail.
damage. NXP Semiconductors accepts no liability for inclusion and/or use of NXP Semiconductors products in such equipment or applications and therefore such inclusion and/or use is at the customers own risk. Applications Applications that are described herein for any of these products are for illustrative purposes only. NXP Semiconductors makes no representation or warranty that such applications will be suitable for the specied use without further testing or modication. Limiting values Stress above one or more limiting values (as dened in the Absolute Maximum Ratings System of IEC 60134) may cause permanent damage to the device. Limiting values are stress ratings only and operation of the device at these or any other conditions above those given in the Characteristics sections of this document is not implied. Exposure to limiting values for extended periods may affect device reliability. Terms and conditions of sale NXP Semiconductors products are sold subject to the general terms and conditions of commercial sale, as published at http://www.nxp.com/prole/terms, including those pertaining to warranty, intellectual property rights infringement and limitation of liability, unless explicitly otherwise agreed to in writing by NXP Semiconductors. In case of any inconsistency or conict between information in this document and such terms and conditions, the latter will prevail. No offer to sell or license Nothing in this document may be interpreted or construed as an offer to sell products that is open for acceptance or the grant, conveyance or implication of any license under any copyrights, patents or other industrial or intellectual property rights.
15.3 Disclaimers
General Information in this document is believed to be accurate and reliable. However, NXP Semiconductors does not give any representations or warranties, expressed or implied, as to the accuracy or completeness of such information and shall have no liability for the consequences of use of such information. Right to make changes NXP Semiconductors reserves the right to make changes to information published in this document, including without limitation specications and product descriptions, at any time and without notice. This document supersedes and replaces all information supplied prior to the publication hereof. Suitability for use NXP Semiconductors products are not designed, authorized or warranted to be suitable for use in medical, military, aircraft, space or life support equipment, nor in applications where failure or malfunction of an NXP Semiconductors product can reasonably be expected to result in personal injury, death or severe property or environmental
15.4 Trademarks
Notice: All referenced brands, product names, service names and trademarks are the property of their respective owners. I2C-bus logo is a trademark of NXP B.V. SoftConnect is a trademark of NXP B.V. GoodLink is a trademark of NXP B.V.
LPC2377_78_4
53 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
17. Contents
1 General description . . . . . . . . . . . . . . . . . . . . . . 1 2 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 3 Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 4 Ordering information . . . . . . . . . . . . . . . . . . . . . 3 4.1 Ordering options . . . . . . . . . . . . . . . . . . . . . . . . 3 5 Block diagram . . . . . . . . . . . . . . . . . . . . . . . . . . 4 6 Pinning information . . . . . . . . . . . . . . . . . . . . . . 5 6.1 Pinning . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 6.2 Pin description . . . . . . . . . . . . . . . . . . . . . . . . . 5 7 Functional description . . . . . . . . . . . . . . . . . . 15 7.1 Architectural overview. . . . . . . . . . . . . . . . . . . 15 7.2 On-chip ash programming memory . . . . . . . 16 7.3 On-chip SRAM . . . . . . . . . . . . . . . . . . . . . . . . 16 7.4 Memory map. . . . . . . . . . . . . . . . . . . . . . . . . . 16 7.5 Interrupt controller . . . . . . . . . . . . . . . . . . . . . 17 7.5.1 Interrupt sources. . . . . . . . . . . . . . . . . . . . . . . 18 7.6 Pin connect block . . . . . . . . . . . . . . . . . . . . . . 18 7.7 External memory controller. . . . . . . . . . . . . . . 18 7.7.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 7.8 General purpose DMA controller . . . . . . . . . . 19 7.8.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 7.9 Fast general purpose parallel I/O . . . . . . . . . . 20 7.9.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 7.10 Ethernet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 7.10.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 7.11 USB interface (LPC2378 only) . . . . . . . . . . . . 22 7.11.1 USB device controller . . . . . . . . . . . . . . . . . . . 22 7.11.1.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 7.12 CAN controller and acceptance lters (LPC2378 only). . . . . . . . . . . . . . . . . . . . . . . . 22 7.12.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 7.13 10-bit ADC . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 7.13.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 7.14 10-bit DAC . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 7.14.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 7.15 UARTs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 7.15.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 7.16 SPI serial I/O controller. . . . . . . . . . . . . . . . . . 24 7.16.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 7.17 SSP serial I/O controller . . . . . . . . . . . . . . . . . 24 7.17.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 7.18 SD/MMC card interface . . . . . . . . . . . . . . . . . 25 7.18.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 7.19 I2C-bus serial I/O controllers. . . . . . . . . . . . . . 25 7.19.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 7.20 I2S-bus serial I/O controllers . . . . . . . . . . . . . . 26 7.20.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 7.21 General purpose 32-bit timers/external event counters . . . . . . . . . . . . . . . . . . . . . . . . 7.21.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.22 Pulse width modulator . . . . . . . . . . . . . . . . . . 7.22.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.23 Watchdog timer . . . . . . . . . . . . . . . . . . . . . . . 7.23.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.24 RTC and battery RAM . . . . . . . . . . . . . . . . . . 7.24.1 Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.25 Clocking and power control . . . . . . . . . . . . . . 7.25.1 Crystal oscillators . . . . . . . . . . . . . . . . . . . . . . 7.25.1.1 Internal RC oscillator . . . . . . . . . . . . . . . . . . . 7.25.1.2 Main oscillator . . . . . . . . . . . . . . . . . . . . . . . . 7.25.1.3 RTC oscillator. . . . . . . . . . . . . . . . . . . . . . . . . 7.25.2 PLL. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.25.3 Wake-up timer . . . . . . . . . . . . . . . . . . . . . . . . 7.25.4 Power control . . . . . . . . . . . . . . . . . . . . . . . . . 7.25.4.1 Idle mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.25.4.2 Sleep mode . . . . . . . . . . . . . . . . . . . . . . . . . . 7.25.4.3 Power-down mode . . . . . . . . . . . . . . . . . . . . . 7.25.4.4 Power domains. . . . . . . . . . . . . . . . . . . . . . . . 7.26 System control . . . . . . . . . . . . . . . . . . . . . . . . 7.26.1 Reset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.26.2 Brownout detection . . . . . . . . . . . . . . . . . . . . 7.26.3 Code security (Code Read Protection - CRP) 7.26.4 AHB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.26.5 External interrupt inputs . . . . . . . . . . . . . . . . . 7.26.6 Memory mapping control . . . . . . . . . . . . . . . . 7.27 Emulation and debugging. . . . . . . . . . . . . . . . 7.27.1 EmbeddedICE . . . . . . . . . . . . . . . . . . . . . . . . 7.27.2 Embedded trace. . . . . . . . . . . . . . . . . . . . . . . 7.27.3 RealMonitor . . . . . . . . . . . . . . . . . . . . . . . . . . 8 Limiting values . . . . . . . . . . . . . . . . . . . . . . . . 9 Static characteristics . . . . . . . . . . . . . . . . . . . 10 Dynamic characteristics . . . . . . . . . . . . . . . . . 10.1 Timing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 Application information . . . . . . . . . . . . . . . . . 11.1 Suggested USB interface solutions (LPC2378 only) . . . . . . . . . . . . . . . . . . . . . . . 12 Package outline . . . . . . . . . . . . . . . . . . . . . . . . 13 Abbreviations . . . . . . . . . . . . . . . . . . . . . . . . . 14 Revision history . . . . . . . . . . . . . . . . . . . . . . . 15 Legal information . . . . . . . . . . . . . . . . . . . . . . 15.1 Data sheet status . . . . . . . . . . . . . . . . . . . . . . 15.2 Denitions . . . . . . . . . . . . . . . . . . . . . . . . . . . 15.3 Disclaimers. . . . . . . . . . . . . . . . . . . . . . . . . . . 26 26 27 27 28 28 28 29 29 29 29 30 30 30 30 31 31 31 31 32 32 32 33 33 33 34 34 34 34 34 35 36 37 43 46 48 48 50 51 52 53 53 53 53
continued >>
LPC2377_78_4
54 of 55
NXP Semiconductors
LPC2377/78
Single-chip 16-bit/32-bit microcontroller
15.4 16 17
Please be aware that important notices concerning this document and the product(s) described herein, have been included in section Legal information.
For more information, please visit: http://www.nxp.com For sales office addresses, please send an email to: [email protected] Date of release: 19 November 2008 Document identifier: LPC2377_78_4