You are on page 1of 5

Hit roku 2000

BASCOM College
Analizator kodu RC5

Ćwiczenie 3
Układ, z którego budową i sposobem mu i ponownego zaprogramowania proceso− programistę. Najczęściej takie lub inne za−
działania zapoznamy się za chwilę, jest nie ra. To jest właśnie nasza najbliższa przy− chowanie się programu uzależnione jest od
tylko ćwiczeniem praktycznym BASCOM szłość, a już teraźniejszość elektroniki: proste przewidzianych czynników zewnętrznych,
College. Jest także pełnowartościowym urzą− i tanie układy, których cała, niekiedy znaczna takich jak upływ czasu, naciśnięcie klawisza
dzeniem laboratoryjnym, i to w dodatku ta− “inteligencja” skupiona jest w sterującym ni− lub odebranie przez procesor danych z ukła−
kim, które w razie potrzeby możemy zmonto− mi programie. dów peryferyjnych. Pojawia się teraz kolejne
wać w ciągu kilku minut, a po wykorzystaniu Schemat układu został pokazany na ry− pytanie: jakie są podstawowe zasady kon−
zdemontować i nie zawracać nim sobie wię− sunku 1. Nie ma tu wiele do skomentowania, struowania programów, obojętne czy kompu−
cej głowy. Jest to nowy temat, który w naj− zastosowałem w układzie tani i popularny terowych, czy przeznaczonych do umie−
bliższej przyszłości będzie kontynuowany na procesor typu AT89C2051 i najprostszy wy− szczenia w pamięci stałej procesora?
łamach Elektroniki dla Wszystkich: proce− świetlacz alfanumeryczny LCD mieszczący Bardzo rzadko piszemy program, którego
sor jako uniwersalne narzędzie warsztato− 16 znaków w pojedynczej linii. Wyświetlacz zadaniem jest po prostu wykonanie szeregu
we! Właśnie tak, Moi Drodzy, w najbliższym sterowany jest w trybie czterobitowym, instrukcji i zakończenie pracy. Oczywiście,
czasie dowiecie się, jak w ciągu kilku minut, a transmisja danych może odbywać się tylko takie programy niekiedy powstają, ale nawet
w awaryjnej sytuacji, możecie zmontować w kierunku do wyświetlacza. Odbiornikiem trudno mi w tej chwili przypomnieć sobie ja−
sobie miernik częstotliwości o całkiem przy− kodu RC5 jest dobrze Wam znany układ kiś sensowny przykład takiego rozwiązania.
zwoitych parametrach, układ do pomiaru re− TFMS5360, którego wyjście dołączone zo− Możemy jednak wyobrazić sobie, że proce−
zystancji lub pojemności kondensatorów, stało do wejścia INT0/P3.2 procesora. sor po włączeniu zasilania i wyjściu ze stanu
obrotomierz czy nawet, o zgrozo: nawijarkę Częstotliwość pracy generatora zegaro− RESET wykonuje pewne czynności, a na−
do cewek! wego procesora stabilizowana jest rezonato− stępnie kończy działanie, oczekując na wyłą−
Układ jest prostym przyrządem laborato− rem kwarcowym o częstotliwości podstawo− czenie i ponowne włączenie zasilania. Naj−
ryjnym, którego zadaniem jest ułatwienie wej 11,059 MHz, a procesor resetowany jest częściej jednak program pracuje w niekoń−
pracy konstruktorom budującym urządzenie po włączeniu zasilania za pomocą układu czącej się pętli programowej i zależnie od
wykorzystujące kod RC5. Sądzę, że układ z rezystorem R2 i kondensatorem C1. okoliczności zewnętrznych wykonuje okre−
analizatora kodu RC5 może także oddać nie− Potencjometr montażowy PR1 służy do ślone przez programistę czynności. Instruk−
ocenione usługi pracownikom serwisu zaj− regulacji kontrastu wyświetlacza, a jumper cje opisujące te czynności umieszczone są
mującym się naprawą sprzętu RTV. JP1 pozwala na włączenie podświetlania wy− najczęściej w podprogramach, które także
Ponieważ sercem urządzenia jest procesor świetlacza (o ile zastosujemy wyświetlacz mogą mieć postać pętli, z której wyjście uwa−
typu AT89C2051, układ jest niezwykle pro− LCD posiadający taką możliwość). runkowane jest zaistnieniem pewnych, okre−
sty w budowie i niezbyt kosztowny. Taki sam To wszystko, co można powiedzieć na te− ślonych zdarzeń. No cóż. Moi Drodzy, z jed−
układ wykonany konwencjonalnymi (czytaj: mat hardware’owej części naszego analizato− nej strony mamy nowoczesną technologię,
archaicznymi) metodami z wykorzystaniem ra. Skupmy się teraz na najważniejszym: pro− a z drugiej automatycznie nasuwające się
dekodera RC5 i wspomagających jego pracę gramie sterującym jego pracą. skojarzenie z czymś bardzo już archaicznym:
układów cyfrowych, byłby nieporównywal− z klasycznym mechanizmem zegarowym!
nie bardziej skomplikowany i kosztowniej− Programowanie Program to właśnie taki mechanizm: jedno
szy. Ponadto, wprowadzenie jakichkolwiek Program, program mikroprocesora, pro− kółko napędza drugie, to z kolej zaczepia
zmian w układzie wykonanym klasycznymi gramowanie te słowa coraz częściej pojawia− ząbkami o następne i tak w nieskończoność,
metodami jest najczęściej bardzo kłopotliwe. ją się na stronach Elektroniki dla Wszystkich. aż do rozkręcenia się sprężyny lub w naszym
W przypadku naszego urządzenia i wielu in− Co jednak tak naprawdę oznaczają? Otóż, przypadku do wyłączenia zasilania. Nato−
nych, które zbudujemy w najbliższym czasie, program jest to zbiór instrukcji, których miast naszym, programistów zadaniem jest
wszelkie zmiany sprowadzają się najczęściej wykonanie przez procesor gwarantuje nie dopuścić, aby kiedykolwiek ten mecha−
do dodania lub zmiany kilku linijek progra− osiągnięcie celów przewidzianych przez nizm przestał działać, przewidzieć wszystkie

