Kategória: Elektro programy

Zmenené: 4. apríl 2013

Simulácia PIC

V tomto článku sa nebudem zameriavať na simuláciu mikrokontrolérov PIC v Linuxe, ale vo Windows. Myšlienka tohoto článku však vznikla v priamej súvislosti s výukou programovania PIC v Linuce, avšak väčšina študentov doma Linux nepoužíva a mnou používaný simulátor KTechlab vo Windows nefunguje. Študentom tak robí príprava na hodiny trochu problém…

Samozrejme, všetci si môžu stiahnuť a nainštalovať Vývojové prostredie MPLAB priamo od firmy Michrochip. Toto riešenie však nepovažujem za najlepšie, a to najmä preto, že tento program nie je lokalizovaný a je dosť komplexný, takže pre potreby výuky je to ako kanón na komáre. Hľadal som preto niečo menšie, hoci možno zložitejšie na inštaláciu, hlavne však s možnosťou grafickej simulácie. A výsledok je v tomto článku. Nie všetky nástroje, ktoré popíšem sú slobodné, ale všetky sú voľne dostupné čo je jedna z mojich zásad.

Pre prácu treba niekoľko komponentov, a to najmä:

  • textový editor na tvorbu zdrojových kódov (nie Word!);
  • kompilátor na prevod zdrojových kódov do spustiteľného tvaru;
  • simulátor na skúšanie výsledkov programovania.

Textový editor

Takže najprv nástroj na písanie zdrojového kódu programov. Samozrejme, masochistom odporúčam používať Notepad, ale všetkých ostatným zvyknem nasmerovať k textovému editoru, ktorý zvýrazňuje syntax nesmejte sa, študenti to často počujú prvý krát. Vo svete Windows je mojim víťazom textový editor PSPad. Niekoľko rokov som ho používal na tvorbu webových stránok i na prácu s Pascalom.

Takže prvým krokom je stiahnutie a nainštalovanie tohoto textového editora. Jeho aktuálna verzia nesie číslo 4.5.4 (2356) a je z roku 2009, čo však vôbec na jeho funkčnosti neuberá. Podľa domovskej stránky jeEditor PSPad voľne šíriteľný (freeware) univerzálny editor, užitočný pre všetkých, ktorí:

  • pracujú v operačnom systéme Microsoft Windows;
  • pracujú s obyčajným textom vďaka širokým možnostiam formátovania textu;
  • tvoria webové stránky obsahuje množstvo unikátnych, čas šetriacich funkcií;
  • programujú a potrebujú IDE pre svoj kompilátor umožňuje odchytávanie a spracovanie výstupov kompilácie, integráciu pomocníkov, porovnávanie verzií…
Vlastný zvýrazňovač

Vlastný zvýrazňovač

Takže stiahnuť poslednú verziu (pozor stiahnuť tú s inštalátorom) a vo Windows bežným spôsobom ju nainštalovať. Po spustení je treba pridať zvýrazňovač syntaxe pre asemblér, používaný pre PIC, pretože vo východzom nastavení nie je nastavený, hoci je súčasťou inštalácie. K tomu stačí použiť menu Nastavenia ‣ Nastavenie zvýrazňovačov. V okne, ktoré sa otvorí kliknúť v ľavej časti na prvý s označením not assigned a potom v pravej časti zvoliť vlastný zvýrazňovač PIC assembler. Výber nakoniec potvrdiť kliknutím na tlačidlo OK. Aby nedochádzalo ku zámene (konfliktu) so zvýrazňovačom pre asemblér procesorov Intel (oba používajú príponu .asm), stačí použitie zvýrazňovača pre Intel zakázať zrušením zaškrtnutia pri jeho názve. Tak ako to vidno na obrázku vpravo.

Kompilátor

Ďalšou potrebnou súčasťou je kompilátor. Výborným riešením pre 8-bitové mikrokontroléry PIC je kompilátor gpasm z projektu gputils. Nástroj gpasm je slobodnou obdobou nástroja MPASM, čo je kompilátor od Microchipu. Jeho výhodou je však multiplatformnosť, takže ho spustíte ako v Linuxe, tak i vo svete Windows. A najmä, má vysoký stupeň kompatibility s MPASM, takže drvivá väčšina kódu (všetok, ktorý robíme pri vyučovaní) môže byť použitý ako v jednom tak i v druhom kompilátore.

Pri sťahovaní sady nástrojov gpustils sa z domovskej stránky preklikáte (odkazy download) až na stránku SourceForge, a tam venujte pozornosť nielen tomu, aby ste stiahli nie len poslednú verziu (momentálne 0.13.7), ale i verziu pre Windows. Po stiahnutí ju opäť bežným spôsobom nainštalujte.

