EdW 10 1997.pdf

(8282 KB) Pobierz
Projekty AVT
Mikrokomputer edukacyjny
z 8051 – oprogramowanie
część 3
Kończymy opis komputerka edukacyj−
nego. W tej części opiszemy niezbęd−
ne do uruchomienia wyposażenie do−
datkowe, zasilacz oraz kabel połącze−
niowy z komputerem wyposażonym
w złącze transmisji szeregowej.
Wszystkim posiadaczom takiego
sprzętu pozwoli to na szybkie ładowa−
nie pisanych przez siebie w przyszłoś−
ci programów do opisywanego syste−
mu mikroprocesorowego.
Opiszemy też podstawowe funkcje
dostępne z poziomu monitora, czyli
programu nadzorującego pracę kom−
puterka AVT−2250, a zawartego w pa−
mięci EPROM dostarczanej wraz z ze−
stawem do samodzielnego montażu.
Na początku artykułu małe przeprosiny
ze strony redakcji. Sprawa dotyczy szablo−
nu do wykonania klawiatury komputerka.
Ponieważ z poprzednim numerze EdW
zabrakło we wkładce miejsca, brakujący
rysunek zamieszczamy w niniejszym nu−
merze Elektroniki dla Wszystkich.
Pora teraz do wyposażenia naszego
komputerka w niezbędne do pracy pery−
feria: zasilacz i kabel.
Schemat elektryczny układu zasilacza
przedstawia rysunek 1. Zastosowano ty−
powy układ ze stabilizatorem scalonym
U1 typu 7805. Bezpiecznik B1 zabezpie−
cza pierwotne uzwojenie transformatora
TR1 przed uszkodzeniami, spowodowa−
nymi przecięciami lub przeciążaniem.
Mostek M1 wraz z kondensatorami C1
i C2 prostują napięcie zmienne oraz wy−
gładzają je. Stabilizacja na poziomie TTL
czyli 5V z tolerancją +/− 0,25V odbywa się
dzięki układowi U1, na wyjściu którego
zastosowano dodatkowy kondensator
elektrolityczny U3 oraz zapobiegający
wzbudzeniom kondensator blokujący C4.
Całość mieści się na niewielkiej jedno−
stronnej płytce drukowanej, dostosowa−
nej rozmiarami do obudowej typu Z−21.
Rozmieszczenie elementów przedstawia
rysunek 2. W przypadku umieszczenia
zasilacza w takiej budowie, należy przed
rozpoczęciem montażu elementów od−
ciąć rogi płytki zgodnie z obrysem, tak
aby dała ona się wcisnąć w głąb dolnej
części obudowy.
Montaż jest bardzo prosty. Należy wlu−
tować wszystkie elementy zwracając
uwagę na polaryzację. Diodę D1 sygnali−
zująca załączenie zasilacza należy wluto−
wać na przedłużonych końcówkach, tak
aby po zamknięciu pokrywy zasilacza, jej
soczewka wystawała przez wywiercony
w niej wcześniej otwór.
Kabel doprowadzający napięcie zasila−
jące układ komputerka nie powinien być
zbyt długi (l<2m). W miejscu wyprowa−
dzenia poza obudowę przewód warto za−
bezpieczyć kawałkiem rurki termokurczli−
wej, lub specjalnego giętkiego przepustu
dostępnego w handlu. Jako transforma−
tor najlepiej jest zastosować typ TS6/49,
lecz można także użyć jednego z typów
podanych na schemacie z rys.1, zwraca−
jąc uwagę przy zakupie na zgodność wy−
prowadzeń z płytka drukowaną. Ze
względów bezpieczeństwa nie zaleca się
wykonywania przeróbek płytki od strony
uzwojenia pierwotnego transformatora.
Po zmontowaniu zasilacza należy
sprawdzić jego napięcie wyjściowe, któ−
re powinno wynosić +5V (z odchyłką
0,25V).
Uwaga: Wszelkie prace uruchomienio−
we zasilacza należy przeprowadzić po
kompletnym zmontowaniu całego ukła−
du, sprawdzeniu jakości i poprawności
Zasilacz +5V TTL
Ta część artykułu przyda się z pewnoś−
cią tym z Was którzy, nie polegając na
fabrycznych rozwiązaniach, chcą samo−
dzielnie wykonać dobrej jakości zasilacz
stabilizowany niezbędny do prawidłowej
pracy naszego komputerka. Wystarczają−
co duża wydajność prądowa oraz niewiel−
kie rozmiary pasujące idealnie do obudo−
wy typu „wtyczka”, predystynują propo−
nowane przez nas rozwiązanie specjalnie
do współpracy z układem AVT−2250.
Rys. 1. Schemat elektryczny zasilacza
E LEKTRONIKA DLA WSZYSTKICH 10/97
21
823169849.065.png 823169849.076.png 823169849.087.png 823169849.098.png 823169849.001.png 823169849.012.png 823169849.018.png 823169849.019.png 823169849.020.png 823169849.021.png 823169849.022.png 823169849.023.png 823169849.024.png 823169849.025.png 823169849.026.png 823169849.027.png 823169849.028.png 823169849.029.png 823169849.030.png 823169849.031.png 823169849.032.png 823169849.033.png 823169849.034.png 823169849.035.png 823169849.036.png 823169849.037.png 823169849.038.png 823169849.039.png 823169849.040.png 823169849.041.png 823169849.042.png 823169849.043.png 823169849.044.png 823169849.045.png 823169849.046.png 823169849.047.png 823169849.048.png 823169849.049.png 823169849.050.png 823169849.051.png 823169849.052.png 823169849.053.png 823169849.054.png 823169849.055.png 823169849.056.png 823169849.057.png 823169849.058.png 823169849.059.png 823169849.060.png
 