26 Elektronika dla Wszystkich


BASCOM
zdarzenia, jakie mogą zajść i zabezpieczyć ra i zadeklarowania zmiennych, stałych Config Lcd = 16*1a
program przed każdym ziarenkiem piasku, i podprogramów.
które może wpaść pomiędzy tryby tego me− Najważniejszym poleceniem używanym Tu bardzo ważna uwaga: do
chanizmu i zatrzymać jego ruch. Jest to zada− w naszym programie jest słynne GETRC5, określenia tego rodzaju wyświetlacza
nie bardzo trudne, wiecie przecież, że nie ma po którego wydaniu i odebraniu przez układ możemy zastosować zarówno powyższe
programu idealnego i że każdy z nich może transmisji z pilota otrzymujemy dwie warto− polecenie, jak i :
się niekiedy zawiesić (nawet słynne z nieza− ści: adres, pod jaki sygnału pilota został wy−
wodności WINDOWS98!). słany, i numer komendy, jaką sterowane Config Lcd = 16 * 1
Powiecie, że przecież program można urządzenie ma wykonać. W standardzie RC5
przetestować i usunąć z niego wszystkie plu− mogą istnieć 32 różne adresy i 64 komendy. Rodzaj polecenia zależy od typu i pro−
skwy. Otóż, nie zawsze! A zatem, obydwie wartości są mniejsze od ducenta wyświetlacza i należy go ustalić
Wszelkie testy mogą tylko stwier− 255 i mogą być zapisane jako jeden bajt doświadczalnie. Jeżeli okaże się, że na
dzić istnienie błędu, ale nie mogą go (wartość od 0 do 255). Musimy mieć także wyświetlaczu ukazuje się jedynie 8 pierw−
wykluczyć! jakiś znacznik, świadczący o odebraniu po− szych znaków żądanego tekstu, to należy
No dobrze, postraszyłem Was trochę, ale prawnej transmisji z pilota. Znacznik taki zastosować parametr "16*1". Jest to jed−
mam nadzieję że nie ostudziło to Waszego może mieć tylko dwie wartości: prawda nak przypadek niezwykle rzadki: w 99
zapału i chęci poznania fascynującego świata i fałsz, czyli logiczna jedynka i logiczne ze− przypadkach na 100 stosujemy parametr
techniki mikroprocesorowej. Nie martwcie ro. Możemy go zatem zadeklarować jako po− podany jako pierwszy. Natomiast:
się, z poważnymi problemami spotkacie się jedynczy bit. A zatem piszemy pierwsze trzy podczas symulacji programowej wy−
na pewno, niejedną noc przesiedzicie nad linijki naszego programu: świetlacza 16−znakowego ZAWSZE sto−
“odpluskwianiem” napisanego programu, ale DIM Kod as Bit sujemy parametr 16*1!!!
z pewnością nie w najbliższym czasie. Je− DIM Command as Byte
szcze jedna wskazówka: czy gracie może DIM Address as Byte Teraz uwaga, przechodzimy do bardzo
w szachy? Jeżeli tak, to dobrze wiecie, jak Co zostanie przez procesor zrozumiane ważnego fragmentu programu, decydującego
kończy się partia dla szachisty, który skupia jako konieczność zarezerwowania w pamięci o jego prawidłowym działaniu, a którego po−
uwagę na jakimś fragmencie szachownicy, RAM jednego bajtu na wartość adresu ode− prawne napisanie sprawia zwykle wiele kło−
zamiast z równą uwagą obserwować całe po− branego kodu, jednego bajtu na wartość ko− potów początkującym programistom.
le bitwy. Zupełnie tak samo ma się sprawa mendy i jednego bitu na znacznik odebrania Skąd właściwie procesor ma wiedzieć, że
z pisaniem programu. Musicie pamiętać jed− transmisji, nazwany “Kod”. dołączony do niego układ TFMS5360 zaczął
nocześnie o wszystkich szczegółach, ponie− Kolejnym krokiem będzie zawiadomienie odbierać transmisję z pilota? Popatrzcie na
waż gdzieś w dalekich zakamarkach progra− procesora, a właściwie kompilatora, z jakim schemat: wyjście układu odbiornika RC5 zo−
mu może siedzieć wredna pluskwa i zakłócać rodzajem wyświetlacza alfanumerycznego stało tam dołączone do wyprowadzenia
jego działanie! będzie miał do czynienia. Zastosujemy naj− INT0/P3.2 procesora. Skrót INT0 oznacza
Bierzmy się więc za nasz program, który tańszy wyświetlacz 16*1 znaków, a o tym wejście INTERRUPT 0, czyli wejście prze−
jak większość mu podobnych rozpoczyna się fakcie zawiadomimy kompilator za pomocą rwania sprzętowego. Powstanie na tym wej−
od ustalenia konfiguracji sprzętowej proceso− instrukcji: ściu stanu niskiego spowoduje zgłoszenie pro−
cesorowi sygnału przerwania, które zostanie

