Všeobecně
1. Nikdy mě nezajímal operační systém, ve kterém bych si z
různých důvodů (vysoká cena, nedostupnost nebo pro neprogramátora
vysoká složitost vývojových prostředků) nebyl schopen napsat svůj vlastní
užitečný program. Pro Linux existuje opravdu velké množství vývojových
prostředků. V úvodu zmíním 3 nebo 4, které se částečně vymykají určitým
konvencím. Jde o jazyk Python, který patří k jednodušším na učení, ale
umožňuje jak strukturální, tak objektově orientované programování. Jisté
potíže mi dělá návrh hezkých grafických uživatelských rozhraní. Dále jde o
jazyky Java, ve kterých se dnes velice často píší aplikace pro mobilní
androidy. Neopomenu však oblíbený (vidlácký) Basic, ve kterém rád rychle
kreslím jednoduché aplikace. V Linuxu jsem si nainstaloval dvě různá
vývojová prostředí - placené Xojo, které jsem popsal už při tvorbě
aplikací pro Windows. Funguje pouze na 64 bitové architektuře. Mám jen demo
verzi, která neumožňuje distribuci programů. Jako další prostředí jsem
instaloval Gambas, který je k dispozici zadarmo a pro mé použití na vývoj
ham programů je naprosto vyhovující, snadno se učí, distribuuje se i verze
32 bit a existuje velké množství příkladů s programy.
2. Možná jsem mnoho konzervativních čtenářů z řad hamů zklamal tématy,
která jsem do popisu malého EME projektu zahrnul. Omlouvám se, ale jsem
přesvědčen, že seriózní QRP práce nebo dokonce QRP EME práce není bez
mikropočítačů a SW možná. Vím, že mnozí z čtenářů se nikdy nestanou
profesionálními programátory, stejně tak, jako nejsou profesionálními
radiotechniky. Ke QRP práci patří hlavně využití dnes speciálních druhů
provozu (JT-65, JT-9, FT-8, ...), které bez počítačů nelze realizovat. QRP
však nelze účinně dělat ani bez pečlivého nastavení stanice. Ať už jde o
různé tunery, bez nastavování a přepínání celé řady parametrů. Proto jsem
se naučil, vyzkoušel jsem, popsal a popularizoval jedno z témat, které ke
QRP stanici patří - úvody do algoritmizace a řízení malé stanice. Byť
vidlácké, jednoduché, levné, časově nenáročné. Bohužel, neplánoval jsem,
že během činnosti budu mít problémy s
Windows 10 a budu se muset rychle
rozhodnout, jak s projektem malé stanice pokračovat dále.
Proč Gambas?

Okopíroval jsem jako odpověď celou obrazovku z Wikipedie.
Moje důvody byly:
- šel nainstalovat na malý notebook Asus 1000 Eee, který si beru na cesty.
Lze se na něm, mimo jiné, učit programování. Psal jsem na něm stránky
tohoto webu, když jsem byl u dcery v Rotterdamu ...
- Gambas má výborné grafické prostředí, lze vytvářet krásná grafická
rozhraní "kreslením". Technik programy kreslí. K dispozici jsou QT nebo
GTK+ ...
- Vlastní jazyk je podobný Visual Basic. To je program pro techniky a
vidláky.
- Lze snadno programovat síťová řešení, různou komunikaci, včetně
komunikace přes USB/RS-232
Jak začít?
Já jsem začal takto:
- Stáhnul a nainstaloval jsem si Gambas poslední verze do notebooku.
- Koupil jsem si elektronickou publikaci na alza.cz, která se týká
Linux - viz obrázek vpravo.
Pan Kameník vytvořil výborné dílo. Přesto mu nikdy
neodpustím ten název. Příkazový řádek dlouho a zbytečně děsil mnoho
windowsáků. Já ten název nemám rád, protože pokud vás má něco děsit u
moderního systému, tak je to nekonečné bádání na Internetu a manuální
editace registrů, aby OS dělal to, co má.
V Linuxu se jedná o terminálový program, kterým lze
nastavit a konfigurovat některé věci, které dosud nemají grafická
rozhraní. Název "příkazový řádek", zdá se mi, možnosti a využití
degradují.
Pokud si Gambas v tomto okamžiku spustíme, můžeme si
vyzkoušet naprogramovat některá jednoduchá udělátka.
První tři algoritmy, na kterých jsem si zkoušel
jednoduchost programování ...
Ve svých programech vždy potřebuji:
1. Zapsat data do souboru, přečíst data ze souboru.
2. Z programu spustit další program.
3. Z programu ovládat mikropočítače přes USB po sériové lince ....
Ono je ve skutečnosti těch algoritmů mnohem víc, ale to je nad rámec
úvodního článku. Takže jsem si nakreslil první uživatelská rozhraní,
např. takto:
|
 |
 |