Projekty AVT
ni do tego celu typ moż−
na nabyć w sklepie z ar−
tykułami komputerowy−
mi. Należy poprosić
o „kabel z 9−kontaktowy−
mi końcówkami żeński−
mi”. Nie muszę w tym
miejscu przypominać, że
Ci z was którzy używają
w swoim PC−cie myszki,
muszą sprawdzić czy
mają drugie wolne złącze
typu RS−232c. Na
szczęście standardowo
komputery mają po 2 po−
ry transmisji szeregowej,
toteż nie ma się o co
martwić, jednak często
oba gniazda różnią się od
siebie wielkością. Stosuje się gniazda ty−
pu DB9M oraz DB25M, czyli odpowied−
nio 9 i 25 końcówkowe – oba męskie,
czyli z widocznymi szpilkami (bolcami).
Dodatkowe informacje na ten temat
można znaleźć w artykule n.t. łącza sze−
regowego w numerze EdW 6,7/97.
W wypadku jeżeli wolne złącze COM
ma gniazdo typu DB25M, należy dodat−
kowo zaopatrzyć się w
Do transmisji wystarczy dowolny 3 ży−
łowy kabel, najlepiej miedziany typu „ple−
cionka”. Długość kabla może wynosić na−
wej ponad 20 m (standard RS232c po−
zwala na stosowanie o wiele dłuższych
kabli), jednak przy tak długim połącze−
niu,warto wiązkę 3 przewodów umieścić
w ekranie. W handlu są dostępne odpo−
wiednie przewody 3−żyłowe z ekranem
wykonanym z plecionego drutu miedzia−
nego. Ostatecznie można wykorzystać
zwykły 3−żyłowy kabel sieciowy (z prze−
wodem uziemiającym), lecz nie będzie to
zbyt poręczne rozwiązanie.
W każdym razie do transmisji wyko−
rzystuje się 3 linie: TXD, RXD oraz GND.
Sktóry oznaczają:
– RXD:
Rys. 2. Rozmieszczenie elementów na płytce druko−
wanej zasilacza
linia
odbioru
danych
(ang.
„Receive data”)
– TXD: linia nadawania danych (ang.
„Transmit data”);
– GND: to oczywiście wspólna masa
(której nie zalecam łączyć z obudową
wtyczki na kablu połączeniowym).
Kwestia nazewnictwa linii jako TXD
i RXD jest oczywiście umowna i zależna
od tego z której strony patrzymy na sys−
tem: AVT−2250 <—> komputer PC, prze−
cież dla PC ta linia odbioru danych będzie
linią nadawania dla systemu AVT−2250.
Ważne jest aby tak jak na rysunku 3,linie
te były skrzyżowane.
W zależności od tego jakiego rodzaju
wolne gniazdo COM mamy do dyspozycji
w naszym PC−cie należy wybrać wariant
z rys.3a lub 3b.
Jeżeli na Twoim stole leży już zmonto−
wany i uruchomiony komputerek eduka−
cyjny, opisywany zasilacz +5V oraz kabel
montażu oraz zamknięciu zasilacza
w obudowie. Osoby niedoświadczone
powinny skorzystać z pomocy osób obe−
znanych z zasadami uruchamiania urzą−
dzeń zasilanych z
sieci energetycznej
220V.
Na zakończenie uwaga dotycząca
chłodzenia układu stabilizatora U1. Ponie−
waż nasz komputerem pobiera stosunko−
wo mały prąd (<200mA) stosowanie ra−
diatora nie jest konieczne. Ci z Was któ−
rzy zechcą przygotować proponowany
zasilacz na większe obciążania (>0,5A)
mogą do układu U1 przykręcić kawałek
cienkiej aluminiowej blachy formując ją
przedtem tak aby bez problemu mieściła
się pod pokrywą obudowy zasilacza.
odpowiednią
„przelotkę”.
Jeżeli już kupimy kabel w sklepie, na−
leży dodatkowo np. za pomocą próbnika
zwarć sprawdzić, czy wszystkie koń−
cówki na obu końcach są ze sobą połą−
czone. Wyjątkiem są końcówki 2 i 3,
które powinny się „krzyżować”. Jeżeli
tak nie jest, należy rozebrać z jednej
strony wtyczkę kabla i korzystają z lu−
townicy zamienić miejscami przewody
od wspomnianych wypro−
wadzeń, tak aby końcówka
2 przechodziła na 3, i od−
wrotnie.
Tym którzy chcą tań−
szym kosztem i samodziel−
nie wykonać stosowany ka−
bel połączeniowy, zamiesz−
czam odpowiednie rysunki
ze schematem połączeń –
rysunek 3a i b.
Komputerek AVT−2250
komunikuje się z kompute−
rem PC w trybie półduplek−
sowym bez sprzętowego
potwierdzenia transmisji.
Stąd odpowiednie zwory
z obu stron kabla wykonane
na wtyczkach pomiędzy
sygnałami RTS i CTS oraz
DSR i DTR. Na rysunku po−
kazano dwa warianty połą−
czeń, dla posiadaczy wolne−
go złącza COM typu DB25
(długiego) oraz dla tych któ−
rzy mają wolne krótkie złą−
cze – DB9.
Kabel połączeniowy
Ta część artykułu przeznaczona jest
nie tylko dla posiadaczy komputerów PC,
ale i dla tych którzy ich nie mają. Otóż opi−
sany poniżej kabel może przydać się tak−
że osobom które swoją edukację zaczną
na kartce papieru. Za pomocą takiego
kabla można będzie także połączyć dwa
komputerki AVT−2250 w bardziej rozbudo−
wanych zastosowaniach, których w tej
chwili przecież nie można przewidzieć.
Być może niektórzy z Was posiądą takie
umiejętności programowania, że do speł−
nienia warunków postawionego przed
sobą projektu potrzebny będzie nie jeden
ale dwa procesory serii 8051. Dlatego ka−
bel taki warto wykonać już dziś, chociaż−
by dla świętego spokoju.
Oczywiście nie musze przypominać
że kabel jest niezbędny tym z Was którzy
posiadają komputer klasy PC i zamierza−
ją korzystać z niego przy nauce progra−
mowania przy pomocy naszego kompu−
terka edukacyjnego. Ponieważ prezento−
wany komputerek komunikuje się z kom−
puterem PC poprzez złącze transmisji
szeregowej (korzysta z niego np. mysz−
ka), niezbędny jest do połączenia stoso−
wany kabel. Prawdę mówiąc odpowied−
a)
b)
Rys. 3. Schematy połączeń
kabli używanych do transmisji
poprzez RS232c w trybie
w naszym komputerku
22
E LEKTRONIKA DLA WSZYSTKICH 10/97
823169849.061.png 823169849.062.png 823169849.063.png 823169849.064.png 823169849.066.png 823169849.067.png 823169849.068.png 823169849.069.png 823169849.070.png 823169849.071.png 823169849.072.png 823169849.073.png 823169849.074.png 823169849.075.png 823169849.077.png 823169849.078.png 823169849.079.png 823169849.080.png 823169849.081.png 823169849.082.png 823169849.083.png 823169849.084.png 823169849.085.png 823169849.086.png 823169849.088.png 823169849.089.png 823169849.090.png 823169849.091.png 823169849.092.png 823169849.093.png 823169849.094.png 823169849.095.png 823169849.096.png 823169849.097.png 823169849.099.png 823169849.100.png 823169849.101.png 823169849.102.png 823169849.103.png 823169849.104.png 823169849.105.png 823169849.106.png 823169849.107.png 823169849.108.png 823169849.002.png 823169849.003.png 823169849.004.png 823169849.005.png 823169849.006.png 823169849.007.png 823169849.008.png 823169849.009.png 823169849.010.png 823169849.011.png 823169849.013.png 823169849.014.png 823169849.015.png
Projekty AVT
połączeniowy, możesz zapoznać się z op−
rogramowaniem w które wyposażony
jest Twój pierwszy zestaw na 51−kę.
przez każdy program kompilatora na pro−
cesory rodziny MCS−51. Sposób genero−
wania takiego pliku opiszemy w dalszej
części artykułu. Zainteresowanych szcze−
gółowym opisem formatu pliku Intel−HEX
odsyłam do lektury naszego bratniego
pisma Elektroniki Praktycznej nr 10/97.
W przypadku braku transmisji z PC ta
przez około minutę system wyświetli ko−
munikat „Err” – ang. „error, błąd. Taki
sam efekt wystąpi jeżeli transmisja bę−
dzie zawierała błędy, lub wysyłany z kom−
putera PC plik nie będzie w formacie In−
tel−HEX.
W przypadku komunikatu o błędzie na−
leży wcisnąć klawisz „M” – powrotu do
monitora.
W fazie wysyłania danych przez kom−
puter PC wyświetlacz pokazuje adres ak−
tualnie ładowanego rekordu z danymi, co
jednocześnie jest dla nas sygnałem o pra−
widłowej transmisji. Po zakończeniu sys−
tem automatycznie przechodzi do pętli
głównej monitora, czyli do oczekiwania
na kolejną komendę użytkownika.
SEND (klawisz 8) – dzięki tej funkcji
można przesłać zawartość całej lub wy−
branej części pamięci operacyjnej do
komputera PC, celem jej przechowania.
Pod pojęciem pamięci operacyjnej mam
na myśli zewnętrzną 64kB przestrzeń ad−
resową procesora 8051 odczytywaną tak
jak zewnętrzna pamięć danych – czyli po−
przez sygnał /RD procesora. W praktyce
będzie to zawartość pamięci SRAM (U4)
umieszczonej na płytce bazowej kompu−
terka. Po wywołaniu tej funkcji na pierw−
szym wyświetlaczu pojawi się literka „S”
– ang. „send”, czyli wysyłanie, a po chwi−
li na czterech ostatnich wyświetlaczach
pojawi się napis: „− − − −”, co jest zachętą
do wprowadzeni adresu początku obsza−
ru który chcemy wysłać. 16−bitowy adres
wprowadzamy (tak jak wszystkie dane)
w postaci heksadecymalnej, używając
klawiszy „0...9, A...F“, a więc np. „8205”.
Po wprowadzeniu adresu początku musi−
my jeszcze w podobny sposób wprowa−
dzić adres końcowy wysyłanego obszaru,
np. „84FF”.
Następnie wciśnięcie klawisza „OK”
rozpoczyna transmisję danych. Wyświet−
lacz podobnie jak w przypadku funkcji
„LOAD” będzie pokazywał postęp
w transmisji wyświetlając aktualnie wy−
syłany adres rekordu (paczki danych).
Przykład: wciśnięcie sekwencji: „8”
(klawisz SEND), „8200” (adres początko−
wy), „85FF” (adres końcowy), „OK” spo−
woduje wysłanie danych z obszaru pa−
mięci
kiej pamięci (poprzez iloczyn sygnałów
/RD i /PSEN) dzięki tej funkcji można uru−
chomić załadowany wcześniej program
użytkownika. Załadowany tzn. przesłany
z komputera PC za pomocą komendy
„LOAD” lub wpisany ręcznie, a w jaki
sposób to za chwilę.
Wciśnięcie klawisza „JUMP” powo−
duje zapalenie na pierwszym wyświetla−
czu litery „J” – ang. „jump”, skocz, po
czym system oczekuje na wprowadzenie
(podobnie jak w „LOAD” i „SEND”) 16−
bitowego adresu pod który ma nastąpić
skok. Adres ten z reguły jest początkiem
programu użytkownika. Razem
z „LOAD” funkcja ta będzie najczęściej
używaną podczas ćwiczeń pisania pro−
gramów na nasz systemik. Wpisanie ad−
resu skoku a następnie potwierdzenie te−
go klawiszem „OK” rozpoczyna wykony−
wanie programu od tego właśnie adresu.
Po włączeniu naszego komputerka pa−
mięć U4 zawiera z reguły przypadkowe
dane, toteż wywołanie funkcji „JUMP”
z podaniem adresu np. „8000” (zworka
JP3) najprawdopodobniej spowoduje za−
wieszenie się systemu będące wynikiem
przypadkowej interpretacji danych zna−
jdujących się w kości SRAM. Efektem
będzie prawdopodobnie wygaszony wy−
świetlacz. Wtedy może pomóc tylko
wciśnięcie klawisza „RESET”.
BAUD (klawisz B) – funkcja pozwala
na zmianę domyślnej prędkości transmis−
ji poprzez port szeregowy. Standardowo
po włączeniu zasilania system odbiera
i wysyła dane do komputera PC z pręd−
kością 4800 bodów (bitów na sekundę).
Prędkość te można jednak zwiększyć lub
zmniejszyć. Standardowymi prędkościa−
mi przyjętymi w asynchronicznym prze−
syłaniu danych poprzez interfejs RS232c
są: 1200, 2400, 4800, 9600, 19200 bo−
dów. Możliwe są tez większe prędkości:
38400, 57600, 115200. W naszym syste−
mie można wybrać wszystkie wartości
poza tą ostatnią.
Wciskając sekwencyjnie klawisz
„BAUD” wyświetlacz DL1 pokazuje liter−
kę „b” – ang. „baud”, natomiast na pozo−
stałych ukazuje się następna prędkość
transmisji w kolejności jak wypisano
wcześniej. Na początku mniej wtajemni−
czonym radzę nie eksperymentować i po−
zostawić wartość 4800 bodów. Aby za−
kończyć i wyjść do pętli głównej monito−
ra należy wcisnąć klawisz „OK” lub „M”.
COPY (klawisz C) – funkcja pozwala na
kopiowanie wybranego obszaru pamięci
operacyjnej (kość U4) pod inny podany
adres. Wybranie tej funkcji powoduje po−
jawienie się litery „C” – ang. „copy”,ko−
piowanie na DL1, a następnie system
czeka na podanie adresu początku oraz
końca obszaru który ma być skopiowany,
oraz na adres przeznaczenia, czyli adres
Monitor – systemowy
„BIOS”
Szczerą prawda jest stwierdzenie, że
„komputer bez oprogramowania jest jak
żołnierz bez karabinu”. Ta zasada ma
swoje uzasadnienie w zestawie AVT−
2250 który właśnie uruchomiłeś lub za−
mierzasz to zrobić.
Otóż aby ułatwić pierwsze kroki w pro−
gramowaniu,komputerek zawiera goto−
wy (stworzony przez autora) bardzo pros−
ty system operacyjny, który w terminolo−
gii układów mikroprocesorowych nazywa
się „monitorem”.
Dzięki niemu po włączeniu zasilania,
układ umożliwia wykonanie podstawo−
wych operacji wejścia−wyjścia, innymi
słowy pozwala na komunikację pomiędzy
człowiekiem a systemem, oraz ewentual−
nie w razie potrzeby pomiędzy syste−
mem a komputerem PC. Podstawowymi
układami wejścia−wyjścia dla Ciebie
w tym przypadku są: klawiatura i wy−
świetlacz. W przypadku chęci połączenia
się z komputerem PC takim elementem
jest port transmisji szeregowej, który łą−
czysz za pomocą wykonanego przed
chwilą kabla.
Monitor zawiera kilka użytecznych
funkcji, które są dostępne pod niektórymi
klawiszami klawiatury. Komendy te to
skróty lub wyrazy wzięte z terminologi−
i angielskiej. Są to: LOAD, SEND, JUMP,
BAUD, COPY, EDIT, FILL.
Wywołanie dowolnej z nich odbywa
się prze naciśnięcie klawisza oznaczone−
go danym skrótem a następnie wprowa−
dzenie pewnych wartości początkowych
w zależności od wywołanej funkcji. Po
włączeniu systemu, wyświetlacz pokazu−
je przez chwilę komunikat powitania: „−
HELLO”, po czym zapala się kropka dzie−
siętna na pierwszym wyświetlaczu. Jest
to sygnał zachęty i informacja że system
jest gotowy do przyjęcia komendy od
użytkownika. Można teraz wywołać jed−
ną z funkcji,których znaczenie i sposób
posługiwania się opiszę poniżej.
LOAD (klawisz 7) – dzięki tej komen−
dzie możliwe jest wczytanie pliku wyni−
kowego – z kodem maszynowym progra−
mu utworzonego przez Ciebie w kompu−
terze PC. Po wciśnięciu klawisza na pier−
wszym wyświetlaczu pojawi się litera
„L” – ang. „load”,czyli załadowanie.
Oznacza to że system czeka na dane
z komputera PC. Dane przesyłane są
przez port szeregowy w formacie Intel−
HEX. Format ten jest najbardziej rozpo−
wszechnionym wśród systemów opar−
tych na mikrokontrolerach 8−bitowych.
Plik w takim formacie generowany jest
operacyjnej
o
adresach:
8200h...85FFh.
JUMP (klawisz 0) – jest to komenda
skoku pod wskazany adres w zewnętrznej
pamięci programu procesora. Ponieważ
kostka SRAM – U4 spełnia także rolę ta−
E LEKTRONIKA DLA WSZYSTKICH 10/97
23
Projekty AVT
pod który ma być skopiowany wskazany
obszar. Rzecz jasna nie jest konieczne po−
dawanie adresu końca przeznaczenia –
jest on określony przez ilość bajtów wy−
znaczoną z różnicy końca i początku adre−
su źródłowego. Równanie poniżej obra−
zuje sposób wykonania operacji:
Adres_startowy_źródła ........ Adres_koń−
cowy_źródła ——> Adres_starto−
wy_przeznaczenia.
Funkcja ta nie spełnia tak ważnej roli
jak np. opisane trzy pierwsze, lecz w na−
szych przykładach podczas dalszych
części kursu będziemy z niej korzystać.
Przykład, wciśnięcie sekwencji: „C”
(klawisz COPY), „8600” (adres początku
źródła), „87EF” (adres końca źródła),
„9500” (adres przeznaczenia), „OK” spo−
woduje skopiowanie obszaru pamięci
operacyjnej o adresach: 8600h...87EFh
do obszaru o adresach: 9500h...96EFh.
EDIIT (klawisz E) – funkcja edycji (mo−
dyfikowania) poszczególnych komórek
pamięci operacyjnej systemu (kostka U4).
Bardzo ważna funkcja szczególnie dla
Tych z Was, którzy nie posiadają jeszcze
komputerów. Dzięki niej możliwe jest
wpisanie własnego programu – krok po
kroku a raczej „komórka po komórce”, po
czym jego uruchomienie. Wciśnięcie kla−
wisza EDIT powoduje zapalenie na DL1 li−
tery „E” – ang. „edit”, edycja, po czym
system czeka na podanie adresu począt−
ku obszaru który chcemy modyfikować.
Po wprowadzeniu go można przystąpić
do modyfikacji. Podczas tego cztery pier−
wsze wyświetlacze pokazują adres,
a dwa ostatnie zawartość aktualnie mody−
fikowanej komórki. Adres można zmniej−
szać lub zwiększać używając klawiszy „<−
” (klawisz 4) lub „−>” (klawisz 6), by zmo−
dyfikować daną komórkę trzeba nacisnąć
klawisz „OK” . Dwa ostatnie wyświetla−
cze pokażą wtedy napis „− −” co jest za−
chętą do wpisania nowej wartości.
Aby zakończyć edycję należy wcisnąć
podobnie jak poprzednio klawisz „M”. Je−
żeli masz przed sobą działający systemik,
radzę spróbuj zmodyfikować kilka komórek
pamięci. Pamiętaj tylko aby podać adres
początkowy taki, pod którym znajduje się
dowolna komórka z kostki U4 – spójrz na
zworę JP3. Oczywiście jeżeli np. początko−
wy adres edycji będzie leżał poza obsza−
rem pamięci SRAM – U4, to nowo wpisa−
na wartość pod taki adres będzie stracona.
FIILL (klawisz F) – dzięki tej funkcji
możliwe jest szybkie wypełnianie wska−
zanego obszaru pamięci operacyjnej za−
daną wartością. Po wciśnięciu klawisza
„FILL” DL1 pokaże literkę „F” – ang.
„fill”, wypełnij, po czym poprosi o wpro−
wadzenie adresu początku i końca obsza−
ru który ma być wypełniony, po czym na−
leży jeszcze wprowadzić wartość wypeł−
nienia – stałą (8−bitową oczywiście).
Wciśnięcie klawisza „OK” spowoduje
wypełnienie zadanego obszaru.
Przykład, sekwencja: „F” (klawisz FILL),
„8000” (adres początku), „FFFF” (adres
końca), „00” (wartość wypełnienia), „OK”,
spowoduje wyzerowanie wszystkich ko−
mórek pamięci U4 które znajdują się w ob−
szarze o adresach 8000h...FFFFh.
Poza opisanymi funkcjami dostępna
jest też procedura „TEST”, której znacze−
nie już znacie drodzy Czytelnicy z po−
przedniej części niniejszego artykułu.
Podczas używania wszystkich funk−
cji należy pamiętać że ich działanie
w każdej chwili można przerwać klawi−
szem „M”. Istotną informacją jest też
Wykaz elementów
Rezystory
R1: 510...680
Kondensatory:
C1, C2: 1000uF/16V
C3: 470uF/10V
C4: 470nF...1000nF
Półprzewodniki:
M1: mostek 1A/50V
U1: 7805
D1: LED dowolna
Pozostałe:
B1: bezpiecznik 160mA
TR1: TS6/49 (patrz tekst)
JP1: ARK−2
oprawka bezpiecznika do druku
płytka drukowana AVT−2250Z
Uwagi
Kompletny kit zasilacza dostępny jest w ofer−
cie handlowej jako kit AVT−2250/Z.
Dyskietka z oprogramowanie na komputery
PC dostępna jest jako AVT−2250/D.
Niezbędne wtyki do wykonania kabla połą−
czeniowego można zamówić indywidualnie
jako: „Wtyk DB9/F z obudową” lub DB25
z obudową w dziale obsługi czytelników.
ta, że nieumiejętne czy przypadkowe
posługiwanie się funkcjami COPY,
JUMP, FILL, EDIT może spowodować
zawieszenie się naszego komputerka.
Lecz nic to, warto na początku trochę
porozrabiać i poćwiczyć, wszakże za−
wsze pod ręką jest klawisz „RESET”,
a my nic ważnego jeszcze nie napisaliś−
my jeżeli chodzi o programowanie sa−
mego procesora 8051.
Oto kilka ćwiczeń, które radzę wyko−
nać zarówno tym którzy mają jak i nie ma−
ją komputera PC w swoim, domu. Nie
jest to wprawdzie już programowanie
procesora 8051, ale ćwiczenie w nabyciu
umiejętności posługiwania się funkcjami
monitora systemu AVT−2250.
Lekcja 1
czym sprawdzenie poprzez edycję, że
wpisane dane są na swoim miejscy w ko−
lejności jak podano wyżej.
Nie wyłączamy zasilania układu i bie−
rzemy się do następnego ćwiczenia.
FILL. Proszę o wypełnienie obszaru o adre−
sach 8000h...802Fh wartością wybraną przez
siebie, a następnie sprawdzenie za pomocą
funkcji EDIT czy dane spod tego obsza−
ru,wpisane zresztą w ćwiczeniu nr 1, zosta−
ły zamazane wartością podaną przez Ciebie.
I wreszcie chyba najciekawsze ćwi−
czenie, wykorzystujące funkcję JUMP.
Ćwiczenie 1
Zadanie ma na celu poznanie funkcji edy−
cji pamięci operacyjnej „EDIT”. Proszę usta−
wić jumper JP3 w pozycji 8000h (początek
pamięci SRAM U4) na płytce bazowej kom−
puterka. Następnie proszę o wpisanie pod
kolejne adresy poczynając od adresu 8000h
następującej sekwencji danych :
„ 75, 78, 06, 75, 79, 5B, 75, 7A,
4F, 75, 7B, 66, 75, 7C, 6D, 75,
7D, 7D, 75, 7E, 07, 75, 7F, 7F,
75, 71, 55, 80, FE ”
Ostatnia dana „FE” powinna znaleźć
się pod adresem „801C”.
Kolejnym krokiem będzie np. zreseto−
wanie systemu klawiszem „RESET”, po
Ćwiczenie 2
Zadanie ma na celu poznanie działa−
nia funkcji kopiowania „COPY” wybra−
nych obszarów pamięci operacyjnej
komputerka. Proszę o skopiowanie ob−
szaru o adresach: 8000h....801Fh pod
adres 9400h. Następnie proszę skorzys−
tać z funkcji EDIT, sprawdzić, że dane
skopiowane pod adres docelowy 9400h
są takie same jak podano w sekwencji
w ćwiczeniu nr 1, aż do adresu 941Ch.
Ćwiczenie 4
Proszę wykonać skok pod adres
9400h korzystając z funkcji „JUMP”.
Podsumowanie
Prawidłowe wykonanie tego ćwicze−
nia oraz trzech poprzednich w efekcie po−
winno spowodować zapalenie na wy−
świetlaczach DL1...DL8 kolejnych cyfr od
„1” do „8” z migającymi cyframi niepa−
rzystymi, czyli: 1, 3, 5, 7. Jeżeli jesteś cie−
kawy cóż takiego się stało, to chcę Cię
Ćwiczenie 3
Zadanie pokaże jak szybko można wypeł−
nić zadany obszar pamięci za pomocą funkcji
24
E LEKTRONIKA DLA WSZYSTKICH 10/97
823169849.016.png
Projekty AVT
poinformować, że wpisałeś i wykonałeś
pierwszy program na procesor 8051!!!
Zadaniem jego było wyświetlenie ko−
lejnych cyfr na wyświetlaczu z migota−
niem nieparzystych. I choć to program ni−
czemu nie przydatny, to równie dobrze
mógł być to program sterowania całego
systemu alarmowego w Twoim mieszka−
niu albo.... możliwości jest niezliczona
ilość. I choć kilka kroków było zbędnych
aby wykonać ten program (wystarczyłoby
ćwiczenie nr 1 i 4) oraz w zasadzie nie
wiedziałeś jaką rolę pełnią poszczególne
liczby w sekwencji z ćwiczenia 1, to jed−
nak powinieneś mieć już pojęcie o tym
jak łatwo można zmusić jeden układ elek−
troniczny do wykonywania wielu funkcji
i to w zależności do naszych potrzeb.
USTAWCOM.BAT po rozpoczęciu pracy
z Twoim systemem mikroprocesorowym.
Dyskietka zawiera także drugi plik
wsadowy „DO.BAT”, który służy do
kompilowania zbiorów źródłowych napi−
sanych w języku asemblera 8051 na zbiór
wynikowy akceptowany przez system
AVT−2250. Więcej szczegółów na temat
asemblera możesz dowiedzieć się z arty−
kułu o mikrokontrolerach z tego numeru
EdW – radzę uważnie przeczytać.
Na dyskietce znajduje się także przykłado−
wy program w postaci źródłowej w zbiorze
“PRZYK01.S03”. Przyjmijmy rozsze−
rzenie „S03” jako standardowe dla na−
szych programów asemblerowych.
Po podłączeniu systemu do komputera
PC, włącz jego zasilanie. Ustaw paramet−
ry portu COM jak opisałem wcześniej. na−
stępnie wywołaj polecenie (w DOS):
> DO PRZYK01 COMx {Enter}
wpisując w miejsce „x” numer portu
szeregowego (1,2...).
Program zamieni zbiór asemblerowy
na postać wykonywalną – zbiór
PRZYK01.HEX, następnie zrobi pauzę,
podczas której powinieneś uruchomić
w systemie funkcję „LOAD” .
Teraz naciskając dowolny klawisz
w PC cie spowodujesz przesłanie zbioru
PRZYK01.HEX do portu COMx, czyli do
systemu AVT−2250.
Program który wpisałeś rozpoczyna
się od adresu 8000h w pamięci systemu,
a efekt jego działania powinien być taki
sam ja w przykładzie z ćwiczenia nr 1.
Aby się o tym przekonać uruchom funkcję
„JUMP” i sprawdź co pokaże wyświetlacz.
Przerwij działanie programu (klawisz
„M”) i porównaj, korzystając z funkcji
„EDIT” zawartość kolejnych komórek pa−
mięci począwszy od adresu 8000h (do
801Ch włącznie), z kodami instrukcji po−
danymi w ćwiczeniu nr 1.
Jeżeli wszystko przebiegło pomyślnie
test portu szeregowego możesz uznać za
zakończony. Jeżeli nie udało Ci się wyko−
nać ćwiczenia prawidłowo, sprawdź, czy
dołączyłeś system do właściwego portu
COM twego PC ta, lub czy prawidłowo
wykonałeś kabel połączeniowy.
Pozostałe lekcje zajmujące się już
prawdziwym programowaniem kontrole−
rów 8051 znajdą się już w następnym nu−
merze EdW w cyklu „Mikrokontrolery –
to takie proste”.
Dla
komputerowców
Na zakończenie krótkie ćwiczenie
sprawdzające działanie portu transmisji
szeregowej. Posiadacze komputerów PC
mogą nabyć dyskietkę startową z progra−
mami niezbędnymi do tworzenia zbiorów
z kodem maszynowym napisanego przez
siebie programu. Dyskietka posiada sym−
bol handlowy: AVT−2250 /D i można ja na−
być w dziale obsługi czytelników AVT.
Na dyskietce znajduje się asembler na
procesory 8051 oraz dwa zbiory tekstowe
z definicjami rejestrów specjalnych oraz
adresów wykorzystane w komputerku
AVT−2250: CONST.INC i BIOS.INC. Znacze−
nie ich zostanie wyjaśnione w następnym
odcinku szkoły mikroprocesorowej. Prze−
jdźmy zatem do sprawdzenia RS (eresa).
Sławomir Surowiński
* Uwaga! W cz.I artykułu (EdW 8/97) na str. 11,
szpalta 3, wiersz 10 od dołu jest „U7”, powinno
być „U15”.
Ćwiczenie 5
Jeżeli wykonałeś poprawnie poprzed−
nie ćwiczenia, wyłącz zasilanie systemu
AVT−2250. następnie podłącz komputer
PC do systemiku za pomocą wykonane−
go kabla transmisji szeregowej (nie mu−
sisz wyłączać przy tym swego PC ta).
Jak wspomniałem wcześniej paramet−
ry transmisji z naszym systemem mikro−
procesorowym są następujące: pręd−
kość: 4800 bodów, bez kontroli parzysto−
ści, 8 bitów danych, 1 bit stopu.
Takie parametry wolnego portu COM
w PC cie można ustawić z np. poziomu
DOS a za pomocą polecenia:
> MODE COMx:4800,n,8,1
gdzie oczywiście w miejsce „x” należy
wpisać numer portu COM dołączonego
do naszego systemu.
Na dyskietce znajduje się plik wsadowy
„USTAWCOM.BAT” który ustawia takie
parametry. Jeżeli planujesz kontynuację
nauki programowania przy pomocy syste−
mu AVT−2250, powinieneś umieścić takie
polecenie, ustawiające port COM w pliku
AUTOEXEC.BAT. Zaoszczędzi Ci to każdo−
razowego ręcznego wywoływania pliku
E LEKTRONIKA DLA WSZYSTKICH 10/97
25
823169849.017.png
Zgłoś jeśli naruszono regulamin