Rys. 1

Elektronika dla Wszystkich 27


BASCOM
obsłużone w przewidziany w programie spo− Wszystkie instrukcje zawarte pomiędzy pole− wać z jakimkolwiek innym wejściem, na−
sób, Jest to niezwykle ważna funkcja proceso− ceniem DO (czyli “rób”) a LOOP (czyli “pę− wet jeżeli jest to wejście przerwania sprzę−
ra, a w naszym przypadku decydująca o pra− tlę”) są cyklicznie wykonywane, a program towego. Dekoder podczerwieni TFMS lub
widłowym działaniu napisanego programu. może wyjść z pętli tylko w przypadku zaist− SFH MUSI być dołączony do nóżki proce−
Wystąpienie sygnału przerwania po− nienia przewidzianego przez programistę sora będącej wejściem przerwania INT0,
woduje tymczasowe zawieszenie przez wydarzenia. Taki wydarzeniem w naszym czyli w przypadku układu 2051 do pinu 6.
procesor wykonywania jakichkolwiek przypadku będzie wystąpienie zgłoszenia Polecenie GETRC5 analizuje odebrany
czynności i natychmiastowe wykonanie przerwania. Co jednak właściwie robi nasz kod i po stwierdzeniu jego poprawności zapi−
instrukcji związanej z przerwaniem (ob− program, kręcąc się jak pies za własnym ogo− suje adres urządzenia jako zmienną “Subad−
sługę przerwania), a następnie powrót do nem w pętli programowej? Właściwie tylko dress”, a numer komendy jako zmienną
uprzednio wykonywanego zadania. jedno: sprawdza, czy znacznik KOD nie “Command.” Jak to robi, nie wiem, nie mu−
A więc, piszemy instrukcję obsługi prze− przyjął wartości “1”. Ponieważ wszystkie in− szę i nie chcę wiedzieć. To właśnie cała
rwania: strukcje wewnątrz pętli programowej objęte przyjemność pisania programu w języku wy−
On Int0 Receiverc5 są tym uwarunkowaniem, program nie robi sokiego (w przypadku BASCOM−a “bardzo
Co oznacza, że w momencie wystąpienia właściwie niczego, wartego uwagi. Zajmijmy wysokiego”) poziomu!
zgłoszenia przerwania, czyli stanu niskiego na się jednak tym uwarunkowaniem, jak jest Po przeanalizowaniu odebranego kodu
wejściu INT0, procesor ma natychmiast prze− ono zbudowane? podprogram Receiverc5 ustawia wartość
skoczyć do podprogramu o nazwie Recei− znacznika “KOD” na 1 i zgodnie z polece−
verc5 i po jego wykonaniu powrócić do miej− Rys. 2 niem RETURN (wróć) powraca do głównej
sca w programie, w którym wystąpiło prze− pętli programowej.
rwanie. Wiemy, że wyjście układu TFMS5360 Uwaga: Każdy skok do podpro−
znajduje się zwykle w stanie wysokim, a stan gramu, zasygnalizowany przez in−
niski przyjmuje dopiero w momencie odebra− strukcję “GOSUB” musi mieć swój
nia wiązki modulowanej podczerwieni. Tak finał w treści podprogramu, który
więc, odebranie sygnału z pilota spowoduje musi kończyć się instrukcją RE−
powstanie przerwania sprzętowego. TURN!
Tym razem jednak program nie
Podprogramem “Receiverc5”, analizują− kręci się już bezcelowo w pętli. Za−
cym kod R5 zajmiemy się później, a teraz uważcie, że spełnione zostało uwa−
wydajemy polecenia zezwalające na obsługę runkowanie “If Kod =1” i wszyst−
przerwań: kie instrukcje leżące pomiędzy IF
Enable Int0 a END IF mogą zostać wykonane!
Enable Interrupts
Co oznacza włączenie obsługi przerwań Disable Int0 ‘ chwilowe zawieszenie obsłu−
w ogóle, a przerwania INT0 w szczególności. gi przerwań
Należy bardzo uważać na te polecenia i anulo− Cls ‘czyszczenie ekranu
wać je, kiedy tylko przerwania przestaną być Wydanie instrukcji IF [warunek] THEN Lcd „Com: „ ; Command ; „,Adr: „ ; Subad−
potrzebne. Niekontrolowane przerwania mogą (jeżeli [warunek] to... ) powoduje, że wszy− dress ‘wyświetlenie komunikatu
narobić większego bigosu, niż używanie in− stkie następne polecenia, aż do instrukcji Kod = 0 ‘ponowne ustawienie flagi na “0”
strukcji GOTO (zgiń, przepadnij, siło nieczy− END IF, wykonywane są tylko po spełnie− Enable Int0 ‘ponowne zezwolenie na ob−
sta!). Tak więc, wyłączymy obsługę przerwań, niu zadanego warunku. sługę przerwań
kiedy tylko przestanie być potrzebna, a na ra− A więc, program pracuje teraz w pętli,
zie zakończmy wreszcie czynności przygoto− która może być przerwana jedynie po wystą− Powrót do pętli programowej po ustawieniu
wawcze i zajmijmy się jeszcze wyświetla− pieniu zgłoszenia przerwania na wejściu flagi “KOD” na “1” spowoduje chwilowe wyłą−
czem. Wydajemy kolejno polecenia: INT0 procesora. W tym momencie następuje czenie obsługi przerwań, wyświetlenie na wy−
Cls ‘inicjalizacja i czyszczenie skok do podprogramu Receivec5, analizują− świetlaczu LCD komunikatu o adresie i numerze
ekranu wyświetlacza cego otrzymany kod, a następnie powrót do rozkazu kodu RC5, ponowne włączenie obsługi
Lcd “*Waiting for RC5*” pętli. Jak jednak przeprowadzić dość skom− przerwań, ustawienie flagi na “0” i powrót do sta−
‘wyświetlenie komunikatu wstępnego plikowaną analizę kodu? Tu właśnie docho− nu oczekiwanie na odebranie kolejnego sygnału.
(nie jest konieczny, ale ‘bajerancko wyglą− dzimy do kolejnego “highlight” programu Cały program realizujący dwie dość
da) BASCOM. Analiza kodu pobranego z wyj− skomplikowane funkcje: obsługę wyświetla−
Cursor Off ‘usunięcie z ekranu kursora ścia odbiornika IC2 zostanie przeprowadzo− cza LCD i analizę kodu RC5 zawiera jedynie
(bo “niebajerancko” wygląda) na po wydaniu polecenia GETRC5, a pod− 23 linie i można go napisać i skompilować
Popatrzcie teraz na rysunek 2, na którym program “ Receiverc5”, realizujący tę funk− dosłownie w ciągu kilku minut.
w poglądowy, graficzny sposób przedstawi− cję i określający adres i numer komendy ko− Po napisaniu programu musimy go zapi−
łem działanie naszego programu. Po wyko− du RC5 wygląda następująco: sać jako plik *.bas, a następnie skompilować.
naniu opisanych wyżej poleceń, program Tę ostatnią czynność BASCOM wykonuje
z łoskotem wpada w pułapkę, jaką jest pętla Receiverc5: automatycznie po naciśnięciu klawisza F7,
programowa zawarta w klamrach DO .... Getrc5 (Subaddress, Command) a w wyniku kompilacji otrzymujemy jedno−
LOOP. Kod = 1 cześnie pliki w formacie *.BIN i *.HEX.
Instrukcja DO .... LOOP jest jedną z naj− Return Zainteresowanym podaję kod wynikowy
ważniejszych w każdym programie napisa− programu w formacie HEX. Program zajmuje
nym w MCS BASIC. Wprowadza ona pro− Bardzo ważna uwaga: polecenie GETRC5 w pamięci procesora 654 bajty, co daje nam
gram w niekończącą się pętle, z której trudno jest "fabrycznie" przypisane do wejścia swobodny wybór dowolnego typu procesora
mu się wydostać (i bardzo mu tak dobrze!). INT0 procesora i NIE MOŻE współpraco− z podrodziny ‘X051.

