
Główna O nas Kontakt Projekty Timer NE555 ST6 Realizer Historia Linki
Nowość!! Realizer - Graficzne programowanie mikrokontrolerów >>>>
Realizer kontra Bascom
Marek CHIMIAK ![]()
Rozwój elektroniki w ostatnich
dziesięcioleciach zostawił swoje piętno w każdej
dziedzinie życia. Pionierzy elektroniki chyba nie zdawali sobie sprawy, że ich
działania sprawią tak gwałtowny rozwój. Praktycznie
z elektroniką mamy do czynienia na każdym kroku,
spotykamy ją wszędzie od zabawek do statków kosmicznych. Powoduje to, że już
od najmłodszych lat swego życia musimy oswajać z nią siebie jak i
swoich bliskich. Nikogo chyba nie trzeba przekonywać, że elektronika
jest obecnie dominującą dziedziną techniki. Systemy mikroprocesorowe znajdują
obecnie zastosowanie w następujących dziedzinach: technika motoryzacyjna,
sterowanie przemysłowe, technika telekomunikacji,
elektronika domowa.
Zdecydowana większość układów elektronicznych
zrealizowanych techniką mikroprocesorową, jest nie tylko łatwiejsza w
budowie, ale i znacznie tańsza od swoich odpowiedników budowanych z
wykorzystaniem standardowych układów cyfrowych, nie wspominając już o
analogowych. Jednak poważnym utrudnieniem w stosowaniu tych nowoczesnych
elementów jest fakt, że sam mikroprocesor niczego "nie potrafi" i do
jego działania potrzebny jest program, którego napisanie sprawia niektórym
konstruktorom trudności. Z tego powodu powstały i wciąż powstają nowe narzędzia
ułatwiające pisanie programów na mikroprocesory. Pisane przez zawodowców i
amatorów, nie wszystkie znalazły uznanie i popularność. Spora liczba
programistów jako podstawowe narzędzie programistyczne wykorzystuje w swojej
pracy asembler. Jest to język niskiego poziomu, dający bardzo krótkie, zwarte
kody wynikowe i gwarantujący najszybsze wykonywanie programów, ale jednocześnie
wymagana jest spora wiedza w jego stosowaniu. Niechęć do poznawania nowego i
przyzwyczajenia sprawiają, że niechętnie sięgamy po nowe narzędzia
programistyczne takie jak BASCOM czy ST-REALIZER. W dalszym ciągu
dla większości słowo mikroprocesor, budzi strach i przerażenie, a
stwierdzenie, że można się tej sztuki nauczyć w wieku 13 czy 14 lat rodzi uśmiech
na twarzy. Spróbujmy, więc odpowiedzieć na pytanie: Czy rzeczywiście
sztuka programowania mikroprocesorów jest trudną sztuką?.
CHARAKTERYSTYKA PROGRAMÓW BASCOM I ST-REALIZER.
REALIZER jest programem stworzonym przez firmę
Actum. Szczególnie polecany jest wszystkim tym, którzy dysponując skromną
wiedzą z zakresu elektroniki, chcieliby w swoich projektach zastosować
mikroprocesor. Ktoś powiedział, że REALIZER to narzędzie dla opornych
– i słusznie. Nie jest tu bowiem wymagana żadna znajomość architektury
mikroprocesora, ani też znajomość języka programowania. Aby napisać program
na mikroprocesor, należy po prostu opisać jego działanie w sposób graficzny,
stosując przy tym powszechnie znane symbole graficzne bramek logicznych,
liczników, przekaźników itd. REALIZER umożliwia w ciągu dosłownie
kilku chwil napisanie nawet bardzo zaawansowanego programu, przetestowanie go za
pomocą symulatora programowego i zaprogramowanie procesora. Jest to doskonałe
narzędzie umożliwiające postawienie pierwszego kroku w świecie techniki
cyfrowej. Bo czyż ostatecznie musimy zgłębiać tajniki budowy
mikroprocesora?. Przecież możemy potraktować mikroprocesor jak czarną
skrzynkę, która posłusznie wykonuje nasze polecenia, a sposób, w jaki ona to
robi może nas już zupełnie nie interesować.
BASCOM jest może językiem nieco trudniejszym, wymagającym większej
wiedzy i umiejętności, ale w zamian oferuje znacznie bogatsze funkcje
programistyczne. Ten profesjonalny program stworzony przez firmę MCS
ELECTRONICS w 1999 roku, stanowi odmianę powszechnie znanego BASICA. BASIC
był jednym z pierwszych języków programowania, który zaszyty był pamięci
kultowych już dziś ZX-Spectrum czy Commodore. Był on nie tylko językiem
umożliwiającym porozumiewanie się z komputerem, ale stanowił prosty system
operacyjny. Krytykowany przez „rasowych” programistów, był dla większości
pierwszym językiem z pomocą którego rozmawiali z komputerami. O popularności
tego języka świadczy fakt, że każdy nowo wypuszczany na rynek system
operacyjny DOS, zawierał prosty interpreter języka BASIC. Udoskonalany i
unowocześniany, znajdował się niejako automatycznie na każdym komputerze PC,
co pozwoliło szerokim rzeszom użytkowników na zaznajomienie się z tym językiem.
Jako, że język ten umożliwiał „ludzką” niejako rozmowę z komputerem,
zyskał wielu sympatyków. BASCOM jest językiem zawierającym potężny zestaw
narzędzi, umożliwiający dostęp do techniki procesorowej nawet dzieciom. Ten
nowoczesny język programowania, wyposażony został w dziesiątki poleceń
specyficznych dla techniki mikroprocesorowej, co niewątpliwie stanowi o jego
sile. BASCOM jest językiem wyjątkowo "przyjaznym" i prostym.
Pisząc program w BASCOMIE, najczęściej używamy słów i skrótów pochodzących
z potocznego języka angielskiego. Zamiast szeregu instrukcji asemlerowskich jak
np. LDX, LDA, BNE, JMP, EQU itd. mamy tu polecenia typu IF (jeżeli),
THEN (to), ELSE (w przeciwnym razie), REPEAT UNTIL
(powtarzaj do momentu aż...) itp. BASCOM zawiera wszystko to, co jest
potrzebne do napisania programu, skompilowania go, przetestowania i
zaprogramowania procesora.
REALIZER KONTRA BASCOM
Który z języków wybrać?
Wybór jest trudny. Sam osobiście wybrałem kiedyś ten pierwszy – jest to
bowiem najszybszy sposób na zbudowanie pierwszego urządzenia
mikroprocesorowego. Z doświadczenia wiem, że osoby które z elektroniką nie
miały w przeszłości kontaktu, wybierają REALIZERA. Kiedy jego możliwości
przestają wystarczać, sięgamy po inne narzędzia projektowe. Czym różnią
się te dwa programy?
REALIZER jest edytorem graficznym, przy jego użyciu
programy nie pisze się, lecz „maluje”. Programy tworzy się wręcz
intuicyjnie - śmiem twierdzić, że wystarczy spojrzeć na zapis programu w
REALIZERZE i już wiadomo co program „robi”, czego na pewno nie można
powiedzieć o BASCOMIE. BASCOM jest edytorem tekstowym, napisanie programu wiąże
się z koniecznością poznania poleceń i składni języka. Ktoś powie -
przecież tak samo trzeba poznać moduły funkcjonalne REALIZERA. Oczywiście -
lecz większość symboli używanych w REALIZERZE znamy z lekcji elektrotechniki
czy automatyki w szkole średniej.
Przedstawiony poniżej prosty przykład obrazuje różnicę w stylu
programowania.
Zadaniem procesora jest załączanie i wyłączanie diody z częstotliwością 1
Hz. Program zapisany w BASCOMIE stanowi
ciąg instrukcji powtarzany w pętli DO - LOOP, ustaw stan wysoki na
pinie 1 portu D (SET PORTD.1), odczekaj sekundę
(WAIT 1), ustaw stan niski na pinie 1 portu D (RESET PORTD.1),
odczekaj sekundę i powtórz (LOOP)
Programu w języku REALIZERA nie trzeba chyba tłumaczyć - wystarczy pobrać z
biblioteki odpowiednie symbole graficzne, a mądry kompilator przetłumaczy
rysunek na jezyk procesora.
Przyglądnijmy się obu programom i odpowiedzmy na pytanie – który z nich
jest czytelniejszy?.
| BASCOM | REALIZER |
|
CONFIG PIND.1 = OUTPUT |
|