Grafický design je jedna
věc, potřebujeme však napsat procedury ovládacích prvků (komponent).
To se musíme naučit, jak se to dělá. Já jsem si stáhnul z internetu v
pdf a koupil tištěnou příručku - viz obrázek vpravo.
Tištěnou proto, že si často dělám tužkou jednoduché
poznámky přímo do textu knihy. Prostě - nejsem programátor, zapomínám
a často mi dělá také problém pochopit, jak některé věci lidé více
zasvěcení do IT technologií mysleli.
Uvedená příručka je výborná, autor byl určitě nejen
vynikající odborník, ale také vynikající pedagog.
Na dalším obrázku vidíte, jak vypadá textový editor
z vývojového prostředí. Vidíte, jak vypadají příkazy If ... Then,
které testují stav použitého přepínače a podle toho jeho stavu něco
dělají, např. zapisují do souboru metodou streamu dvacet bajtů nebo
vytvářejí soubor k zapisování, pokud není nebo v něm mažou data, pokud
existuje. Ale to už jsou podrobnosti nad rámec této jednoduché
ilustrace. |
 |
 |
Zkouška tří studijních algoritmů ...
Podobným způsobem jsem vyrobil své první tři programy pro Linux v
Gambasu, na kterých jsem se učil základům programování. První (pod
ikonami vlevo) zapne a zhasne LED diodu přes USB port s převodníkem a
PICAXE. Ten druhý (napravo) vpodstatě udělá totéž, ale musíme do řádku
napsat všech 5 bajtů protokolu. Pokud je poslední bajt 255, žárovka se
rozsvítí, pokud je 0, žárovka zhasne. Pod nimi je třetí miniprográmek,
na kterém jsem se učil spouštět jiný program pomocí instrukce Shell.
Jak vidíte, všechny algoritmy jsem zkoušel z
grafického rozhraní. Dělal jsem to na jiném účtu stejného notebooku.
Zrovna jsem jel rychlíkem z Českých Budějovic do Brna a tak bylo na
učení dost času.

|
Abyste si
mohli prohlédnout moje vidlácké psaní algoritmů, uvádím zde tři
textové soubory se zdrojovými kódy instrukcí Gambas Basic:
1. Spuštění
programu pomocí Shell.
2. Zápis
textu do souboru.
3. Instrukce k sériové
komunikaci přes USB/RS-232.
Poznámka: Protože jsem s Linuxem začal dělat před
několika dny, nejsem zběhlý a zasvěcený do celé řady věcí. Např. u
sériové komunikace jsem musel zjistit, jak se podíváme, že po
připojení převodníku USB nám tento existuje, kde ho v operačním
systému najdeme, jak nastavíme práva přístupu. Proto jsem uvedl jako
velice důležitou publikaci tu od pana Pavla Kameníka. Všechny tyto
věci se dělají v terminálu. V textovém souboru o sériovém portu jsem
si instrukce napsal hned do úvodu.
Závěr
Nainstaloval jsem, vyzkoušel jsem. Programování v
Gambasu je tak jednoduché, že si jednodušší způsob nedovedu
představit. Čtenáři mi prominou, že jsem opět použil vidlácký způsob
výuky, nikoliv školní. Školní přístup k výuce programování bývá často
založen na pochopení syntaxe jazyka a základních struktur, které se
používají. Já vycházím od jednodušších syntaxí a struktur k těm
složitějším. Kdokoliv může pokračovat dál. Ověřit si komunikace pomocí
TCP/IP, práci s databázemi. Nebo celou řadu jiných algoritmů. Záleží
na tom, co se potřebujete rychle naučit a co má váš další projekt
dělat. Můj projekt má řídit TCVR při ham komunikaci.
Původně byl napsaný pro Windows, ale už ho mám i pro Linux,
hi. |
|