mm - propox• wbudowane diody led sygnalizuj ące zasilanie, prac ę pami ęci dataflash oraz stan...
TRANSCRIPT
MMMMMMMMlpc2lpc2lpc2lpc236363636xxxx
Minimoduł z mikrokontrolerem ARM i Ethernetem
Instrukcja Użytkownika
REV 1.0
rter K
its E
mbe
dded
Web
Ser
ve
PIC m
icro
cont
rolle
rs S
ta-
s fo
r ‘51
, AVR
, ST,
ation
Boa
rd
Eva
lu
rs P
roto
typing
Boa
rds M
inim
od-
Micro
proc
esor
sys
tem
s, P
CB
AVR, P
IC, S
T micro
cont
rolle
rs
ed In
Sys
tem
pro
gram
mer
s fo
r
net c
ontro
llers
, RFID
High
Spe-
ules
for m
icro
cont
rolle
rs, e
ther
-
design
ing
Eva
luat
ion
Board
s fo
r
ethe
rnet
con
trolle
rs, R
FID H
igh
nim
odules
for m
icro
cont
rolle
rs,
Serve
rs P
roto
typing
Boa
rds
mi-
lers
Sta
rter K
its E
mbe
dded
Web
‘51,
AVR, S
T, P
IC m
icro
cont
rol-
Spe
ed In
Sys
tem
s pr
ogra
mm
e-
roco
ntro
llers
Sta
rter K
its E
mbe
-
ards
for `
51, A
VR, S
T, P
IC m
ic-
PCB d
esigning
Eva
luat
ion
Bo-
ollers
Micro
proc
esor
sys
tem
s,
rs fo
r AVR
, PIC
, ST m
icro
cont
rl-
dded
Web
Ser
wer
s Pro
totyping
mer
s fo
r AVR
, PIC
, ST m
icro
co-
High
Speed
In S
yste
m p
rogr
am-
cont
rolle
rs, e
ther
net c
ontro
llers
,
Board
s M
inim
odules
for m
icro
-
con
trolle
rs M
icro
proc
esor
Boa
rds
ning
Eva
luat
ion
Sys
tem
s, P
CB D
esig-
R
Many ideas one solution
Spis Treści
1 WPROWADZENIE .................................................................................................................................... 3
CECHY ...................................................................................................................................................... 3
2 BUDOWA MODUŁU ................................................................................................................................. 4
SCHEMAT BLOKOWY ................................................................................................................................. 4
ROZMIESZCZENIE WYPROWADZEŃ........................................................................................................... 5
MIKROKONTROLER LPC236X.................................................................................................................. 6
ETHERNET PHY ....................................................................................................................................... 6
INTERFEJS USB ....................................................................................................................................... 8
INTERFEJS CAN ....................................................................................................................................... 8
INTERFEJSY RS232 ................................................................................................................................. 9
PAMIĘĆ DATAFLASH............................................................................................................................... 10
ZŁĄCZE JTAG ........................................................................................................................................ 11
ZASILANIE MODUŁU................................................................................................................................. 12
3 PŁYTA EWALUACYJNA ....................................................................................................................... 12
4 PROGRAMOWANIE PROCESORA LPC236X.................................................................................. 13
PROGRAMOWANIE ZA POMOCĄ INTERFEJSU JTAG............................................................................... 13
PROGRAMOWANIE POPRZEZ INTERFEJS RS232 ................................................................................... 13
5 PARAMETRY TECHNICZNE ................................................................................................................ 15
6 POMOC TECHNICZNA .......................................................................................................................... 15
7 GWARANCJA.......................................................................................................................................... 15
8 ROZMIESZCZENIE ELEMENTÓW...................................................................................................... 16
9 WYMIARY ................................................................................................................................................. 17
10 SCHEMAT .............................................................................................................................................. 17
3
1 Wprowadzenie
MMlpc236x jest uniwersalnym minimodułem dla mikrokontrolerów LPC236x firmy Philips, wyposażonym w interfejs Ethernet. Mikrokontroler ten jest dostępny w obudowie TQFP100, która ze względu na gęsty układ wyprowadzeń utrudnia stosowanie go w układach prototypowych i amatorskich. My podjęliśmy próbę umieszczenia go na płytce o wymiarach 36x56 mm z układem wyprowadzeń pasującym do ogólnie dostępnych druków prototypowych. Dodatkowo umieściliśmy Ethernet PHY 10/100Mb wraz ze złączem RJ45 i transformatorem, oraz pamięć szeregową DataFlash o pojemności do 8MB. Wszystkie porty i sygnały mikrokontrolera (z wyjątkiem tych używanych przez Ethernet PHY) wyprowadziliśmy przy pomocy dwurzędowych złącz szpilkowych o rastrze 0,1’. Minimoduł ten nie jest jedynie adapterem, ale kompletną płytą główną dla LPC236x. Wystarczy podłączyć napięcie zasilania, złącze JTAG i możemy zacząć ładować 512 kBajtów pamięci Flash mikrokontrolera. Dzięki zintegrowaniu peryferii z mikrokontrolerem na jednej płytce, zastosowanie modułu może skrócić czas projektowania i ułatwić budowę systemów bazujących na mikrokontrolerach LPC236x, eliminując konieczność projektowania obwodu drukowanego. Do modułu dostarczone jest przykładowe oprogramowanie.
Moduł MMlpc236x może również znaleźć zastosowanie w pracowniach dydaktycznych uczelni informatycznych i elektronicznych, jak również posłużyć do budowy prac dyplomowych.
Cechy
Minimoduł MMlpc236x:
• Kompletny, gotowy do użycia system mikroprocesorowy
• Szybki mikrokontroler ARM LPC236x o wydajności do 72MIPS
• Do 512kB pamięci Flash i do 58kB pamięci RAM
• Wbudowany Ethernet PHY 10/100Mb wraz z transformatorem i gniazdem RJ45
• Szeregowa pamięć DataFlash o pojemności do 64Mbitów (8MBajtów)
• Układ Resetu
• Wbudowany systemowy generator kwarcowy 12MHz
• Wbudowany rezonator 32.768kHz dla zegara RTC
• Miejsce na baterię dla zegara RTC oraz pamięci RAM
• Wbudowany układ podciągający dla interfejsu USB
• Wbudowane diody LED sygnalizujące zasilanie, pracę pamięci DataFlash oraz stan połączenia Ethernetowego
• Napięcie zasilania modułu 3.3V
• 2 x 40 wyprowadzeń z rastrem 0.1" (2.54mm), pasujące do wszystkich druków prototypowych
• Małe wymiary:36mm x 56mm
• Dostępna płyta ewaluacyjna i przykładowe oprogramowanie
4
2 Budowa modułu
Schemat blokowy
Schemat blokowy minimodułu MMlpc236x przedstawiono na rysunku:
LPC236x
12MHz
J1 J2
PWR
FLASH
ACT
LINK
GND
Batt
32kHz
DataFlash
12345678
PHY
DP83848
pullup circuitUSB D+
EthernetRJ45
50MHz
Rysunek 1 Schemat blokowy minimodułu MMlpc213x.
Minimoduł można zamówić w różnych konfiguracjach według następującego selektora:
MMlpc236x – b – d – e – c
Rozmiar pamięci Flash: 4 – 128kB 6 – 256kB 8 – 512kB
Rozmiar pamięci DataFlash: 0 – brak pamięci DataFlash 1 – 16Mb (AT45DB161) 2 – 32Mb (AT45DB321) 3 – 64Mb (AT45DB642)
Złącze Ethernetowe: 0 – bez gniazda RJ45 1 – z gniazdem RJ45
Podstawka pod baterię: 0 – nie montowana 1 – montowana
Ethernet PHY: 0 – bez Ethernet PHY DP83848 1 – z Ethernet PHY DP83848
Np.: MMlpc2368-0-2-1-1 – minimoduł z mikrokontrolerem LPC2368 (512kB Flash), bez podstawki pod baterię, z pamięcią DataFlash o pojemności 32Mb, z Ethernet PHY i złączem RJ45.
5
Rozmieszczenie wyprowadzeń
Rysunek 2 Rozmieszczenie wyprowadzeń – widok z góry.
Nazwa
J1 Nazwa Nazwa
J2 Nazwa
GND 1 2 P0.2/TXD0 +3.3V 1 2 GND
P0.3/RXD0 3 4 RTCK P4.28/MAT2.0/TXD3 3 4 P4.29/MAT2.1/RXD3
TDO 5 6 TDI P0.5/I2SRX_WS/TD2/CAP2.1 5 6 P0.4/I2SRX_CLK/RD2/CAP2.0
TMS 7 8 TRST P0.7//I2STX_CLK/SCK1/MAT2.1 7 8 P0.6/I2SRX_SDA/SSEL1/MAT2.0
TCK 9 10 P0.26/AD0.3/AOUT/RXD3 P0.9/I2STX_SDA/MOSI1/MAT2.3 9 10 P0.8/I2STX_WS/MISO1/MAT2.2
P0.25/AD0.2/I2SRX_SDA/TXD3 11 12 P0.24/AD0.1/I2SRX_WS/CAP3.1 P2.1/PWM1.2/RXD1/PIPESTAT0 11 12 P2.0/PWM1.1/TXD1/TRACECLK
P0.23/AD0.0/I2SRX_CLK/CAP3.0 13 14 AVREF P2.3/PWM1.4/DCD1/PIPESTAT2 13 14 P2.2/PWM1.3/CTS1/PIPESTAT1
#RESET 15 16 #RST_OUT P2.5/PWM1.6/DTR1/TRACEPKT0 15 16 P2.4/PWM1.5/DSR1/TRACESYNC
P1.31/SCK1/AD0.5 17 18 VBAT P2.7/RD2/RTS1/TRACEPKT2 17 18 P2.6/PCAP1.0/RI1/TRACEPKT1
P0.28/SCL0 19 20 P1.30/VBUS/AD0.4 P2.9/USB_CONNECT/RXD2/EXTIN0 19 20 P2.8/TD2/TXD2/TRACEPKT3
P3.26/MAT0.1/PWM1.3 21 22 P0.27/SDA0 P0.15/TXD1/SCK0/SCK 21 22 P0.16/RXD1/SSEL0/SSEL
GND 23 24 P3.25/MAT0.0/PWM1.2 P0.18/DCD1/MOSI0/MOSI 23 24 P0.17/CTS1/MISO0/MISO
P0.29/USB_D+ 25 26 P0.30/USB_D- P0.20/DTR1/MCICMD/SCL1 25 26 P0.19/DSR1/MCICLK/SDA1
P1.18/DCD1/MOSI0/MOSI 27 28 P1.19/CAP1.1 P0.22/RTS1/MCIDAT0/TDI 27 28 P0.21/RI1/MCIPWR/RD1
P1.20/PWM1.2/SCK0 29 30 DF_SCK P2.11/RI1/MCIPWR/RD1 29 30 P2.10/#EINT0
P1.21/PWM1.3/SSEL0 31 32 DF_CS P2.13/EINT3/MCIDAT3/I2STX_SDA 31 32 P2.12/#EINT2/MCIDAT2/I2STX_WS
P1.23/PWM1.4/MISO0 33 34 DF_MISO P0.10/TXD2/SDA2/MAT3.0 33 34 P0.11/RXD2/SCL2/MAT3.1
P1.24/PWM1.5/MOSI0 35 36 DF_MOSI P0.0/RD1/TXD3/SDA1 35 36 P0.1/TD1/RXD3/SCL1
P1.22/MAT1.0 37 38 P1.25/MAT1.1 P1.28/USB_UP_LED/PWM1.1/CAP1.0 37 38 P1.29/PCAP1.1/MAT0.1
GND 39 40 P1.26/PWM1.6/CAP0.0 P1.27/CAP0.1 39 40 GND
Szczegółowy opis portów można znaleźć w dokumentacji mikrokontrolera LPC236x.
6
Mikrokontroler LPC236x
• 32-bitowy rdzeń ARM7TDMI pracujący z częstotliwością do 72MHz
• od 128 do 512kB programowanej w systemie pamięci programu typu FLASH
• 8 lub 32kB pamięci SRAM ogólnego przeznaczenia
• 16kB pamięci SRAM interfejsu Ethernet
• 8kB pamięci SRAM interfejsu USB
• 2kB pamięci SRAM podtrzymywanej bateryjnie
• Możliwość programowania w systemie poprzez interfejs RS232 lub JTAG
• Podwójna szyna AHB umożliwiająca jednoczesny transfer Ethernet DMA, USB DMA oraz pracę procesora
• Kontroler DMA ogólnego przeznaczenia, może zostać użyty z interfejsami SSP, I2S, SD/MMC oraz do transferów między pamięciami
• 4 timery z funkcjami input capture, output compare i z możliwością generowania PWM
• Układ PWM umożliwiający sterowanie silnikiem
• Ethernet MAC
• USB 2.0 device (full speed)
• 2-kanałowy kontroler CAN
• 4 interfejsy UART
• Three I2C-bus interfaces
• Interfejs SPI
• Interfejs I2S
• Dwa kontrolery SSP
• Interfejs SD/MMC
• 6-kanałowy, 10-bitowy przetwornik A/C
• 10-bitowy przetwornik C/A
• Do 70 linii I/O tolerujących 5-woltowe poziomy logiczne
• Zaawansowany kontroler przerwań z 32 wektorami
• Tryby obniżonego poboru mocy
• Zegar RTC z podtrzymaniem bateryjnym
• Pojedyncze napięcie zasilania 3.3V (wewnętrzny stabilizator 1.8V)
• Interfejs JTAG
Więcej informacji na temat mikrokontrolerów LPC236x można znaleźć na stronie producenta: http://www.standardics.nxp.com/products/lpc2000/lpc23xx/
Ethernet PHY Moduł został wyposażony w układ Ethernet PHY DP83848 oraz złącze RJ45 z transformatorem separującym. Cechy układu DP83848:
• 10/100 Mb/s
• Auto-MDIX
• IEEE 802.3u Auto-Negotiation and Parallel Detection
• IEEE 802.3u ENDEC, 10BASE-T transceivers and filters
• IEEE 802.3u PCS, 100BASE-TX transceivers and filters
• Niski pobór mocy, typowo < 270mW
• Tryby obniżonego poboru mocy
• Parametry znacznie lepsze od specyfikacji IEEE, dzięki czemu możliwa jest praca bez błędów transmisji do odległości 150m
7
+3V3
C2100nF
MII_AVDD
TX+TX-
C3100nF
+3V3
+3V3
LED_ACT
C10
100nF
C9
100nFC11
100nF
+3V3
RX+RX-
R15 2k2
R3
4.87k 1%GND
R149.9R
R249.9R
R6 2k2
GND
GND
GND
BLM18HG102SN1DL2
R14 2k2
R9 2k2
R7 240R
R12 240R
LINKD2LED GREEN
ACTD1LED YELLOW
TD-
TD+
RD+
RD-
1CT:1
1CT:1
12345678
1
3
2
5
4
6
8 SHIELD
Yellow Green
109
11
12
TCT
TD+
TD-
RD+
RD-
RCT
J3 JFM24011-0101T
R8
560R
R13
560R
C7100nF
C8100nF
+3V3
TX_CLK1
TX_EN2
TXD_03
TXD_14
TXD_25
TXD_3/SNI_MODE6
PWR_DOWN/INT7
TCK8
TDO9
TMS10
TRST#11
TDI12
RD-13
RD+14
AG
ND
15
TD-16
TD+17
PF
BIN
11
8
AG
ND
19
RESERVED20
RESERVED21
AV
DD
33
22
PF
BO
UT
23
RBIAS24
25MHz_OUT25
LED_ACT/COM/AN_EN26
LED_SPEED/AN127
LED_LINK/AN028
RESET_N29
MDIO30
MDC31
IOV
DD
33
32
X233
X134
IOG
ND
35
DG
ND
36
PF
BIN
23
7
RX_CLK38
RX_DV/MII_MODE39
CRS/CRS_DV/LED_CFG40
RX_ER/MDIX_EN41
COL/PHYAD042
RXD_0/PHYAD143
RXD_1/PHYAD244
RXD_2/PHYAD345
RXD_3/PHYAD446
IOG
ND
47
IOV
DD
33
48
U2 DP83848
+C6
10u/16V
GND GND GND
GND
R16 2k2
R449.9R
R549.9R
GND
P1.0/ENET_TXD0P1.1/ENET_TXD1
P1.4/ENET_TX_EN
P1.8/ENET_CRS
P1.9/ENET_RXD0P1.10/ENET_RXD1
P1.14/ENET_RX_ER
P1.15/ENET_REF_CLK
P1.16/ENET_MDCP1.17/ENET_MDIO
+3V3BLM18HG102SN1D
L1
+C1
10u/16V
MII_AVDD
GND
LED_LINK
+3V3#RESET
PWR_DOWN/INT
R1010k
+3V3
R112k2
+3V3
MII_AVDD
J4
J5
VCC4
GND2
OE1
OUT3
X1
CXO 50MHz
GND
+3V3+3V3
C4100nF
Rysunek 3 Implementacja interfejsu Ethernet w MMlpc236x.
Dokumentację układu DP83848 można znaleźć na stronie producenta: http://www.national.com
Moduł można zamówić również w wersji bez złącza RJ45, z zamontowanym w jego miejsce złączem typu goldpin.
8
Interfejs USB
Procesory z serii LPC236x posiadają wbudowany interfejs USB 2.0 full-speed (device). Moduł MMlpc236x zawiera dodatkowo układ podciągający linię D+, dzięki któremu host USB rozpoznaje podłączenie urządzenia do portu. Włączenie podciągania uzyskuje się poprzez podanie niskiego poziomu logicznego na końcówkę USB_CONNECT (P2.9) procesora. Alternatywnie, poprzez wylutowanie rezystora R20 oraz zamontowanie R19, podciąganie może zostać włączone na stałe. Dodatkową funkcją modułu USB w procesorze jest sygnalizacja pracy za pomocą diody LED podłączonej do wyprowadzenia USB_UP_LED (P1.18).
Układ podciągający, diodę LED oraz podłączenie modułu do złącza USB przedstawiono na rysunku poniżej.
R171k5
R18
10k
Q1BC 857
+3V3
P2.9/USB_CONNECT
R19 4k7GND
R20 4k7
P0.29/USB_D+
GND
P0.30/USB_D-
J1
272625
1
4
2
35
6
22R22R
22pF 22pF
100nF
GND GND
D-D+
Vusb
LPC236x
GND
not mounted
MMlpc236x module
USB UP
560R
23
P1.18/USB_UP_LED
+3V3
GND
Rysunek 4 Implementacja interfejsu USB.
Interfejs CAN
Procesory z serii LPC236x posiadają wbudowany dwa interfejsy CAN, zgodne ze specyfikacją CAN 2.0B. Aby podłączyć moduł do magistrali CAN potrzebny jest jeszcze układ nadajnika/odbiornika linii. Przykład implementacji takiego układu przedstawiono na rysunku poniżej.
GNDCA
N D1
GND2
VCC3
R4
Vref5
CANL6
CANH7
RS8
SN65HVD230
120R
GND
10K
GND
GND+3.3V
13
2
123
CAN
TERM.
SLOPEHIGH
J2
3635
40
MMlpc236x module
LPC236x
P0.0/RD1P0.1/TD1
P0.4/RD2P0.5/TD2
GNDGND
CAN HCAN L
56
CAN1
CAN2
Rysunek 5 Podłączenie modułu MMlpc236x do magistrali CAN
9
Interfejsy RS232
Procesory z serii LPC236x posiadają cztery interfejsy RS232, które mogą być wykorzystane do połączenia minimodułu z komputerem PC lub innymi urządzeniami wyposażonymi w port RS-232. W celu wykonania takiego połączenia należy do linii TxD i RxD dołączyć konwerter poziomów oparty na układzie ST2232 lub podobnym. Jeden z portów (UART1) posiada wszystkie linie modemowe, pozostałe jedynie RXD i TXD. Na rysunkach poniżej pokazano przykład użycia portów UART0 oraz UART1.
V+2
C1+1
C1-3
C2+4
C2-5
V-6
T1 IN11
T2 IN10
R1 OUT12
R2 OUT9
T1 OUT14
T2 OUT7
R1 IN13
R2 IN8
VC
C1
6G
ND
15 ST32321
62738495
DB9F
GNDGND
GND
GND
GND
+3V3
+5V
RS
-232
100n
100n
100n
100n
J2
23
24
MMlpc236x module
LPC236x
P0.0/TXD3
2122
P0.1RXD3
P0.2/TXD0P0.3/RXD0
P0.10/TXD2P0.11/RXD2
P0.15/TXD1P0.16/RXD1P0.17/CTS1P0.18/DCD1P0.19/DSR1P0.20/DTR1P0.21/RI1P0.22/RTS1
UART0
UART1
UART2
UART3
J1
2326252827
33343536
Rysunek 6 Przykład użycia portu UART0 jako DCE.
RS
-232
J2
23
24
MMlpc236x module
LPC236x
P0.0/TXD3
2122
P0.1RXD3
P0.2/TXD0P0.3/RXD0
P0.10/TXD2P0.11/RXD2
P0.15/TXD1P0.16/RXD1P0.17/CTS1P0.18/DCD1P0.19/DSR1P0.20/DTR1P0.21/RI1
P0.22/RTS1
UART0
UART1
UART2
UART3
J1
23262528
27
33343536
100K
100k
5
4
3
2
1
9
8
7
6
10
11
DB9M
J20
100K
100k
100K 100k
C1+
V+
VCC
C1-
C2+
C2-V-
T
T
GND
T
T1OUT
T2OUT
T3OUT
T1IN
T2IN
T3IN
R
R
R
R
R
R
R
R1IN
R2IN
R3IN
R4IN
R5IN
R1OUT
R2OUT
R3OUT
R4OUT
R5OUT
ENSHDN
2826
241
2
25
14
13
12
21
11
10
9
27
3
15
16
17
18
19
20
4
5
6
7
8
22 23
MAX3241E
CTS
RTS
RXD
TXD
DTR
RI
DCD
DSR
100n
100n
100n
100n
100n
GND
GNDGND
+3V3
+3V3
+3V3
GND
RTS
TXD
DTR
DCD
DSR
RXD
CTS
RI
Rysunek 7 Przykład użycia portu UART1 jako DTE.
10
Pamięć DataFlash
Minimoduł może zostać wyposażony w pamięć DataFlash o pojemności 16Mb, 32Mb lub 64Mb.
Pamięć nie jest podłączona bezpośrednio do procesora, lecz jej sygnały zostały doprowadzone do złącza J1. Dzięki temu zyskano elastyczność jej konfiguracji. Na sąsiednie piny złącza J1 doprowadzono odpowiednie sygnały magistrali SIP0 procesora, więc połączenie procesora z pamięcią jest bardzo proste. Alternatywnie, np. w przypadku gdy SPI0 (lub piny P1.20, P1.21, P1.23, P1.24) są wykorzystywane do innych celów, sygnały pamięci mogą zostać podłączone do dowolnych wyprowadzeń modułu.
GND
DataFlash
C28
100nF
GND
VCC6
GND7
SI13
SO14
SCK12
CS11
RDY/BSY1
RESET2
WP3
U3R2510K
+3V3
+3V3DF_MOSIDF_MISODF_SCKDF_CS
Rysunek 8 Pamięć DataFlash.
uC J1 DataFlash P1.20/SCK0 29 30 DF_SCK
P1.21/SSEL0 31 32 DF_CS
P1.23/MISO0 33 34 DF_MISO
P1.24/MOSI0 35 36 DF_MOSI
Tabela 1 Rozmieszczenie sygnałów SPI0 oraz pamięci DataFlash na złączu J1.
Rysunek 4 Połączenie pamięci DataFlash bezpośrednio do magistrali SPI0 procesora
Szczegółowy opis pamięci DataFlash znajduję się na stronie firmy Atmel: www.atmel.com.
11
Złącze JTAG
JTAG jest czteroprzewodowym interfejsem umożliwiającym przejęcie kontroli nad rdzeniem procesora. Możliwości oferowane przez ten interfejs to m.in.: praca krokowa, praca z pełną szybkością, pułapki sprzętowe oraz programowe, podgląd oraz modyfikacja zawartości rejestrów i pamięci. Sposób podłączenia złącza JTAG do minimodułu przedstawiono na rysunku:
12345678910
11121314151617181920
Header 10X2
VTrefnTRSTTDITMSTCKRTCKTDOnSRSTDBGRQDBGACK
VsupplyGNDGNDGNDGNDGNDGNDGNDGNDGND
GND
+3.3V
JTAG EN
10k
GND
10k
GND
10k10k10k10k
10k
10k
GND
GND
+3.3V
+3.3V
1 23 45 67 89 1011 1213 1415 1617 1819 2021 2223 2425 2627 2829 3031 3233 3435 3637 3839 40
J1
Header 20X2
TRSTTCKTMS
TDITDORTCK
GND
GND
#RESET
JTAG
Rysunek 9 Połączenie modułu MMlpc213x ze złączem JTAG.
Aby uaktywnić interfejs JTAG należy podczas resetu procesora wymusić niski poziom logiczny na końcówce RTCK. Może do tego celu służyć zworka (na rysunku JTAG EN).
Rysunek 10 Złącze JTAG.
OPIS WYPROWADZEŃ TCK JTAG – sygnał zegarowy
TDI JTAG – sygnał danych z układu docel.
TDO JTAG – sygnał danych do układu docel.
TMS JTAG – sygnał przełączający
TRST Reset interfejsu JTAG
SRST Sygnał RESET układu docelowego
VCC Zasilanie emulatora
Vref Wskaźnik zasilania układu docelowego
GND Masa
Programator/emulator JTAG można znaleźć na stronie:
- ARMCable I: http://www.propox.com/products/t_122.html
12
Zasilanie modułu
Moduł MMlpc236x wymaga zasilania stabilizowanym źródłem napięcia 3.3V o wydajności prądowej co najmniej 300mA. Pobór prądu zależny jest od wielu czynników: częstotliwości pracy mikrokontrolera, używanych peryferiów, aktywności kontrolera ethernetowego, pamięci DataFlash itp. Istniej możliwość znacznego obniżenia poboru mocy dzięki trybom uśpienia procesora i PHY.
Zasilanie należy doprowadzić do końcówek 1 (+3.3V) i 2 (GND) złącza J2. Końcówki J1-1, J1-23, J1-39 i J2-40 również powinny zostać podłączone do masy (ale nie jest to obowiązkowe). Poniżej przedstawiono przykład zasilacza modułu:
MMlpc236x module
+
10u/10V
GND
+3.3V
+
10u/10V
GNDGND
VIN1
GN
D2
VOUT3
TA
B4
SPX2920M3-3.3
GND
4 - 20V
1 23 45 67 89 1011 1213 1415 1617 1819 2021 2223 2425 2627 2829 3031 3233 3435 3637 3839 40
J1
Header 20X2
1 23 45 67 89 1011 1213 1415 1617 1819 2021 2223 2425 2627 2829 3031 3233 3435 3637 3839 40
J2
Header 20X2
+3V3 GND
GND GND
GND
GND
Rysunek 11 Przykład zasilania modułu MMclp236x.
3 Płyta ewaluacyjna
Aby ułatwić projektowanie urządzeń wykorzystujących minimoduł, przygotowana została płyta ewaluacyjna EVBmmTm. W jej skład wchodzą elementy:
• Gniazda pod szeroką gamę mikrokontrolerów i minimodułów
• Złącze programujące JTAG dla OCD (On-Chip Debugging)
• Stabilizatory (napięcia 5V i 3,3V)
• Możliwość zasilania przez port USB
• Włącznik zasilania
• 8 przycisków i 8 diod LED do ogólnego zastosowania
• Sygnalizator dźwiękowy (buzzer)
• 2 potencjometry
• Port podczerwieni IRDA
• Interfejs USB
• Dwa porty RS232 wraz z diodami LED sygnalizującymi pracę
• Kodek Audio
• Interfejs CAN
• Złącze 1-Wire
• Gniazdo karty SD/MMC
• Wyświetlacz alfanumeryczny LCD 2x16 znaków
• Wyświetlacz graficzny 128x64 pix (opcjonalnie)
Więcej informacji na stronie: http://www.propox.com/products/t_183.html
13
4 Programowanie procesora LPC236x
Pamięć Flash mikrokontrolera LPC236x można programować na dwa sposoby: za pośrednictwem interfejsu JTAG lub RS232.
Programowanie za pomocą interfejsu JTAG
Do programowanie poprzez port JTAG potrzebny jest programator/debugger JTAG podłączany do komputera PC. Przykładem takiego programatora jest ARMcable I: http://www.propox.com/products/t_122.html Programator należy podłączyć do procesora tak jak to opisano w dziale Złącze JTAG. Oprogramowanie które umożliwia programowanie procesorów LPC236x za pośrednictwem ARMcable I (Wiggler) to np.: darmowy OpenOCD lub komercyjny Rowley CrossWorks.
Aby zaprogramować procesor przykładowym programem w środowisku Rowley CrossWorks należy wykonać kolejno:
• Podłączyć moduł MMlpc236x poprzez ARMcable I do komputera PC
• Uruchomić środowisko CrossWorks for ARM
• Z zakładki Tools wybierać "Download Packages From Web"
• Otworzy sie strona WWW z której należy pobrać pliki NXP_LPC2000.hzq oraz Keil_MCB2300.hzq. Pliki te można znaleźć po rozwinięciu listy: "CPU Support Packages -> NXP -> LPC2000” oraz „Board Support Packages -> Sorted by Board manufacturer -> Keil -> MCB2300"
• W programie Crossworks należy zainstalować oba pliki wybierając Tools -> Install Package
• Otwieramy przykładowy projekt klikajac na File -> Open Solution oraz wybierając C:\Program Files\Rowley Associates Limited\CrossWorks for ARM 1.7\samples\Keil_MCB2300\ Keil_MCB2300.hzs
• W okienku Project Explorer pokaże się drzewo programów jakie wchodzą w skład Keil_MCB2300.hzs
• Dwukrotnym kliknięciem na nazwie projektu „led" ustawiamy go jako aktywny. Aktywny projekt zaznaczony jest wytłuszczoną czcionką
• W menu Target należy kliknąć na „Connect Macraigor Wiggler (20pin)” co spowoduje połączenie się z procesorem za pośrednictwem ARMcable I.
• Z menu Build -> Set Active Build Configuration należy wybrać “ARM Flash Debug”
• Z menu Build należy wybrac „Build and Run” co spowoduje skompilowanie projektu, załadowanie programu do pamięci Flash i uruchomienie go.
Po wykonaniu tych czynności diody LED podłączone do końcówek P2.0 – P2.7 powinny zacząć pulsować.
Programowanie poprzez interfejs RS232
Aby zaprogramować procesor poprzez port RS232 należy podłączyć go do komputera PC oraz uruchomić program Flash Magic, który można znaleźć na stronie: http://www.flashmagictool.com/
Oprócz linii TXD i RXD do procesora należy doprowadzić sygnały RESET oraz ISP_EN, uzyskane przez prosty układ dopasowujący poziomy:
14
13
10
11
8
12
9
14
7
C1+1
C2+4
GND15
C1-3
VCC16
C2-5
V-6
V+2
MAX3232CSE
RX0
TX0
GNDGND
162738495
DB9F
33k
Q3BC 847
LL4148
10k
GND GND
+3.3V
33kBC 847
LL4148
10k
GND GND
+3.3V
+3.3V
GND
GND
GND
RS
-232
P0.3/RXD0
P0.2/TXD0
P2.10 #RESET
100n
100n
100n
100n
100n
GND
ISP RSTISP EN
Rysunek 12 Układ pozwalający zaprogramować moduł MMlpc236x poprzez interfejs RS232.
Po uruchomieniu programu Flash Magic należy wybrać numer portu COM, typ procesora, plik do zaprogramowania a następnie wcisnąć przycisk Start. Pamięć Flash zostanie zaprogramowana a załadowany program uruchomiony.
Rysunek 13 Program Flash Magic.
15
5 Parametry techniczne
Mikrokontroler LPC236x
Pamięć programu do 512kB
Pamięć danych do 58kB
Pamięć DataFlash do 8MB
Ilość wejść/wyjść cyfrowych do 60
Ilość wejść analogowych do 6
Ilość wyjść analogowych 1
Ethernet 10/100 Mb/s Auto-MDIX, wbudowane złącze RJ45
Zasilanie 3.3V
Maksymalny pobór prądu 300mA
Wymiary 36x56mm
Waga ok. 100g
Zakres temperatur pracy -40 – 85ºC
Wilgotność 5 – 95%
Złącza Dwa złącza szpilkowe 2x40 wyprowadzenia
6 Pomoc techniczna
W celu uzyskania pomocy technicznej prosimy o kontakt [email protected] . W pytaniu prosimy o umieszczenie następujących informacji:
• Numer wersji modułu (np. REV 1)
• Ustawienia rezystorów
• Szczegółowy opis problemu
7 Gwarancja
Minimoduł MMlpc236x objęty jest sześciomiesięczna gwarancją. Wszystkie wady i uszkodzenia nie spowodowanie przez użytkownika zostaną usunięte na koszt producenta. Koszt transportu ponoszony jest przez kupującego.
Producent nie ponosi żadnej odpowiedzialności za zniszczenia i uszkodzenia powstałe w wyniku użytkowania modułu MMlpc236x.
16
8 Rozmieszczenie elementów
Rysunek 14 Rozmieszczenie elementów na górnej warstwie.
Rysunek 15 Rozmieszczenie elementów na dolnej warstwie.
17
9 Wymiary
Rysunek 16 Wymiary - widok z góry.
Rysunek 17 Wymiary – widok z boku.
10 Schemat
18
Battery Socket
C14100nF
C15100nF
C16100nF
C17100nF
C18100nF
C19100nF
C20100nF
C2422pF
C2322pF
R22
10K+3V3
#RESET
C2522pF
C2622pF
TRST
TCKTMS
TDITDO
RTCK
#RST_OUT
C22100nF
GND
GND
GND
GND
GND
GND
GND
+3V3
+3V3
X212.000MHz
X332.768 kHz
BLM18HG102SN1D
L3
Sheet 1 of 3
http://www.propox.comemail: [email protected]
Size: File: Rev:
Date: 17-03-2008
Title: MMlpc236x
1
+3V3
C21100nF
GNDGND
PWR
D4LED GREEN
DF
D3LED RED
BT13V CR2032
R21 0R NM AVREF
C27100nF
GND
R24560R
R23560R
GND
+3V3+3V3
R17
1k5R1810k
Q1BC 857
+3V3
P2.9
R1
94k
7 N
M
GND
R2
04k
7
Vbat
P0[0]/RD1/TXD3/SDA146
P0[1]/TD1/RXD3/SCL147
P0[2]/TXD098
P0[3]/RXD099
P0[4]/I2SRX_CLK/RD2/CAP2[0]81
P0[5]/I2SRX_WS/TD2/CAP2[1]80
P0[6]/I2SRX_SDA/SSEL1/MAT2[0]79
P0[7]/I2STX_CLK/SCK1/MAT2[1]78
P0[8]/I2STX_WS/MISO1/MAT2[2]77
P0[9]/I2STX_SDA/MOSI1/MAT2[3]76
P0[10]/TXD2/SDA2/MAT3[0]48
P0[11]/RXD2/SCL2/MAT3[1]49
P0[15]/TXD1/SCK0/SCK62
P0[16]/RXD1/SSEL0/SSEL63
P0[17]/CTS1/MISO0/MISO61
P0[18]/DCD1/MOSI0/MOSI60
P0[19]/DSR1/MCICLK/SDA159
P0[20]/DTR1/MCICMD/SCL158
P0[21]/RI1/MCIPWR/RD157
P0[22]/RTS1/MCIDAT0/TD156
P0[23]/AD0[0]/I2SRX_CLK/CAP3[0]9
P0[24]/AD0[1]/I2SRX_WS/CAP3[1]8
P0[25]/AD0[2]/I2SRX_SDA/TXD37
P0[26]/AD0[3]/AOUT/RXD36
P0[27]/SDA025
P0[28]/SCL024
P0[29]/USB_D+29
P0[30]/USB_D-30
P1[0]/ENET_TXD095
P1[1]/ENET_TXD194
P1[4]/ENET_TX_EN93
P1[8]/ENET_CRS92
P1[9]/ENET_RXD091
P1[10]/ENET_RXD190
P1[14]/ENET_RX_ER89
P1[15]/ENET_REF_CLK88
P1[16]/ENET_MDC87
P1[17]/ENET_MDIO86
P1[18]/USB_UP_LED/PWM1[1]/CAP1[0]32
P1[19]/CAP1[1]33
P1[20]/PWM1[2]/SCK034
P1[21]/PWM1[3]/SSEL035
P1[22]/MAT1[0]36
P1[23]/PWM1[4]/MISO037
P1[24]/PWM1[5]/MOSI038
P1[25]/MAT1[1]39
P1[26]/PWM1[6]/CAP0[0]40
P1[27]/CAP0[1]43
P1[28]/PCAP1[0]/MAT0[0]44
P1[29]/PCAP1[1]/MAT0[1]45
P1[30]/VBUS/AD0[4]21
P1[31]/SCK1/AD0[5]20
P2[0]/PWM1[1]/TXD1/TRACECLK75
P2[1]/PWM1[2]/RXD1/PIPESTAT074
P2[2]/PWM1[3]/CTS1/PIPESTAT173
P2[3]/PWM1[4]/DCD1/PIPESTAT270
P2[4]/PWM1[5]/DSR1/TRACESYNC69
P2[5]/PWM1[6]/DTR1/TRACEPKT068
P2[6]/PCAP1[0]/RI1/TRACEPKT167
P2[7]/RD2/RTS1/TRACEPKT266
P2[8]/TD2/TXD2/TRACEPKT365
P2[9]/USB_CONNECT/RXD2/EXTIN064
P2[10]/EINT053
P2[11]/EINT1/MCIDAT1/I2STX_CLK52
P2[12]/EINT2/MCIDAT2/I2STX_WS51
P2[13]/EINT3/MCIDAT3/I2STX_SDA50
P3[25]/MAT0[0]/PWM1[2]27
P3[26]/MAT0[1]/PWM1[3]26
P4[28]/MAT2[0]/TXD382
P4[29]/MAT2[1]/RXD385
U1A
LPC2368FBD100
TDI2
TDO1
TCK5
TMS3
TRST4
RTCK100
U1B
LPC2368FBD100
RSTOUT14
RESET17
XTAL122
XTAL223
RTCX116
RTCX218
U1C
LPC2368FBD100
VSS15
VSS31
VSS41
VSS55
VSS72
VSS97
VSS83
VSSA11
VDD(3V3)28
VDD(3V3)54
VDD(3V3)71
VDD(3V3)96
VDD(DCDC)(3V3)13
VDD(DCDC)(3V3)42
VDD(DCDC)(3V3)84
VDDA10
VREF12
VBAT19
U1D
LPC2368FBD100
+3V3
P0.0P0.1P0.2P0.3P0.4P0.5P0.6P0.7P0.8P0.9P0.10P0.11P0.15P0.16P0.17P0.18P0.19P0.20P0.21P0.22P0.23P0.24P0.25P0.26P0.27P0.28
P0.29/USB_D+P0.30/USB_D-
P1.0/ENET_TXD0P1.1/ENET_TXD1P1.4/ENET_TX_ENP1.8/ENET_CRSP1.9/ENET_RXD0P1.10/ENET_RXD1P1.14/ENET_RX_ERP1.15/ENET_REF_CLKP1.16/ENET_MDCP1.17/ENET_MDIO
P1.18P1.19P1.20P1.21P1.22P1.23P1.24P1.25P1.26P1.27P1.28P1.29P1.30P1.31
P2.0P2.1P2.2P2.3P2.4P2.5P2.6P2.7P2.8P2.9P2.10P2.11P2.12P2.13
P3.25P3.26
P4.28P4.29
GND
DataFlash
C28
100nF
GND
VCC6
GND7
SI13
SO14
SCK12
CS11
RDY/BSY1
RESET2
WP3
U3
AT45DB321D
R2510K
+3V3
+3V3
P0.29/USB_D+
DF_MOSIDF_MISODF_SCKDF_CS
+C12
10u/16V
+C13
10u/16V
GND
+3V3
DF
_C
S
19
+3V3
C2100nF
MII_AVDD
TX+TX-
C3100nF
+3V3
+3V3
LED_ACT
C10
100nF
C9
100nFC11
100nF
+3V3
RX+RX-
R15 2k2
R3
4.87k 1%GND
R149.9R
R249.9R
R6 2k2
GND
GND
GND
BLM18HG102SN1DL2
Sheet 2 of 3
http://www.propox.comemail: [email protected]
Size: File: Rev:
Date: 17-03-2008
Title: MMlpc236x
1
R14 2k2
R9 2k2
R7 240R
R12 240R
LINKD2LED GREEN
ACTD1LED YELLOW
TD-
TD+
RD+
RD-
1CT:1
1CT:1
12345678
1
3
2
5
4
6
8 SHIELD
Yellow Green
109
11
12
TCT
TD+
TD-
RD+
RD-
RCT
J3 JFM24011-0101T
R8
560R
R13
560R
C7100nF
C8100nF
+3V3
TX_CLK1
TX_EN2
TXD_03
TXD_14
TXD_25
TXD_3/SNI_MODE6
PWR_DOWN/INT7
TCK8
TDO9
TMS10
TRST#11
TDI12
RD-13
RD+14
AG
ND
15
TD-16
TD+17
PF
BIN
11
8
AG
ND
19
RESERVED20
RESERVED21
AV
DD
33
22
PF
BO
UT
23
RBIAS24
25MHz_OUT25
LED_ACT/COM/AN_EN26
LED_SPEED/AN127
LED_LINK/AN028
RESET_N29
MDIO30
MDC31
IOV
DD
33
32
X233
X134
IOG
ND
35
DG
ND
36
PF
BIN
23
7
RX_CLK38
RX_DV/MII_MODE39
CRS/CRS_DV/LED_CFG40
RX_ER/MDIX_EN41
COL/PHYAD042
RXD_0/PHYAD143
RXD_1/PHYAD244
RXD_2/PHYAD345
RXD_3/PHYAD446
IOG
ND
47
IOV
DD
33
48
U2 DP83848
+C6
10u/16V
GND GND GND
GND
R16 2k2
R449.9R
R549.9R
GND
P1.0/ENET_TXD0P1.1/ENET_TXD1
P1.4/ENET_TX_EN
P1.8/ENET_CRS
P1.9/ENET_RXD0P1.10/ENET_RXD1
P1.14/ENET_RX_ER
P1.15/ENET_REF_CLK
P1.16/ENET_MDCP1.17/ENET_MDIO
+3V3BLM18HG102SN1D
L1
+C1
10u/16V
MII_AVDD
GND
LED_LINK
+3V3#RESET
PWR_DOWN/INT
R1010k
+3V3
R112k2
+3V3
MII_AVDD
J4
J5
VCC4
GND2
OE1
OUT3
X1
CXO 50MHz
GND
+3V3+3V3
C4100nF
20
Sheet 3 of 3
http://www.propox.comemail: [email protected]
Size: File: Rev:
Date: 17-03-2008
Title: MMlpc236x
1
1 23 45 67 89 1011 1213 1415 1617 1819 2021 2223 2425 2627 2829 3031 3233 3435 3637 3839 40
J1
Header 20X2
1 23 45 67 89 1011 1213 1415 1617 1819 2021 2223 2425 2627 2829 3031 3233 3435 3637 3839 40
J2
Header 20X2
+3V3 GND
P2.0P2.1P2.2P2.3P2.4P2.5P2.6P2.7P2.8P2.9
P2.10P2.11P2.12P2.13
P3.25P3.26
P4.28 P4.29
P0.0 P0.1
P0.2P0.3
P0.4P0.5P0.6P0.7P0.8P0.9
P0.10 P0.11
P0.15 P0.16P0.17P0.18P0.19P0.20P0.21P0.22
P0.23P0.24P0.25P0.26
P0.27P0.28
P0.29/USB_D+ P0.30/USB_D-P1.18 P1.19P1.20P1.21
P1.22
P1.23P1.24
P1.25P1.26 P1.27
P1.28 P1.29
P1.30P1.31
TRSTTCKTMS
TDITDORTCK
AVREF
Vbat
GND GND
GND
GND
DF_MOSIDF_MISO
DF_SCKDF_CS
#RESET #RST_OUT