28 Elektronika dla Wszystkich


BASCOM
Dim Kod As Bit Po skompilowaniu programu możemy już ści programu, odczytywania programu zapi−
Dim Command As Byte , Subaddress As Byte przystąpić do programowania procesora, po− sanego w procesorze (o ile nie został on za−
Config Lcd = 16 * 1 ' lub Config Lcd = 16 * 1a nieważ przetestowanie programu w symulacji bezpieczony przed odczytem), a także do
Reset Tcon.0 sprzętowej jest absolutnie niemożliwe. Emula− możliwości zabezpieczania własnego progra−
On Int0 Receiverc5 tor sprzętowy działa zbyt wolno, aby prawidło− mu. Jednak ręczna obsługa programatora jest
Enable Int0 wo odebrać i zinterpretować kod RC5. Mam na tyle skomplikowana, że poświęcimy temu
Enable Interrupts nadzieję, że wszyscy moi Czytelnicy zapatrzy− zagadnieniu osobną lekcję i na razie radzę
Cls li się już w programator procesorów rodziny zaznaczyć okienko “AUTO FLASH” i wyko−
Lcd "Waiting for RC5" 89CX051 − MCS Flashprogrammer, wykona− nać programowanie procesora całkowicie au−
Cursor Off ny samodzielnie lub zakupiony gotowy z ofer− tomatycznie.
Do ty handlowej AVT. Zapoznamy się najpierw ze
If Kod = 1 Then wszystkimi czynnościami przygotowawczymi,
Disable Int0 a następnie przystąpimy do programowania
Cls pierwszego naszego procesora. Pragnę jeszcze
Lcd "Com: " ; Command ; ",Adr: " ; Subaddress tylko przypomnieć, że programator powinien
Kod = 0 być dołączony do komputera za pomocą typo−
Enable Int0 wego kabla drukarkowego i powinien być za−
End If silany napięciem stałym, niekoniecznie stabili−
Loop zowanym o wartości 14 ... 16VDC.
Przed rozpoczęciem programowania musi−
Receiverc5: my wykonać następujące, rutynowe czynności:
Getrc5(Subaddress , Command) 1. Otworzyć panel “OPTIONS” Rys. 3
Kod = 1 w podmenu “COMPILER”, sprawdzić nastę−
Return pujące opcje: Rys. 4
− panel “OUTPUT”: nie zmieniać usta−
:100000000202310202C900000000003200000000BC wień domyślnych
:10001000000000320000000000000032000000007C
:100020000000003200000000000000320000C0E0CC
− panel “COMMUNICATION”: opcja
:10003000741B1470FDD0E0002274C811451145D521 “BAUDRATE” jest nieistotna w przypadku
:10004000E0F9D8F522C0E07419112E1470FBD0E04D programów nie wykorzystujących komuni−
:10005000220521AF21BF0908C0E074C01191D0E092
:10006000D292C293A2E49294A2E59295A2E69296CD
kacji za pomocą portu RS, natomiast
:10007000A2E79297D293C293A2E09294A2E19295C2 w okienku “FREQUENCY” (rys.3) powinni−
:10008000A2E29296A2E39297D293C293112E112EDE śmy ustawić częstotliwość wykorzystywane−
:1000900022C29280CDC292C293C297C296D295D20A go rezonatora kwarcowego. Najczęściej bę−
:1000A00094D293C293112ED293C293112ED293C2A3
:1000B00093112EC294D293C293112E74281191746D dzie to najpopularniejszy kwarc 11.059MHz.
:1000C0000E119174061191227401119111457480E1 Nieprawidłowe podanie częstotliwości re−
:1000D000119175210022E58104F5F0241EF581A817 zonansowej oscylatora kwarcowego może
:1000E000F0E40400000000601430B2F6F608E40406
:1000F00000000000600720B2F6F60880E4A8F0E6F1
prowadzić do złego działania programu,
:100100000826C313F9C31329FDA8F079017A0DE677 w szczególności podczas wykonywania po−
:1001100008C39DE4B33370010869F913EB33FBECBA lecenia “GETRC5)!
:1001200033FCDAEBEB543FFEEB33CC33CC33CC3344
− w panelu “I2C” (rys. 4) powinniśmy za−
:10013000541FFFE5F014F58122AE02760008DEFBC5
:1001400022780C3139200111C2D574082A14F8E63E znaczyć, do którego wyprowadzenia proce−
:1001500030E706B2D5780831BC20010F74102A149C sora dołączony jest odbiornik kodu RC5
:10016000F8E630E706B2D5781031BC78107908751A (w przypadku naszego programu jest to wy−
:10017000F008EAA4FBE626F6C0D0BA0104D0D0808D
:100180000BD0D0AE021E08E633F6DEFA780CAE02D3
prowadzenie p3.2 ).
:10019000E633F608DEFAAE02780CE6970908DEFAD6 − w panelu “MISC” należy wybrać typ
:1001A00019781040127908C3780CAE02E697F60968 procesora, który zamierzamy zaprogramo−
:1001B00008DEF9781019067908DBBA22AE02D3E618
:1001C000F43400F608DEF822C00179105115D00190
wać. Najczęściej będzie to typ domyślny − Rys. 5
:1001D000C00174102A14F8E6C0E0780831397808B4 AT89C2051.
:1001E000760AE9240FF9E4F719C0013141780CD0FF − w panelu “PROGRAMMER” (rys. 5) Jeżeli wszystkie powyższe czynności
:1001F00001E62430F77810AE02E44608DEFC70E831 powinniśmy przede wszystkim ustawić typ zostały wykonane poprawnie, a program
:10020000D0E020010730E704742D19F7A801D001D0
:100210007A10511E22AE02E6F70809DEFA22E6F74E stosowanego programatora. Będzie nim, został skompilowany (dla pewności naci−
:1002200060040809DAF822E660061200510880F737 oczywiście, MCS FLASHPROGRAMMER. skamy jeszcze raz F7), to wkładamy proce−
:10023000227581351195C288D2A8D2AF11C8780B2A Drugą ważną czynnością jest zaznaczenie sor w podstawkę i naciskamy F4 (lub klika−
:10024000E88360061200510880F602025D5761697A
:1002500074696E6720666F722052433500740C110A
(lub pominięcie zaznaczenia) “ptaszkiem” my myszką kolejno “PROGRAM”
:100260009175F00030050375F0017401C395F070CD okienka “AUTO FLASH”. Jeżeli ta opcja zo− i “SEND TO CHIP” .
:10027000030202770202C611C8C2A8780BE88360A5 stanie zaznaczona, to programowanie proce− Sygnałem świadczącym o rozpoczęciu
:10028000061200510880F602028E433A20007833AD
sora odbędzie się całkowicie automatycznie programowania procesora będzie “zapalenie
:100290007A017922D20131C8C20178225127780B24
:1002A000E88360061200510880F60202B22C413A3F i jeżeli program nie napotka na jakieś nie− się” diody LED w programatorze. Dioda ta
:1002B000200078347A017922D20131C8C201782233 przewidziane przeszkody, to kilka sekund po będzie świecić z różną intensywnością przez
:1002C0005127C205D2A8020261C0D0C2D3C0E0C08B naciśnięciu przycisku F4 otrzymamy zapro− kilka sekund (dłużej w przypadku większych
:1002D000F0C083C082C000C001C002C003C004C01F
:1002E00005C006C007C008C009C00CC00DC010C0C2 gramowany procesor. Niezaznaczenie opcji programów), a jej wyłączenie będzie sygna−
:1002F000111200D67834EFF67833EEF6D205D0112D “AUTO FLASH” spowoduje, że po naciśnię− łem, że już można wyjąć (dosłownie “jeszcze
:10030000D010D00DD00CD009D008D007D006D00521 ciu F4 uzyskamy dostęp do okna obsługi pro− ciepły”) procesor z podstawki programatora
:10031000D004D003D002D001D000D082D083D0F05E
:10032000D0E0D0D03200000000000000000000004B
gramatora i możliwości ręcznego “grzeba− i zainstalować go w naszym analizatorze ko−
:00000001FF nia” w procesorze, kasowania jego zawarto− du RC5!

Elektronika dla Wszystkich 29


BASCOM
Mamy teraz dwie możli−
wości do wyboru: albo
zmontować układ analiza−
tora na naszej płytce testo−
wej, albo wykorzystać no−
wą płytkę uniwersalną do
procesorów ‘X051, która
opisana będzie w jednym
za najbliższych numerów
EdW.
Na rysunku 6 został
pokazany schemat połą−
czeń, jakie musimy wy−
konać na naszej płytce te−
stowej. Jest to alterna−
tywne rozwiązanie w stosunku do monto− Technika montażu
wania analizatora kodu RC5 jako samo− układów procesorowych
dzielnego układu. Rozwiązanie takie nale− na “uniwersalce X051”
ży zastosować, jeżeli nie mamy w najbliż− opisana jest w artykule Rys. 6
szym czasie zamiaru budować wielu ukła− traktującym o tej płytce.
dów wykorzystujących kod RC5 i analiza− Na zakończenie tego ćwiczenia mam dla by być np. SENDRC5 [adres, komenda]. Wi−
tor będziemy wykorzystywać jedynie oka− Was ciekawą propozycję. Opanowaliśmy już zja dwóch układów mikroprocesorowych po−
zjonalnie. Tu właśnie wychodzi na jaw technikę odbioru sygnałów RC5, które mogą rozumiewających się ze sobą za pomocą
kolejna zaleta naszej płytki testowej: przy znaleźć zastosowanie nie tylko w sterowaniu łączności na podczerwień wydaje się być
jej pomocy możemy w razie potrzeby bły− sprzętem RTV, ale także i w innych dziedzi− bardzo nęcąca! Zastanówcie się nad tym!
skawicznie zmontować sobie prosty przy− nach. Czy nie sądzicie, że warto by było na−
rząd pomiarowy, którego budowa jako sa− pisać sobie procedurę (może jako wstawkę
modzielnego układu nie miałaby ekono− asemblerową?) o odwrotnym działaniu Zbigniew Raabe
micznego sensu. w stosunku do polecenia GETRC5? Mogło to e−mail: zbigniew.raabe@edw.com.pl

R E K L A M A · R E K L A M A · R E K L A M A · R E K L A M A · R E K L A M A · R E K L A M A

Z OFERTY AVT
ZWROTNICE I FILTRY GŁOŚNIKOWE FIRMY JANBO
I M PED A N C J E
CZĘSTOTLIWOŚCI MOC C EN A
KO D T YP O B C I Ą Ż EŃ UW A GI
PO D Z I A Ł U ( H z ) ( VA ) N ET T O
( OH M)
ZWROTN01 B-2 5000 80 2x8 Dwudro¿na 12/6 dB/okt. 11.89 z³
ZWROTN02 B-2 5000 80 2x8 Dwudro¿na 12/6 dB/okt. 11.89 z³
ZWROTN03 BOT-2 1800 140 2 x 8 lub 2 x 4 Dwudro¿na, polecana przy mocnym g³oœniku wysokotonowym. 31.97 z³
ZWROTN04 P-2-18 2700 lub 4200 220 2 x 8 lub 2 x 4 Dwudro¿na, profesjonalna - 18 dB/okt. 54.10 z³
ZWROTN05 S£-OT-8 800 / 6500 110 3x8 Trójdro¿na, odpowiednik fabrycznych zwrotnic typu ALTUS 25.41 z³
ZWROTN06 S£-OT-U 850 / 6600 110 3 x 8 lub 3 x 4 Trójdro¿na, ulepszony ALTUS 31.97 z³
ZWROTN07 BOTES-8 520 / 5400 110 3x8 Trójdro¿na, z korekcj¹ fizjologiczn¹ - 4 dB 47.54 z³
ZWROTN08 J-3P/2 1160 / 6000 160 3 x 8 lub 3 x 4 Trójdro¿na, do g³oœników TONSIL - cewka powietrzna 41.80 z³
ZWROTN09 A-BW226 220 / 2350 210 3 x 8 lub 3 x 4 Trójdro¿na, do g³oœników TESLA ARN 226 59.84 z³
ZWROTN10 J-SB-FE 125 120 8 + 8 lub 4 + 4 Odga³êŸnikowa, do zestawu superbasowego + satelity 63.93 z³
ZWROTN11 J-3AN 700 / 4600 160 3 x 8 lub 3 x 4 Trójdro¿na, z korektorem impedancji ( GDN i GDM ) 55.74 z³
ZWROTN12 X-3 400 / 5000 300 3 x 8 lub 3 x 4 Trójdro¿na, do zestawów estradowych 78.69 z³
ZWROTN13 Z-F130 130 120 4 Samochodowy fitr basowy - jeden kana³ w obudowie 38.52 z³
FILTR01 F-8 125 lub 400 300 8 Samochodowy filtr basowy do dodatkowego subwoofer'a 40.98 z³
FILTR02 F-4 85,130 lub 400 300 4 Samochodowy filtr basowy do dodatkowego subwoofer'a 40.98 z³
FILTR03 X-1H-PI 5000 160 8 lub 4 Filtr górnoprzepustowy do zestawów z g³oœnikami PIEZO 13.11 z³

Ceny netto bez 22% VAT. Prezentowane artykuły dostępne są w sprzedaży wysyłkowej i sklepach firmowych AVT,
bliższe informacje na stronach z ofertą.

30 Elektronika dla Wszystkich

You might also like