Natavenie kompilátora

Natavenie kompilátora

Sada nástrojov gpustils poskytuje nástroje príkazového riadku grafické prostredie nepotrebujeme, pretože kompilátor gpasm integrujeme priamo do prostredia PSPad-u. Na to slúži záložka Kompilátor, v okne Nastavenia zvýrazňovačov, kde stačí vpísať parametre podľa obrázka, ale pre úplnosť ich aj vymenujem:

  • pole Kompilátor: C:\Program Files\gpustils\bin\gpasm.exe (ak ste nainštalovali program inde, upravte si cestu);
  • pole Parametre: „%FILE%“ (pozor na úvodzovky a značky percent);
  • pole Východzí priečinok: %DIR%;
  • zaškrtávacie políčka nastavte podľa obrázka.

Po uložení nastavení sa mi osvedčilo PSPad zatvoriť a spustiť znova a od tejto chvíle už môžem program, napísaný v súbore s príponou asm veselo kompilovať priamo z PSPad, pomocou klávesovej skratky Ctrl + F9 . Výsledok kompilácie je zobrazený v okne so záznamom.

Varovanie

V prípade 64b Windows bude predvolená cesta ku gpasm C:\Program Files (x86)\gputils\bin\gpasm.exe.

Simulátor

Poslednou časťou skladačky je simulátor. Ak sa pustíte do prehľadávania webu, nájdete ich niekoľko. Sú rôzne kvalitné i rôzne použiteľné. Z dostupných ma najviac oslovil FlowCode, ktorý považujem za najkomplexnejší, nie je však voľne použiteľný. Keď som si pripravoval podklady k článku, zistil som, že si nepamätám ako sa volá ten simulátor, ktorý tu nakoniec spomeniem, a pri jeho hľadaní na internete som našiel jeden iný, ktorý ma tiež oslovil, tak tu nakoniec odporučím dva. Oba majú spoločnú jednu vlastnosť, a tou je Java, teda jazyk v ktorom sú napísané.

Pre ich funkčnosť je teda potrebné nainštalovať virtuálny stroj Java, ktorý si možno voľne stiahnuť z domovskej stránky a nainštalovať. Je však dosť možné, ťe už ho v systéme aj nainštalovaný máte. Ak nie, tak mojou voľbou je stiahnutie tzv. offline inštalačného balíka, ale to je len otázkou voľby. Po nainštalovaní Javy sa možno pustiť do inštalácie simulátora. vyberte si jeden, prípadne oba.

PicBoard 16F

Simulátor PicBoard

Simulátor PicBoard

Toto je ten pôvodný, ktorý som chcel odporučiť ako jediný. Je dostupný na stiahnutie na zo stránky sourceforge.net/projects/picboard16f, kde je dostupný vo forme zdrojového kódu v úložisku SVN. Na prácu je potrebné program skompilovať, ale s trochou snahy nájdete aj skompilovanú verziu. Takže stačí nájsť a stiahnuť archív zo simulátorom, rozbaliť ho a spustiť súbor picboar16f.bat (v Linuxe zase picboar16f.sh). Ak nemáte zapnuté zobrazovanie prípon, mal by mať takú čiernu ikonku…

Do tohoto simulátora možno načítať súbor hex, ktorý vyprodukuje kompilátor gpsim priamo z editora PSPad. Na priloženom snímku pracovnej plochy tohoto simulátora sú zobrazené skoro všetky moduly, ktoré možno využiť pri simulácii. Počnúc LED, či tlačidlami, cez LCD a končiac motorom. Takže možnosti sú naozaj zaujímavé.

PIC Development Studio

Toto je druhý simulátor, ktorý je dostupný na stiahnutie na stránkach SourceForge PicDev. Jeho webová stránka nie je veľmi funkčná (aspoň v mojej Opere), ale celá dokumentácia je dostupná z nainštalovaného programu. Na stiahnutie je pre Windows dostupný inštalátor, takže by inštalácia nikomu nemala robiť problém. Tento simulátorček sa mi na prvý pohľad zapáčil, i keď som nenašiel spôsob ako do neho načítať súbor asm či hex, čo považujem za nevýhodu, ale iní možno ocenia jednoduchosť inštalácie.

I tento simulátor poskytuje mnoho možností simulácie vstupno/výstupných zariadení, ale snímok pracovnej plochy proste nemám k dispozícii (vo wine sa mi ho nepodarilo spustiť)…

PICsim

Veľmi podarený program, o ktorom píšem v inom článku