Instrukcja użytkownika

Transkrypt

Instrukcja użytkownika
MMmega0X
Minimoduły dla ATmega 103/128
Instrukcja
użytkownika
REV 1.1
u rd ST, ta- rve
l
a a ,
S e
Ev Bo VR ers b S d
l
n
io 1, A trol We mo
t
i
a ‘5
in ron ed
r
c
fo cro dd s M the
e
s
d e
i
m mb oar rs, peC E B
S
PI its ng rolle gh r
K pi nt Hi fo
r
y
o
rte tot roc FID ers s
o c
r
Pr mi s, R mm lle
rs or ler gra tro
f ol
n
o
s
pr oco CB
e ntr
l
u o
m icr s, P for
c
e
t
t
m
s
s
ne Sy T stem ard
In , S sy Bo trol
C
ed PI or ion on b
s
,
c e
R ce luat cro W
V
o
A pr va mi ed idd
ro E
ic ng PIC be ds m
M ni T, m
r
,
ig , S s E oa ers
s
B
t
de VR Ki ng troll
h
i
r
, A rte typ on Hig
1
c
‘5 Sta oto ro ID r
e
ic F
rs P
le rs or m s, R mm ve s f ller gra ntrl
r
Se ule tro pro oco
od con ms icr s,
m
ni net ste T m stem
y S y
r
ohe In S C, r s B
t
e d
PI eso tion ice
,
e R oc ua m
Sp AV opr val IC e
r r
fo ic g E T, P mb
E
rs s M nin , S
s ing
r ig
t
R
i
e
l
ol des , AV er K typ
B `51 tart roto roS s P mic ,
PC for
s
s ller er for lers
d
ar tro erw les trol on b S du con ram
c
ro We imo et rog o
n
p
n
ed Mi her m roc
d
d ds et ste ic
ar rs, Sy T m r
o
B olle In , S so
tr ed IC oce ign
P
s
co Spe R, opr De
V cr B Rion
h
t
ig r A Mi
PC lua
H f o rs
,
s oneasolution
e Many ideas
s
er troll em Ev ds
m n
st ng oar
y
o
c
S ni B
Wstęp
MMmega01 i MMmega02 są uniwersalnymi
minimodułami dla mikrokontrolera ATmega 103/128 firmy Atmel. Mikrokontroler ten jest dostępny w
obudowie TQFP64, która ze względu na zagęszczony układ wyprowadzeń
utrudnia stosowanie go w układach prototypowych i amatorskich. My
podjeliśmy próbę umieszczenia go na płytce o wymiarach 39x42 mm z
układem wyprowadzeń pasującym do ogólnie dostępnych druków
prototypowych. Dodatkowo dodaliśmy zegar czasu rzeczywistego z
podtrzymaniem bateryjnym, pamięć szeregową DataFlash o pojemności do
4Mb, układ monitorujący napięcie zasilania oraz złącze ISP (In-System
Programming). Wszystkie porty i sygnały mikrokontrolera 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 Atmega103/128.
Wystarczy podłączyć napięcie zasilania, złącze ISP i możemy zacząć
ładować 128 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 ATmega, eliminując konieczność projektowania obwodu
drukowanego . Do modułu dostarczone jest oprogramowanie do komunikacji
z wbudowanymi peryferiami.
Cechy modułów
•
•
•
•
•
•
•
•
•
Mikrokontroler ATmega103/128 (L) (1)
Zegar czasu rzeczywistego z magistralą I2C lub SPI + podstawka pod baterię
litową (1)
Szeregowa pamięć DataFlash z magistralą SPI o pojemności do 4Mb (1)
Złącze do programowania w systemie SPI z multiplekserem magistrali
Układ resetu i kontroli napięcia zasilania DS1811 lub DS1817) (1)
Wszystkie porty i sygnały mikrokontrolera wyprowadzone po obu stronach płytki
przy pomocy złącz szpilkowych o rastrze 0,1’’
Dodatkowy kwarc 32.768 kHz dla wewnętrznego Timera/Licznika mikrokontrolera(1)
Małe wymiary
Przykładowe oprogramowanie w postaci funkcji języka C
Uwagi:
1:
W zależności o wersji minimodułu
Dostępne wersje
Układ dostępny jest w trzech podstawowych wersjach:
• MMmega00 - ATmega128, 8MHz, kwarc 32.768kHz
• MMmega01 - ATmega128, 8Mhz, DataFlash 1Mb, RTC I2C PCF8583, podstawka
pod baterię litową, kwarc 32.768kHz, zasilanie 5V DC
• MMmega02 - ATmega128, 8Mhz, DataFlash 1Mb, RTC SPI DS1305, podstawka
pod baterię litową, kwarc 32.768kHz, zasilanie 5V DC
2
Możliwa jest również własna konfiguracja według następującego selektora:
MMmega0r – b – f – x – v
0 - bez układu RTC
1 - RTC I2C PCF 8583
2 - RTC SPI DS1305
0 - bez pamięci DataFlash
1 - 1Mb DataFlash
2 - 2Mb DataFlash
4 - 4Mb DataFlash
8 - 8Mb DataFlash
0 - bez podstawki pod baterie
1 - podstawka pod baterie CR2023
5 - wersja 5V
3.3 - wersja 3.3V
3.6864
4
6
8
11,059
16
- Kwarc 3.6864 Mhz
- Kwarc 4 Mhz
- Kwarc 6 Mhz
- Kwarc 8 Mhz
- Kwarc 11,059 Mhz
- Kwarc 16 Mhz
Opis wyprowadzeń
A1
A2
A3
A4
A5
A6
A7
A8
A9
A10
A11
A12
A13
A14
A15
A16
A17
A18
A19
A20
A21
A22
A23
A24
A25
A26
A27
A28
A29
A30
A31
A32
PE0 (RxD)
PE1 (TxD)
PE2 (AC+)
PE3 (AC-)
PE4 (INT4)
PE5 (INT5)
PE6 (INT6)
PE7 (INT7)
PB0 (SS)
PB1 (SCK)
PB2 (MOSI)
PB3 (MISO)
PB4 (OC0)
PB5 (OC1A)
PB6 (OC1B)
PB7 (OC2)
PD0 (INT0)
PD1 (INT1)
PD2 (INT3)
PD3 (INT4)
PD4 (IC1)
PD5
PD6 (T1)
PD7 (T2)
XTAL-Out
RST
/RD
/WR
PG3
PG4
GND
VCC
Widok z góry
MMmega00
MMmega01
MMmega02
B1
B2
B3
B4
B5
B6
B7
B8
B9
B10
B11
B12
B13
B14
B15
B16
B17
B18
B19
B20
B21
B22
B23
B24
B25
B26
B27
B28
B29
B30
B31
B32
/PEN
VBAT
AVCC
AGND
AREF
PF0 (ADC0)
PF1 (ADC1)
PF2 (ADC2)
PF3 (ADC3)
PF4 (ADC4)
PF5 (ADC5)
PF6 (ADC6)
PF7 (ADC7)
PA0 (AD0)
PA1 (AD1)
PA2 (AD2)
PA3 (AD3)
PA4 (AD4)
PA5 (AD5)
PA6 (AD6)
PA7 (AD&)
ALE
PC7 (A15)
PC6 (A14)
PC5 (A13)
PC4 (A12)
PC3 (A11)
PC2 (A10)
PC1 (A9)
PC0 (A8)
ISP Header
MOSI
LED
RST
SCK
MISO
VCC
GND
GND
GND
GND
MMmega01 MMmega02
INT0
ERTC
EFLASH
3
Zasilanie minimodułów
Moduł powinien być zasilany napięciem 5V DC, wyprowadzenia (VCC i GND). W module
wydzielono napięcie zasilania przetwornika ADC wyprowadzenie (AVCC) i masę części
analogowej wyprowadzenie (AGND). Napięcie referencyjne przetwornika ADC wyprowadzono na nóżkę (AREF). W wypadku używania wewnętrznej baterii jej napięcie
wyprowadzono na nóżkę (VBAT), natomiast gdy używane jest zewnętrzne źródło, jego
napięcie powinno być również podane na nóżkę (VBAT)
! Nie wolno jednocześnie używać wewnętrznego i zewnętrznego źródła napięcia
podtrzymania !
Pobór prądu przez moduł przy częstotliwości taktowania mikrokontrolera 6Mhz wynosi
około 30mA. Dostępne są również wersje minimodułów na napięcie 3.3V dla mikrokontrolerów ATmega103L/128L.
Reset
Układ nadzoru napięcia zasilania DS1811/1817 uaktywnia sygnał /RESET mikrokontrolera
jeżeli napięcie zasilania spadnie poniżej 4.6V. Linia /RESET może być również przełączana
z zewnątrz udostępniając tym samym możliwość zresetowania mikrokontrolera przez
zewnętrzne elementy. Zewnętrzna aktywacja sygnału /RESET następuje po podaniu
poziomu niskiego na linie /RESET wyprowadzenie (RST).
Zegar czasu rzeczywistego
Układ posiada wbudowany układ RTC (Real Time Clock) z podtrzymywaniem bateryjnym.
W wersji MMmega01 wbudowano układ z magistralą I2C PCF8583, natomiast w wersji
MMmega02 z magistralą SPI DS1305. Napięcie podtrzymania pobierane jest z bateryjki
litowej (CR2023) umieszczonej w podstawce lub zewnętrznego źródła poprzez
wyprowadzenie (VBAT).
W wersji z zegarem PCF8583 linie SDA i SCL podłączone są bezpośrednio do
wyprowadzeń (PD0 i PD1) mikrokontrolera. Wyjście przerwania INT układu zegarowego
zostało wyprowadzone na zewnątrz minimodułu poprzez nóżkę (INT0), pozwala to na jego
połączenie z dowolnym wyprowadzeniem mikrokontrolera. Może ono być również
podłączone wewnątrz minimodułu do portu PE4 mikrokontrolera poprzez zwarcie zworki J3.
W wersji z zegarem DS1305 linie SDI, SDO, SCLK magistrali SPI połączono poprzez
układ multipleksera HC4053 z odpowiadającymi im sygnałami mikrokontrolera, pozwala to
na odłączenie układu od magistrali w chwili programowania pamięci flash mikrokontrolera.
Linia CE (Chip Enable) zegara została wyprowadzona na zewnątrz minimodułu poprzez
nóżkę (ERTC), co pozwala na jej dowolne połączenie z wyprowadzeniami mikrokontrolera,
możliwe jest również połączenie jej z portem PB5 mikrokontrolera poprzez zwarcie zworki
J3. Połączenie linii INT układu zegarowego jest identyczne jak w wersji z zegarem
PCF8583.
Pamięć szeregowa DataFlash
Minimoduł posiada wbudowaną pamięć DataFlash o pojemności do 4Mb, w zależności od
wersji minimodułu. Pamięć komunikuje się z mikrokontrolerem przy pomocy szybkiej
magistrali SPI. Magistrala SPI pamięci została połączona poprzez układ multipleksera 4053
z odpowiadającymi jej sygnałami mikrokontrolera. Linia CS (Chip Select) pamięci została
wyprowadzona na zewnątrz minimodułu poprzez nóżkę (EFLASH), może ona być również
4
bezpośrednio połączona z portem PB4 mikrokontrolera poprzez zwarcie zworki J1. W chwili
obecnej produkowane są jedynie pamięci DataFlash o napięciu zasilania 3.3V, z odpornością linii wejściowych na sygnał 5V. Napięcie zasilania pamięci 3.3V uzyskano przy pomocy
stabilizatora składającego się z trzech diod połączonych szeregowo.
Złacze ISP
Złącze ISP jest używane do programowania w systemie. Wszystkie sygnały interfejsu ISP
zostały połączone z mikrokontrolerem przez multiplekser HC4053, co pozwala na ich
odłączenie od reszty modułu podczas operacji programowania. Eliminuje to możliwość
przypadkowego zapisu do układu RTC, DataFlash, lub magistrali RS232. Multiplekser
sterowany jest sygnałem LED, podczas programowania musi on być połączony z
poziomem niskim co sygnalizowane jest za pomocą diody LED (ISP). Złącze ISP jest
kompatybilne z układem STK300, do programowania może być użyty programator
ISPcable I lub ISPcable II produkowany przez naszą firmę lub dowolny programator
posiadający wyprowadzenia w tym standardzie.
Przykładowa aplikacja
Wybór naszego minimodułu jest pierwszym krokiem dla projektów, które muszą być
zrealizowane w krótkim czasie. Minimoduł może być użyty zarówno do prototypu eliminując
konieczność projektowania obwodu drukowanego jak i do układu produkowanego seryjnie
w postaci modułu, umieszczanego w układzie finalnym w postaci „kanapki” co zaoszczędzi
miejsce na druku oraz ułatwi montaż eliminując lutowanie elementu w obudowie QFP64.
Aplikacja demonstruje jak w łatwy sposób można zbudować kompletny system
mikroprocesorowy przy użyciu minimodułu oraz układu ewaluacyjnego EVB503.
Zewnętrzny zasilacz
Komputer PC
Inne urządzenia z RS232
Przetwornica +5 na +/-12V
ATmega128
DataFlash
MMmega0X
Uniwersalne złącze
modułów LCD
Pamięć RAM
RTC
Złącze ISP
Stabilizatory
2 x RS232
Wyświetlacz LCD
Dekoder
adresów
Karty rozszerzeń
Gotowe Karty rozszeżeń
Optoizolowane wejscia wyjscia Cyfrowe
Karta przetworników ADC i DAC
Karta Sieciowa
Karta modemowa
Karty rozszerzeń
Ethernet
Internet
Sieć telefoniczna
Przetworniki
wielkości fizycznych
Czujniki zblirzeniowe
Żródło napięcia AREF
Karty prototypowe
Elementy wykonawcze
itp.
Karty rozszerzeń
Porty mikrokontrolera
8 x LED
8 x Microswitch
Buzzer
5
Oscylator
Moduły z mikrokontrolerami ATmega128 dostarczane z programowo ustawionym trybem
pracy kontrolera z wewnętrznym oscylatorem RC o częstotliwości 1MHz. Przełączenie na
zewnętrzny oscylator kwarcowy, dokonuję się poprzez ustawienie odpowiednich fuse bitów.
Oprogramowanie
Wraz z minimodułem dostarczane jest oprogramowanie w języku C w postaci bibliotek
funkcji realizujących komunikację z wbudowanymi peryferiami. Najnowsza wersja
oprogramowania i dane katalogowe wbudowanych peryferii minimodułu dostępne są na
naszej stronie www.propox.com
Wymiary
Wymiary podano w milsach.
1mils – 1/1000 cala
100milsów = 2,54mm (raster standardowy)
Rozmiszczenie elementów
MMmega00/01/02
Widok z góry
MMmega01
Widok z dołu
MMmega02
Widok z dołu
6
PA3
PA4
PA5
PA6
PA7
ALE
PC7
PC6
PC5
PC4
PC3
PC2
PC1
PC0
/RD
/WR
Schemat
JP2
/PEN
JP1
AREF
PA3/AD3
PA4/AD4
PA5/AD5
PA6/AD6
PA7/AD7
ALE
PC7/A15
PC6/A14
PC5/A13
PC4/A12
PC3/A11
PC2/A10
PC1/A9
PC0/A8
RD
WR
ADC0
ADC1
ADC2
ADC3
ADC4
ADC5
ADC6
ADC7
PA0
PA1
PA2
PA3
PA4
PA5
PA6
PA7
ALE
PC7
PC6
PC5
PC4
PC3
PC2
PC1
PC0
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
PA2/AD2
PA1/AD1
PA0/AD0
VCC
GND
PF7/ADC7
PF6/ADC6
PF5/ADC5
PF4/ADC4
PF3/ADC3
PF2/ADC2
PF1/ADC1
PF0/ADC0
AREF
AGND
AVCC
32
31
30
29
28
27
26
25
24
23
22
21
20
19
18
17
PD7/T2
PD6/T1
PD5
PD4/IC1
PD3/INT3
PD2/INT2
PD1/INT1
PD0/INT0
XTAL1
XTAL2
GND
VCC
RESET
TOSC1
TOSC2
PB7/OC2/PWM2
U1
ATmega103
PEN
PE0/PDI/RxD
PE1/PDO/TxD
PE2/AC+
PE3/ACPE4/INT4
PE5/INT5
PE6/INT6
PE7/INT7
PB0/SS
PB1/SCK
PB2/MOSI
PB3/MISO
PB4/OC0/PWM0
PB5/OC1A/PWM1A
PB6/OC1B/PWM1B
PA2
PA1
PA0
VCC
GND
ADC7
ADC6
ADC5
ADC4
ADC3
ADC2
ADC1
ADC0
AREF
AGND
AVCC
PD7
PD6
PD5
PD4
PD3
PD2
PD1
PD0
X1
4MHz
C6 22p
C7 22p
GND
VCC
/RESET
OSC
PG4
PB7
X2
32k
MMmega01
PG3
MMmega02
INT0
EFLASH
ERTC
EFLASH
HEADER B
R5
10k
PB2
PB3
PB4
PB5
PB6
VCC
PE2
PE3
PE4
PE5
PE6
PE7
PB0
HEADER A
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
VCC
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
VBAT
AVCC
48
47
46
45
44
43
42
41
40
39
38
37
36
35
34
33
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
/PEN
PE0
PE1
PE2
PE3
PE4
PE5
PE6
PE7
PB0
PB1
PB2
PB3
PB4
PB5
PB6
PB7
PD0
PD1
PD2
PD3
PD4
PD5
PD6
PD7
OSC
/RESET
/RD
/WR
PG3
PG4
MMmega01
J2
PE4
INT0
VCC
VCC
1N4148
1N4148
C5
VEE
INH
A
B
C
Z0
Z1
X0
X1
Y0
Y1
1
2
3
4
7
6
11
10
9
5
3
2
1
12
13
8
D1
ISP LED
PB3
7
EFLASH
PB1
PE1
BT1
BATTERY
VCC
VCC
R1
1k
3
GND
RST
PB5
U5
PB1
ERTC
100n
100n
47n
JP3
ISP Header
9
7
5
3
1
C3
14
12
15
11
3
5
AVCC
C1
10
8
6
4
2
AREF
C2
VCC
J3
1
PB2
VCC
C44
100n
2
/RESET
C8
10uF
PD0
PD1
VBAT
DS1813-5
+
8
7
6
5
VDD
INT
SCL
SDA
PCF8583
U3
VCC
R2
1k
VCC
D27
1N4148
OSCI
OSCO
A0
VSS
MMmega02
U4
AT45D011/SOIC
PE0
RST
WP
CS
GND
J1
SO
D28
1N4148
SCLK
3
5
4
PB4
VCC
2
PB1
/RESET
SI
R7
2k7
U5
X3
32,768 KHz
R3
1k6
6
1
R6
2k7
VCC
100n
PB2
VCC
C4
30p
U2
74HC4053
Z
1N4148
4
D4
Y
D3
X
D2
15
VCC
14
VCC
X3
32k
VCC
4
6
8
10
SCLK
CE
SDI
SERMODE
VCC1
VCC2
VBAT
VCCIF
X1
X2
SDO
PF
NC
NC
NC
GND
INT0
INT1
NC
NC
20
1
2
17
16
18
7
9
19
13
PB3
J2
PE4
DS1305E
DIGITAL GND
ANALOG GND
R
http://www.propox.com
email: [email protected]
Many ideas one solution
Title:
Size:
MMmaga01/02 minimodules for ATmega TQFP64
Rev:
File:
Date:
24-04-2002
Sheet 1 of 1
1.00
7

Podobne dokumenty