Documenti di Didattica
Documenti di Professioni
Documenti di Cultura
Series Overview
Introduction
LPC1700 Series
MPU
NVIC
WIC
Flash Accelerator
DMA
Unique Implementations:
LPC1700 Series
Peripheral support
Power management
Memory support
Benchmarks
Introduction
Contents
LPC2300
Block
Diagram
Series Overview
Bit-Band Regions
http://www.arm.com/pdfs/IntroToCortex-M3.pdf
11
LPC1700 Bit
Band Regions
Block
Diagram
(Part 2)
12
10
www.eembc.org
Designed to help designers select the right processor for their system
About EEMBC
Full Debug/Trace
X$5HDO7LPH&ORFNZLWK&DOHQGDU)XQFWLRQ
Fully-compliant USB2.0
15
13
Summary
Benchmarks
16
14
Memory Support
19
17
18
8 KB ROM
Flash program/erase APIs
On-Chip ROM
20
Total 64 KB
On-Chip SRAM
Maximum 512 KB
Zero wait-state performance with Flash Accelerator
On-chip Flash
Booting
Flash Accelerator
Internal Memories
Memory Support
A background region
Overlapping regions
Flash Accelerator
23
21
Booting
DMA Support
Nested VIC
Clocking
24
22
Clocking Explained
27
25
Clock source for the RTC block, the main PLL, and subsequently the CPU.
1 Hz clock to RTC
RTC oscillator
Clock source for the CPU, with or without using the PLL.
The main oscillator also provides the clock source for the dedicated USB
PLL
Operates at frequencies of 1 MHz to 25 MHz
Main oscillator
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 1% accuracy over the entire temp
and voltage range
Internal RC oscillator
Clock OUT
28
26
http://www.arm.com/pdfs/IntroToCortex-M3.pdf
Tail-chaining achieves much lower latency by replacing serial stack pop and
push actions that normally take over 30 clock cycles with a simple 6 cycle
instruction fetch
Priority pre-emption
Tail chaining
Advanced features
31
29
12
PUSH
ISR
MemManage Fault
Bus Fault
Usage Fault
Reserved
SVCall
Debug Monitor
Reserved
PendSV
SYSTICK
Interrupt#0
-------
4
5
6
7-10
11
12
13
14
15
16
------
Interrupt#239
Hard Fault
256
NMI
Exception Type
Reset
No.
1
Priority
247
----
NA
NA
-1
-2
-3 (Highest)
Type of Priority
settable
settable
settable
settable
settable
NA
settable
settable
NA
settable
settable
settable
fixed
fixed
fixed
Descriptions
---------------------------
External Interrupt #0
Non-Maskable Interrupt
Reset
12
POP
Cortex-M3
IRQ
32
30
Reserved
PendSV
Systick
IRQ0
More IRQs
0x34
0x38
0x3C
0x40
---------
SVCall
Debug Monitor
0x30
Reserved
0x1C 0x28
0x2C
Bus Fault
Usage Fault
0x18
Memory Manage
0x10
0x14
NMI
Hard Fault
0x08
0X0C
Reset
0x00
0X04
Vector
Initial Main SP
Address
5:0
4:1
3:2
2:3
1:4
0:5
PRIGROUP
(3 bits)
Binary Point
(Group: sub)
Bits
16
32
Levels
Pre-empting Priority
(Group Priority)
Bits
32
16
Levels
Sub-Priority
(Sub-Level)
If PRIGROUP = 2, then 5 bits used to format peripheral interrupt level will be defined
XXXXX where XXXXX groups (can have 32 groups), via software - cannot set subpriority within group.
If PRIGROUP = 5, then 5 bits used to format peripheral interrupt level will be defined
as XX : YYY where XX groups (can have total 4 groups), and YYY sub-priority
within each group (can have total 8 sub-priorities within each group)
If PRIGROUP = 3, then 5 bits used to format peripheral interrupt level will be defined
as XXXX : Y where XXXX groups (can have total16 groups), and Y sub-priority
within each group (can have total 2 sub-priorities within each group)
Interrupt Prioritization
35
33
PRIGROUP
(3 bits)
0:5
1:4
2:3
3:2
4:1
5:0
Binary Point
(Group: sub)
Bits
16
32
Levels
Pre-empting Priority
(Group Priority)
Bits
32
16
Levels
Sub-Priority
(Sub-Level)
We can set PRIGROUP to 4. We can have 8 groups total and 4 sub-levels within each group.
We set priority field (bit 23:19) of EINT0 to 2 so it will 00010 which means EINT0 is from
group 0 and has sub-priority of 2 within group 0
We set priority field (bit 15:11) of GPIO Interrupt (EINT3) to 1 so it will be 00001 which means
GPIO Interrupt (EINT3) is from group 0 and has sub-priority of 1 within group 0
So if both interrupts take place at the same time, GPIO Interrupt will be serviced first and then
EINT0 Interrupt (example of Tail-Chaining)
Example: We have two interrupts in our system - EINT0 and GPIO Interrupt and we
want to assign both interrupts under the same group with different sub-priorities where
GPIO Interrupt has a higher sub-priority than EINT0
Interrupt Prioritization
Interrupt Prioritization
36
34
1010010110110110
10100101
10110110
01111000
001
00
1 0 0 00
11
01
01
15 Serial Interfaces
DMA Support
39
37
General Purpose IO
Analog Blocks
Motor Control
Timers
15 Serial Interfaces
Peripheral Support
40
38
DMA support
43
MCLK
WS
SD
MCLK
WS
SD
CK
Audio Codec
Ethernet Interface
Contains a Ethernet MAC (Media Access Controller) with RMII
interface (reduced Media Independent Interface)
Supports 10 or 100 Mbps PHY devices
Dedicated DMA controller
Fully compliant with 802.3x Full Duplex Flow Control and Half
Duplex back pressure
NXP
SCL
41
LPC1700
SDA
CK
The I2S input and output can each operate independently in both master and
slave mode
I2C
Interface
DMA support
I2S
Digital Interface
Analog Interface
44
42
45
Watchdog Timer
47
Timers (1)
USB 2.0 Full Speed (12 Mbps) Device and On-The-Go/Open Host
Control Interface.
USB
PWM timer
Timers (2)
Systick timer
Watchdog timer
Timers
48
46
24-bit timer that counts down to zero and provides 10 millisecond time interval
between interrupts
Can be clocked internally by the CPU clock or by a clock input from a pin
(STCLK)
Default register settings gives a 10ms interrupt if the CPU clock rate is 100 MHz
Systick Timer
Timers (3)
51
49
MCOB0
MCOA1
MCOB1
Channel 1
Operating Modes
MCOA0
CAP
DT
MAT
LIM
TC
MCOA2
52
50
MCOB2
Channel 2
Select Channel
ADCR (7:0)
ADC
Inputs
7 6 5 4 3 2 1 0
DMA support
12-bit ADC
ADDR7
ADDR0
Quadrature Encoder
Interface (QEI)
55
53
BOD
Power-on-Reset (POR)
Velocity capture
56
54
57
59
RTC Domain
58
60
Provides seconds, minutes, hours, day of month, month, year, day of week,
and day of year
RTC Features
Main oscillator and all internal clocks except the IRC are stopped
Deep-Sleep
Sleep
Power Domains
Power Management
63
61
All clocks including IRC are stopped. Internal voltage is turned off
Complete system state is lost, only special registers in the RTC domain
are preserved
Option to run RTC
Wake-up >>> reset or RTC interrupt
Deep power-down
Same as Deep-Sleep mode except Flash and IRC are shut down
State is preserved
Power-down
VDDA
VREFP
Power domains
64
62
Serial wire debug (SWD) (two pins) and Serial wire output (SWO) (one pin)
Interrupts used:
67
65
68
66
Embedded Artists
Hitex LPC17xx-Stick
IAR KSDK-LPC17xx
Keil MCB17xx
ARM/Keil Vision3
CodeRed RedSuite
Hitex HiTOP
IAR Embedded Workbench for ARM
Thank You!
JTAG debuggers
IDEs
Evaluation boards
71
69
www.nxp.com/lpczone
72
70