Emulator procesorów 89Cx051, Bascom College [8051]

[ Pobierz całość w formacie PDF ]
BASCOM College
E
m
u
l
a
t
o
r
p
r
o
c
e
s
o
r
ó
w
8
9
C
X
0
5
1
W ramach programu BASCOM College
chciałbym zaproponować Moim Czytelni−
kom budowę jednego z najbardziej użytecz−
nych dla konstruktora urządzeń: emulatora
sprzętowego. Jednak zanim przejdziemy do
bardziej szczegółowego opisu proponowane−
go układu, etyka zawodowa nakazuje mi zło−
żyć następujące oświadczenie:
Emulator sprzętowy procesorów
89CX051, przeznaczony do współpracy z
kompilatorami BASCOM, został opra−
cowany przez firmę MCS Electronics i
GRIFO. Nie jestem autorem tego
urządzenia, a jedyną moją zasługą jest
zaprojektowanie płytki obwodu
drukowanego i przetestowanie układu.
Schemat emulatora został wykorzystany
za zgodą i aprobatą firmy GRIFO.
Emulator sprzętowy jest urządzeniem,
które nie tylko ułatwia tworzenie programów
na mikroprocesory. W wielu przypadkach po−
zwala on na pełne przetestowanie programu
i zaprojektowanego układu wyłącznie za po−
mocą komputera i odpowiedniego oprogra−
mowania, bez konieczności programowania
procesora. Mówiąc najprościej: komputer po−
łączony z uruchamianym urządzeniem za po−
mocą emulatora „udaje“, że jest włożonym
w podstawkę procesorem. Jakie to daje ko−
rzyści programiście? Ogromne, a przede
wszystkim znaczną oszczędność czasu. Pro−
cesory 89CX051 posiadają wprawdzie
2
5
0
1
pamięć EEPROM, w której przechowywana
jest pamięć programu, ich programowanie
i przeprogramowywanie jest bardzo proste,
ale zawsze zajmuje cenny czas. Ponadto, pro−
gramator procesorów jest urządzeniem dość
kosztownym, a jego samodzielna budowa nie
należy do najprostszych zadań. Stosowanie
emulatorów programowego i sprzętowego
pozwala odwlec konieczność zaprogramowa−
nia procesora do ostatniej chwili, kiedy napi−
sany program będzie już wielokrotnie przete−
stowany i poprawiony. Emulator sprzętowy,
szczególnie w połączeniu z opisaną dalej
płytką prototypową, daje też dostęp do techni−
ki mikroprocesorowej kolejnej grupie hobby−
stów: Kolegom, którzy uwielbiają prace pro−
gramistyczne, ale wzięcie do ręki lutownicy
jest dla nich jedynie smutną koniecznością.
Powiedzmy sobie teraz kilka słów o moż−
liwościach i ograniczeniach proponowanego
układu. Może on współpracować z dwoma
programami – kompilatorami języka BASIC:
BASCOM−em i 8051. Sprawdziłem działanie
układu z obydwoma tymi programami i wy−
niki były więcej niż zachęcające
! Jednak
bez posiadania jed−
nego z wymienio−
nych programów
układ emulatora
jest całkowicie bez−
użyteczny!
Emulator pozwala
na symulację obecno−
ści w testowanym
układzie wyłącznie
procesorów typu
AT89C2051
i AT89C4051.
Emu−
lacja jakichkolwiek
innych procesorów
nie jest możliwa
. Po−
nieważ jednak
umówiliśmy się, że na
początkowym etapie działalności naszej szko−
ły programowania procesorów w języku
BASIC będziemy używać tylko tych proceso−
rów, wada nie wydaje się być zbyt uciążliwa.
Za pomocą naszego emulatora możemy
sprawdzić działanie
większości
funkcji wyko−
nywanych przez testowany program i projek−
towane urządzenie mikroprocesorowe.
Więk−
szości, nie wszystkich!
Ograniczeniem jest
szybkość pracy emulatora, już w założeniu
znacznie mniejsza od szybkości pracy proce−
sora. Tu w korzystnej sytuacji znajdą się
szczęśliwi posiadacze komputerów w nowo−
czesnej konfiguracji, wyposażonych w proce−
sory PENTIUM II lub lepsze. Im bowiem
szybszy procesor komputera, tym bardziej
emulacja mikroprocesora będzie odpowiadała
rzeczywistym warunkom pracy testowanego
układu.
Proponowany układ jest banalnie prosty
i łatwy do wykonania. Całkowicie odpowia−
da to trendom, które lansujemy w naszej
szkole programowana procesorów: prosty
hardware, a cały “rozum” urządzenia umie−
szczony jest w jego oprogramowaniu. Dlate−
go też do wykonania emulatora zachęcam na−
wet zupełnie początkujących konstruktorów,
a w szczególności tych, którzy nie za bardzo
lubią lutować, a cały wysiłek wkładają w pi−
sanie programów.
Rys. 4
Jak to działa?
Na
rysunku 1
został pokazany schemat elek−
tryczny układu sprzętowego emulatora pro−
cesorów 89CX051. Jednak odpowiedź na po−
stawione wyżej pytanie będzie tym razem
dość trudna. Jak już wiecie, nie jestem auto−
rem tego układu i ... nie bardzo wiem, jak to
działa. Bez wnikania w zasady działania pro−
gramów BASCOM, które z kolei są tajemni−
cą producenta, możemy jedynie stwierdzić,
że przesyłanie informacji pomiędzy emulato−
rem a komputerem odbywa się zgodnie
Elektronika dla Wszystkich
15
BASCOM College
z protokołem transmisji danych w szynie I
2
C.
Do transferu danych wykorzystane
zostały dwa dwukierunkowe konwertery
I
2
C – 8−bitowa szyna danych. Emulator ob−
sługuje wszystkie wyprowadzenia procesora
z wyjątkiem wejść oscylatora kwarcowego
i wejścia RESET. Ważne jest, że wyprowa−
dzenia te nie są do niczego podłączone i że
podczas pracy z emulatorem nie musimy wy−
lutowywać z układu kwarcu, ani też zmieniać
niczego w układzie resetowania procesora.
Układ emulatora zasilany jest zawsze z te−
stowanego układu.
Montaż i uruchomienie
Na
rysunku 2
została pokazana mozaika
ścieżek płytki obwodu drukowanego, wyko−
nanego na laminacie dwustronnym z metali−
zacją. Montaż układu wykonujemy w typo−
wy sposób, rozpoczynając od wlutowania
w płytkę podstawek pod układy scalone,
a kończąc na zamontowaniu złącza CON2
i przewodu z wtykiem emulacyjnym.
Warto szerzej omówić sprawę montażu
wtyku emulacyjnego, co bynajmniej nie
jest tak proste, jak mogłoby się wydawać.
W zestawie znajduje się odcinek przewodu
taśmowego 20−żyłowego i dwa wtyki: je−
den, znany już nam wtyk zaciskany na
przewodzie taśmowym, który dołączymy
do złącza CON1 na płytce, i drugi, z wy−
glądu podobny do podstawki pod układ
scalony. Sposób zaciśnięcia na kablu
pierwszego z wtyków został już wyczerpu−
jąco opisany w jednym z poprzednich nu−
merów EdW, natomiast drugi wtyk, emula−
cyjny, jest dla nas jeszcze nowością. Prze−
glądając wykaz elementów uważni Czytel−
nicy z pewnością zauważyli, że wymienio−
na w nim jest podstawka typu DIL20, pod−
czas gdy na płytce nie ma miejsca na układ
o tej liczbie nóżek. Ta druga podstawka jest
tylko elementem pomocniczym do monta−
żu na kablu wtyku emulacyjnego i, nieste−
ty, ulegnie podczas tej operacji całkowite−
mu zniszczeniu. Kolejność postępowania
podczas montażu wtyku emulacyjnego bę−
dzie następująca:
1. Wtyk emulacyjny wkładamy do “dodatko−
wej” podstawki DIL20.
Rys. 1 Schemat ideowy emulatora
2. W szczelinę we wtyku emulacyjnym wsu−
wamy jeden koniec przewodu taśmowego.
3. Całość ściskamy w imadle aż do usłysze−
nie cichego trzasku, świadczącego o za−
mknięciu się wtyku emulacyjnego. Podczas
wykonywania tej czynności podstawka zo−
stanie całkowicie zniszczona, ale jest to jedy−
na pewna metoda zabezpieczenia końcówek
wtyku emulacyjnego przed uszkodzeniem.
Układ emulatora zmontowany ze spraw−
nych elementów nie wymaga już więcej ja−
kichkolwiek czynności i po dołączeniu do
portu drukarkowego komputera z zainstalo−
wanym jednym z programów BASCOM po−
winien działać poprawnie. Użytkowanie
emulatora opisane będzie dokładnie w cyklu
artykułów opisujących
program BASCOM i dla−
tego teraz podam Wam je−
dynie najpotrzebniejsze
informacje.
Wtyk emulacyjny
układu powinien zostać
umieszczony w testowa−
nym urządzeniu, zamiast
procesora. Badany układ
powinien być zasilany od−
powiednim dla niego na−
pięciem, tj. 5VDC. Po po−
łączeniu ze sobą (przy
wyłączonym zasilaniu)
trzech układów: kompute−
ra, emulatora i testowane−
go urządzenia włączamy zasilanie i urucha−
miamy na komputerze program BASCOM
LT lub BASCOM8051. Ładujemy program,
którego działanie chcemy sprawdzić, kompi−
lujemy go i uruchamiamy symulator.
Dalsze czynności zależne są od funkcji
wykonywanych przez testowany program.
Co jednak mają zrobić niecierpliwi kon−
struktorzy, którzy nie mają jeszcze przygoto−
wanego żadnego układu z procesorami
89CX051, ani płytki testowej, a chcieliby
przetestować działania emulatora? Można to
zrobić w bardzo prosty sposób.
Do podstawki DIL20 lutujemy “w pają−
ku” zgodnie z
rysunkiem 3
wyświetlacz
siedmiosegmentowy LED. Musi to być
Rys. 2 Schemat montażowy
Rys. 3
16
Elektronika dla Wszystkich
BASCOM College
wyświetlacz ze wspól−
ną katodą! Do podstaw−
ki dołączamy zasilanie
5VDC (nóżka 20 +,
nóżka 10 −) i łączymy ją
z emulatorem. Następ−
nie piszemy w edytorze
BASCOM−a króciutki
programik:
Po jego skompilowa−
niu uruchamiamy emu−
lator (rys.4) i obserwuje−
my zachowanie wyświe−
tlacza. Jeżeli zaczną się
na nim pojawiać cyfry
od 0 do 9 wyświetlane
w pętli, to nasz układ
emulatora możemy
uznać za sprawny i goto−
wy do testowania napi−
sanych programów.
Dim R As Byte 'deklaracja zmiennej, niezbędna w dialekcie BASCOM
Dim A As Word 'deklaracja zmiennej, niezbędna w dialekcie BASCOM
Dim Cyfra(10) As Byte 'deklaracja tablicy, niezbędna w dialekcie BASCOM
Cyfra (1) = 127
' definicja wyświetlania cyfry "0"
Wykaz elementów
Kondensatory:
C1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .100
µµ
F/10
C2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .100nF
Rezystory:
RP1 . . . . . . . . . . . . . . . . . . . . . . . . .R−pack SIL 10k
ΩΩ
Półprzewodniki:
IC2, IC1 . . . . . . . . . . . . . . . . . . . . . . . . . . .PCF8574P
IC3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .74LS05
Pozostałe:
CON1 . . . . . .złącze zaciskane 20 pin lutowane w płytkę
CON2 . . . . . . . . . . . .złącze DB25/M lutowane w płytkę
Wtyk emulacyjny 20 pin
Przewód taśmowy ok. 1 mb
Podstawki pod układy scalone + podstawka DIL20
Goldpin 2 x 10 pin
Cyfra (2) = 6
' definicja wyświetlania cyfry "1"
Cyfra (3) = 155
' definicja wyświetlania cyfry "2"
Cyfra (4) = 143
' definicja wyświetlania cyfry "3"
Cyfra (5) = 166
' definicja wyświetlania cyfry "4"
Cyfra (6) = 173
' definicja wyświetlania cyfry "5"
Cyfra (7) = 189
' definicja wyświetlania cyfry "6"
Cyfra (8) = 7
' definicja wyświetlania cyfry "7"
Cyfra (9) = 191
' definicja wyświetlania cyfry "8"
Cyfra (10) = 175
' definicja wyświetlania cyfry "9"
Do
For R = 1 To 10
P3 = Cyfra (r)
Print R
For A = 1 To 1000 : Next A 'pętla opóźnienia zależna od szybkości komputera
Next R
Loop
Komplet podzespołów z płytką jest
dostępny w sieci handlowej AVT jako
kit szkolny AVT−2501
Elektronika dla Wszystkich
17
[ Pobierz całość w formacie PDF ]
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • dietanamase.keep.pl