Motorola | M68EVB912B32 | Moduł z mikrokontrolerem MC68HC912B32

Na prawach rekopisu
,
INSTYTUT CYBERNETYKI TECHNICZNEJ
POLITECHNIKI WROCŁAWSKIEJ
Raport serii SPR nr 6/2004
Moduł z mikrokontrolerem
MC68HC912B32
Marek Wnuk
Słowa kluczowe: mikrokontroler, płytka drukowana, system uruchomieniowy, oprogramowanie
skro´sne.
Wrocław 2004
Spis tre´sci
1 Wstep
,
2
2 Własno´sci mikrokontrolera MC68HC912B32
2
3 Schemat i monta˙z
5
4 Złacza
i sygnały
,
5
5 Uruchamianie sprzetu
,
7
6 Dokumentacje i oprogramowanie pomocnicze
9
Bibliografia
9
widok z g´ory
widok z dołu
Rysunek 1: Wyglad
, zmontowanej płytki
1 Wstep
,
Opisywana płytka zawiera 16-bitowy mikrokontroler MC68HC912B32 firmy Motorola oraz minimalny zestaw element´ow towarzyszacych
(rezonator kwarcowy, zworki do wyboru trybu pracy, zł acza
,
,
BDM, rezystory wymuszajace
po˙
z
adany
stan
logiczny wybranych sygnał´ow i kondensatory blokuj ace
,
,
,
zasilanie). Wszystkie sygnały mikrokontrolera sa, wyprowadzone na złacza
w
standardowym
rozsta,
wie (0.1 “), co umo˙zliwia dołaczenie
zewnetrznych
rozszerze´n r´ownie˙z przy u˙zyciu uniwersalnej
,
,
płytki drukowanej. Ma to szczeg´olne znaczenie przy projektach badawczych i dydaktycznyh, do
kt´orych płytka jest przeznaczona. Widok modułu przedstawiono na rys. 1.
2 Własno´sci mikrokontrolera MC68HC912B32
Rodzina HC12 mikrokontroler´ow firmy Motorola jest nastepc
, a, popularnej serii HC11, od wielu lat
stosowanej w bardzo wielu konstrukcjach sterownik´ow i układ´ow sensorycznych, w szczeg´olno´sci w
robotyce. Mikrokontrolery HC12 zostały wyposa˙zone w bardzo wydajn a,, 16-bitowa, jednostke, centalna, (CPU12) o wy˙zszej czestotliwo´
sci taktowanaia, charakteryzuja, sie, małym poborem mocy oraz
,
rozszerzonym w stosunku do HC11 zestawem układ´ow wej´scia/wyj´scia (porty r´ownoległe i szeregowe, timery i przetwornik analogowo–cyfrowy). CPU12 zachowuje zgodno´sc´ z HC11 na poziomie
asemblera, lecz ma poprawiona, implementacje, wielu instrukcji. Wprowadzono te˙z wiele dodatkowych instrukcji (np. interpolacji liniowej, Fuzzy Logic) oraz rozbudowane tryby adresowania indeksowego ułatwiajace
implementacje, system´ow operacyjnych i jezyk´
ow wy˙zszego rzedu
(znane z
,
,
,
M6809). Wa˙zna, zaleta, CPU12 jest wbudowany emulator z interfejsem BDM pozwalajacy
urucha,
mia´c, testowa´c i modyfikowa´c oprogramowanie bezpo´srednio na systemie docelowym.
Podstawowe własno´sci zastosowanej wersji mikrokontrolera to:
• 16-bitowa jednostka centralna CPU12 (zegar 8MHz):
– zgodno´sc´ z lista, rozkaz´ow M68HC11,
– analogiczny model programowy jak M68HC11,
2
Rysunek 2: Struktura i zasoby MC68HC912B32
3
–
–
–
–
20-bitowa jednostka arytmetyczno-logiczna (ALU),
kolejka instrukcji,
rozbudowane tryby adresowania indeksowego,
wbudowane instrukcje Fuzzy Logic,
• zasoby pamieciowe:
,
– 32 kilobajty wbudowanej pamieci
, FLASH z 2-kB chronionym obszarem (Boot Block),
– 768 bajt´ow wbudowanej pamieci
, EEPROM,
– 1024 bajty wbudowanej pamieci
, RAM,
• 8-kanałowy, 8-bitowy przetwornik analogowo/cyfrowy,
• 16-bitowy system timer´ow:
– 8 kanał´ow (ka˙zdy mo˙ze by´c IC - Input Capture lub OC - Output Compare),
– prosty tryb PWM,
– mo˙zliwo´sc´ resetowania licznika modulo,
• 16-bitowy akumulator impuls´ow:
– zliczanie zdarze´n,
– bramkowane zliczanie czasu,
• modulator PWM:
– 4 kanały 8-bitowe lub 2 kanały 16-bitowe,
– oddzielne sterowanie czestotliwo´
scia, i wypełnieniem w kanałach,
,
– tryb symetryczny (Center-Aligned) i asymetryczny (Left-Aligned),
• układ przerwa´n cyklicznych o programowalnym okresie,
• COP watchdog (Computer Operates Properly),
• monitorowanie zegara procesora,
• interfejsy szeregowe:
– asynchroniczny interfejs szeregowy NRZ (SCI),
– synchroniczny interfejs szeregowy urzadze´
n zewnetrznych
(SPI),
,
,
– J1850 (BDLC),
• 63 uniwersalne wej´scia-wyj´scia binarne:
– 53 dwukierunkowe,
– 10 wyłacznie
wej´sciowych,
,
• interfejs uruchomieniowy (wbudowany emulator) BDM (Background Debug Mode),
• obudowa QFP80,
• dostepne
wersje niskonapieciowe
(2.7 - 5.5V).
,
,
Strukture, i zasoby mikrokontrolera MC68HC912B32 [1] przedstawiono na rys. 2.
4
3 Schemat i monta˙z
Schemat modułu przedstawiono na rys. 3, a spos´ob monta˙zu na płytce drukowanej na rys. 4. 1 Na
płytce zamontowano: mikrokontroler MC68HC912B32 w obudowie QFP80 (U1), rezonator kwarcowy 16MHz (Q1) wraz z elementami towarzyszacymi
(C1, C2 - 22pF, R1 - 10MΩ), kondensatory
,
blokujace
stan wysoki sygnału
, zasilanie (C3 .. C8 - 100nF, C10, C11 - 100µF), rezystor wymuszaj acy
,
restartu (RESET) i stan niski sygnał´ow (MODA, MODB) wyboru trybu CPU (R6, R13, R15 - 15kΩ).
Zasilanie przetwornika C/A jest dodatkowo filtrowane przez dławik L1 (10 µH). Napi ecie
do progra,
mowania pamieci
FLASH
jest
doprowadzone
do
VFP
ze
zł
acza
JP1
za
po´
s
rednictwem
diod
D1 i D2
,
,
(BAT42).
liczba
warto´sc´
obudowa
2
1
5
1
47R
4k7
15k
10M
0805
0805
0805
0805
2
6
2
22p
100n
100u/6,3V
0805
1206
6032
1
10uH
0207
1
16MHz
HC49/S
2
1
BAT42
MC68HC912B32
DO34-7
QFP80
oznaczenie na schemacie
rezystory
R4, R5
R7
R2, R3, R6, R13, R15
R1
kondensatory
C1, C2
C3, C4, C5, C6, C7, C8
C10, C11
filtry
L1
rezonatory
Q1
p´ołprzewodniki
D1, D2
U1
Tablica 1: Zestawienie element´ow modułu HC912
W celu zachowania zgodno´sci z modułem uruchomieniowym M68EVB912B32 firmy Motorola [3] i
umo˙zliwienia wykorzystania monitora/debuggera D-Bug12 do uruchamiania modułu wprowadzono
dwa sze´sciostykowe złacza
BDM-IN i BDM-OUT. W drugim z nich sygnały PT6 i PT7, za po´s,
rednictwem odsprzegaj
acych
rezystor´ow R4 i R5 (47Ω), sa, u˙zyte do emulowania sygnał´ow BKGD
,
,
i RESET dla zewnetrznego
układu
docelowego (przy wykorzystaniu modułu jako interfejsu BDM).
,
Wyb´or trybu pracy D-Bug12 zapewniaja, zworki J1 i J2 z rezystorami R2 i R3 (15kΩ) podłaczonymi
,
do sygnał´ow PAD0 i PAD1 mikrokontrolera.
Mikrokontroler, rezonator kwarcowy, dławik, złacza
BDM, zworki, diody i zlacze
napiecia
progra,
,
,
mujacego
s
a
zamontowane
na
wierzchniej
stronie
płytki.
Pozostałe
elementy
s
a
montowane
na
dolnej
,
,
,
powierzchni modułu.
4 Złacza
i sygnały
,
Sygnały mikrokontrolera wyprowadzono na dwa dwurzedowe
złacza
(SVL, SVP) zawierajace
po 40
,
,
,
styk´ow. U˙zycie listew wtykowych SLP zamontowanych od spodniej strony płytki pozwala wł aczy´
c
,
moduł do odpowiednich gniazd zamontowanych na innej płytce. Mo˙zliwe jest r´ownie˙z u˙zycie dwu1
Projekt płytki drukowanej wykonał Robert Szlawski (Laboratorium Robotyki ICT PWr.).
5
Rysunek 3: Schemat układu
widok z g´ory
widok z dołu
Rysunek 4: Monta˙z element´ow na płytce
6
rzedowych
listew stykowych zamontowanych od wierzchniej strony płytki w celu dokonania poł acze´
n
,
,
zewnetrznych
przewodem
ta´
s
mowym.
,
PE7/DBE
PE5/MODA
PE3/LSTRB
PE1/IRQ
PA0
PA2
PA4
PA6
VSS(GND)
VRL
PAD0/AN0
PAD2/AN2
PAD4/AN4
PAD6/AN6
VSSAD
PS0/RxD
PS2
PS4/SDI/MISO
PS6/SCK
VSS(GND)
złacze
SVL
,
1
2 PE6/MODB
3
4 PE4/ECLK
5
6 PE2/RW
7
8 PE0/XIRQ
9 10 PA1
11 12 PA3
13 14 PA5
15 16 PA7
17 18 VDD(+5V)
19 20 VRH
21 22 PAD1/AN1
23 24 PAD3/AN3
25 26 PAD5/AN5
27 28 PAD7/AN7
29 30 VDDAD
31 32 PS1/TxD
33 34 PS3
35 36 PS5/SDO/MOSI
37 38 PS7/CS/SS
39 40 VDD(+5V)
VDD(+5V)
PB7
PB5
PB3
PB1
VDD(+5V)
RESET
PT7/IOC7/PAI
PT5/IOC5
PT3/IOC3
PT1/IOC1
VDD(+5V)
PP0/PW0
PP2/PW2
PP4
PP6
PDLC0/DLCRx
PDLC2
PDLC4
PDLC6
złacze
SVP
,
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
33 34
35 36
37 38
39 40
VSS(GND)
PB6
PB4
PB2
PB0
VSS(GND)
VSS(GND)
PT6/IOC6
PT4/IOC4
PT2/IOC2
PT0/IOC0
VSS(GND)
PP1/PW1
PP3/PW3
PP5
PP7
PDLC1/DLCTx
PDLC3
PDLC5
VSS(GND)
Tablica 2: Złacza
modułu HC912B32
,
Rozmieszczenie sygnał´ow na złaczach
SVL i SVP podano w tab. 2, a ich opis w tab. 3.
,
Sygnały na złaczach
BDM opisano w tab. 4. W przypadku BDM-IN sygnały RESET i BKGD s a, sy,
gnałami wej´sciowymi mikrokontrolera modułu. W przypadku BDM-OUT s a, one wytwarzane (emulowane) przez D-Bug12 za po´srednictwem sygnał´ow PT6 i PT7 mikrokontrolera.
5 Uruchamianie sprzetu
,
W celu zaprogramowania w pamieci
FLASH zmontowanego modułu oprogramowania firmowego
,
(D-Bug12) nale˙zy sie, posłu˙zy´c interfejsem BDM i odpowiednim oprogramowaniem na komputerze
nadrzednym.
W najprostszym przypadku role, interfejsu BDM mo˙ze pełni´c inny, wcze´sniej urucho,
miony i oprogramowany, moduł (np. płytka M68EVB912B32 firmy Motorola) ustawiony w tryb 01
(POD – Remote Debugging Through BDM-OUT [3]). W takim przypadku nale˙zy poł aczy´
c sze´s,
cio˙zyłowym kablem ta´smowym złacze
BDM-OUT płytki słu˙zacej
jako interfejs BDM ze złaczem
,
,
,
BDM-IN uruchamianego modułu. Na komputerze nadrzednym
nale˙
z
y uruchomi´c emulator terminala
,
szeregowego i wykorzysta´c port szeregowy komputera do komunikacji z D-Bug12 (9600, 8, N, 1).
U˙zywajac
zna skasowa´c pamie´
, komend debuggera mo˙
, c FLASH uruchamianego modułu (komenda
FBULK) i zaprogramowa´c ja, nowa, zawarto´scia, podana, w pliku z S-rekordami (komenda FLOAD)
[3].Kasowanie i zapisywanie pamieci
FLASH wymaga doprowadzenia do modułu (złacze
JP1) na,
,
piecia
12V (±5%). Aktualna, wersje, D-Bug12 mo˙zna znale´zc´ na stronie <www.mot.com>.
,
Dzieki
zworkom J1 i J2 mo˙zna wybra´c jeden z czterech tryb´ow pracy D-Bug12 w opisywanym mo,
dule:
• normalny (EVB Execution Mode) – D-Bug12 z pamieci
, FLASH jest po restarcie uruchamiany
7
sygnał
PA0–PA7
PAD0/AN0–PAD7/AN7
VRL
VRH
PB0–PB7
PDLC0/DLCRx
PDLC1/DLCTx
PDLC2–PDLC6
PE0/XIRQ
PE1/IRQ
PE2/RW
PE3/LSTRB
PE4/ECLK
PE5/MODA
PE6/MODB
PE7/DBE
PP0/PW0–PP3/PW3
PP4–PP7
PS0/RxD
PS1/TxD
PS2–PS3
PS4/SDI/MISO
PS5/SDO/MOSI
PS6/SCK
PS7/CS/SS
PT0/IOC0–PT6/IOC6
PT7/IOC7/PAI
wyprowdzenie
SVL.9–SVL.16
SVL.21–SVL.28
SVL.19
SVL.20
SVP.10–SVP.3
SVP.33
SVP.34
SVP.35–SVP.39
SVL.8
SVL.7
SVL.6
SVL.5
SVL.4
SVL.3
SVL.2
SVL.1
SVP.25–SVP.28
SVP.29–SVP.32
SVL.31
SVL.32
SVL.33–SVL.34
SVL.35
SVL.36
SVL.37
SVL.38
SVP.22–SVP.16
SVP.15
typ
IO
I
PWR
PWR
IO
IO
IO
IO
I
I
IO
IO
IO
IO
IO
IO
IO
IO
IO
IO
IO
IO
IO
IO
IO
IO
IO
RESET
VSS(GND)
SVR.13
SVL.17, SVL.39, SVP.2,
SVP.12, SVP.14, SVP.24,
SVP.40
SVL.18, SVL.40, SVP.1,
SVP.11, SVP.23
IO
PWR
opis
port A.[0–7]
wej´scie analogowe [0–7]
dolne napiecie
odniesienia ADC
,
g´orne napiecie
odniesienia ADC
,
port B.[0–7]
dane odbierane BDLC
dane nadawane BDLC
port DLC.[2–6]
przerwanie niemaskowalne
przerwanie maskowalne
kierunek danych
strob dolnego bajtu
zegar magistrali
wyb´or trybu pracy CPU12
wyb´or trybu pracy CPU12
zezwolenie dla bufor´ow magistrali
wyj´scie modulatora PWM [0–3]
port P.[4–7]
dane odbierane SCI
dane nadawane SCI
port PS.[2–3]
dane SPI Master In Slave Out
dane SPI Master Out Slave In
zegar SPI
we/wy wyboru SPI Slave Select
we/wy Input Capture / Output Compare [0–6]
we/wy Input Capture / Output Compare 7
wej´scie Pulse Accumulator
restart
masa
PWR
zasilanie (+5V)
VDD(+5V)
Tablica 3: Sygnały modułu HC912B32
BKGD
n.c.
n.c.
1
3
5
2
4
6
VSS(GND)
RESET
VDD(+5V)
Tablica 4: Złacza
BDM modułu HC912B32
,
8
interakcyjnie ze znakiem zachety
“>” na terminalu dołaczonym
do SCI,
,
,
• start z pamieci
EEPROM (Jump-EEPROM Mode) – po restarcie jest uruchamiany program
,
u˙zytkownika zapisany w pamieci
, EEPROM,
• zdalne debuggowanie przez BDM-OUT (POD Mode) – D-Bug12 ł aczy
sie, ze zdalnym modułem
,
przez BDM i zgłasza znak zachety
“S>”,
,
• ładowanie programu (BOOTLOAD Mode) – program u˙zytkownika w postaci S-rekord´ow jest
ładowany do pamieci
, FLASH i/lub EEPROM.
zworki
J1
J2
2–3 2–3
1–2 2–3
2–3 1–2
2–3 2–3
tryb uruchamiania
D-Bug12 po restarcie
EVB Execution
Jump-EEPROM
POD
BOOTLOAD
Tablica 5: Zworki wyboru trybu startowego D-Bug12
W tab. 5 podano ustawienia zworek J1, J2 odpowiadajace
opisanym trybom. Dokładny opis tych
,
tryb´ow i zestawienie komend D-Bug12 mo˙zna znale´zc´ w [3]).
UWAGA: w celu połaczenia
portu szeregowego SCI opisywanego modułu z komputerem nad,
rzednym
wyposa˙
z
onym
w
port
szeregowy RS232C nale˙zy u˙zy´c układu translacji napie´
,
, c z TTL
do RS232C (np. MAX232).
6 Dokumentacje i oprogramowanie pomocnicze
Dokumentacje mikrokontrolera MC68HC912B32 oraz całej rodziny M68HC12 s a, dostepne
na ser,
werze firmy Motorola (<www.mot.com>). Na lokalnym serwerze Laboratorium Robotyki ICT PWr.
(<rab.ict.pwr.wroc.pl>) sa, dostepne
ich kopie zamieszczone za zgoda, Motorola Polska, jak r´ownie˙z
,
wybrane narzedzia
programistyczne i przykłady zastosowa´n.
,
Oprogramowanie dla CPU12 przygotowuje sie, w jezyku
asemblera [2]. Dostepne
sa, proste skro´sne
,
,
asemblery dla s´rodowiska DOS/Windows, zar´owno darmowe (<www.mot.com>), jak i komercyjne.
Przykładem zintegrowanego s´rodowiska dla Windows, obejmuj acego
edytor, asembler i program ko,
munikacyjny jest IASM12 firmy P&E (<www.pemicro.com>)
r´ownie˙z kompilatory C/C++ to pakiety darmowe
Bardziej rozbudowane s´rodowiska, obejmujace
,
(GNU) i komercyjne (np. nieistniejacej
ju˙z firmy HIWARE). Odwołania do stron WWW zawie,
rajacych
informacje
o
takich
pakietach
mo˙
zna znale´zc´ na stronie <rab.ict.pwr.wroc.pl>.
,
Literatura
[1] MC68HC912B32 Technical Summary, MC68HC912B32TS/D Rev. 1, Motorola Inc. 1997,
[2] CPU12 Reference Manual, CPU12RM/AD Rev. 1, Motorola Inc. 1997,
[3] M68EVB912B32 Evaluation Board User’s Manual, 68EVB912B32UM/D, Motorola Inc. 1997,
[4] MC68HC912B32 Advance Information, MC68HC912B32/D Rev. 2.0, Motorola Inc. 1999,
9
dr in˙z. Marek Wnuk
Instytut Cybernetyki Technicznej
Politechniki Wrocławskiej
ul. Janiszewskiego 11/17
50-372 Wrocław
Niniejszy raport otrzymuja:,
1. OINT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - 1 egz.
2. Zleceniodawca . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - 1 egz.
2. Autor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . - 2 egz.
Razem :
Raport wpłynał, do redakcji I-6
w maju 2004 roku.
10
4 egz.
Download PDF

advertising