Systém trapp je určen pro snadné nahrávání dat z PC do jednodeskových počítačů. Toho času je k dispozici podpora pro počítače
Přičemž není problém systém upravit pro jakýkoliv jiný jednodeskáč. Zde je popsáno zejména použití pro PMI-80. Odlišnosti při použití u jiných počítačů jsou popsány na stránkách věnovaných těmto počítačům. Systém ideově vychází ze systému FJP/PCLoader2, vizte zde a zde přičemž mi nevyhovovalo několik věcí. Zejména šlo o to, že přenos byl velmi pomalý. Dále obsluha je poněkud nekomfortní - je nutné spouštět program na PC a na PMI-80 ve správném pořadí, je nutno zadávat nahrávací adresu, atd. Za další se neprovádí žádná detekce chyb.Při tvorbě systému TRAPP jsem se rozhodl tyto nedostatky odstranit a navíc definoval další požadavky. Celkově tedy bylo cílem:
Systém se skládá z:
Přípravek pro PMI-80 je zdokumentovaný zde. Je-li použit tento přípravek, musí být TRAPP kompilován s volbou #define PMI_TRAPP_UP. Pokud kompilaci neprovádíte sami, je nutno stáhnout správný kompilát. U ostatních počítačů je připojení popsáno na stránkách věnovaných těmto počítačům.
Od verze 3.02 je TRAPP možno připojit i na služební 8255. V tomto případě nestavte interface dle popisu výše, ale zapojení proveďte podle tohoto schématu:
Je nutno použít správný kompilát TRAPP nebo ho zkompilovat s volbou #define PMI_TRAPP_SP.
Program na straně PMI je napsaný v assembleru. K dispozici dávám několik verzí. Nejvýhodnější je použít verzi integrovanou do monitoru PMI-80. Další verze je zkompilovaná od adresy 0400 hexa a je určena k naprogramování do přídavné EPROM počítače PMI-80. K dispozici je i verze určená pouze k vyzkoušení programu. Musí se nějakým jiným způsobem (třeba tím FJP/PC Loaderem) nahrát do RAM od adresy 1E00. Krom toho zveřejňuji i zdrojový kód, takže si každý může program sám zkompilovat k adrese jaké chce. Ke kompilaci se používá známý program TASM.
V obou případech jde vlastně dva programy, jeden pro přenos dat z PC do PMI a druhý pro přenos opačným směrem.
Ve verzi integrované do monitoru PMI-80 se program pro přenos z PC spouští tlačítkem L. Ostatní verze se spouštějí příkazem G monitoru a zadáním startovací adresy, tedy 0400 nebo 1E00. Po spuštění se na displeji PMI objeví písmeno L (ve starších verzích r) a program čeká na data z PC. Není požadováno zadání žádných údajů, vše se přenese z PC. Nezáleží na tom, jestli se spustí dříve program na straně PMI nebo program na straně PC. Program, který byl spuštěn dřív vždy čeká, až bude spuštěn program i na druhé straně. Pokud při přenosu dojde k chybě, vypíše se hláška "Error". Pokud byl přenos úspěšný, vypíše se hláška PMI-80. Pokud navíc je v HEX souboru který byl posílán i informace o startovací adrese (uvedená jako počáteční adresa EOF bloku), nabídne se i skok na tuto adresu. To je možno potvrdit klávesou =, zadat jinou adresu nebo stiskem jiné než hexaklávesy vrátit do monitoru. Přerušit přenos lze pouze klávesou reset.
Pokud je TRAPP integrován do monitoru PMI-80, program pro posílání dat do PC se spouští tlačítkem S. Jinak je jeho počáteční adresa o 80 hexa bytů dále, než je program pro nahrávání z PC, tedy od adresy 0480 hexa nebo 1E80. Po spuštění se na displeji vlevo objeví písmeno S (ve starších verzích t), vpravo písmena Fr (from) a je požadování zadání počáteční adresy bloku paměti, který chcete odeslat do PC. Defaultně je nabízeno 1C00. Po potvrzení klávesou = se v pravo objeví "to" a je požadováno zadání koncové adresy. Po potvrzení koncové adresy a spuštění přenosu na straně PC je proveden přenos. I v tomto případě nezáleží na tom, jestli se spustí dříve program na straně PMI nebo program na straně PC. Program, který byl spuštěn dřív vždy čeká, až bude spuštěn program i na druhé straně. Přerušit přenos lze pouze klávesou reset.
Kopírování a šíření zde uvedených programů a tohoto manuálu za úplatu je zakázáno. Jakékoliv komerční využití programu je zakázáno (sice si komerční využití ani neumím představit, ale jeden nikdy neví).
Program pro PC byl napsán v C++ jako konzolová aplikace a je k dispozici pro Microsoft Windows (TM) a pro Linux.
Povinným parametrem programu je jméno souboru, který chcete nahrát do PMI.
Další důležitý parametr je -s<označení portu>,
v případě TRAPP rozhraní založeného na FTDI čipu je možno užít
-u<deskripce FTDI čipu>,
není-li žádný z těchto parametrů použit, hledá se FTDI chip, který
jako deskrpici má uvedeno "TRAPP" (ve verzi 2 se hledal port COM1).
V případě linuxu se zadává příslušná cesta k zařízení např. /dev/ttyS0.
Není-li uvedena, hledá se zařízení /dev/ttyUSB0.
V případě kabelového USB převodníku je nutné se podívat, pod jakým označením
se vyskytuje v systému.
Užitečný parametr je -k, program pako skončení čeká na stisk jakékoliv klávesy
a nedojde tak k zavření okna.
Pokud jde o soubor v Intel-HEX formátu, není potřeba zadávat nic dalšího.
Všechny adresy jsou definovány uvnitř Intel-HEX souboru.
Pokud parametr obsahuje mezery, uzavírá se mezi uvozovky.
Příklady:
trapp soubor.hex
trapp -sCOM2 soubor.hex - ve Windows(TM)
trapp "-uSerial converter" -k soubor.hex - ve Windows(TM)
trapp -s/dev/ttyS1 soubor.hex - v Linuxu
Pokud má být do PMI odeslán binární soubor, je nutné použít parametr -b<adresa>.
Parametr <adresa> určuje od jaké adresy má být soubor nahrán v PMI.
Není-li adresa určena, program se nahraje od adresy 1C00.
Příklady:
trapp -b soubor.bin
trapp -sCOM5 -b1e00 -k soubor.bin
Pokud má být soubor přenesen opačným směrem, t.j. z PC do PMI, použije se paramer -t, například
trapp -sCOM5 -t soubor.hex
V tomto případě se soubor uloží v Intel-HEX formátu.
Pokud chcete soubor uložit jako binárku, použijte parametr -b, například
trapp -sCOM5 -t -b soubor.bin
Další možnosti programu:
-h help (objeví se též po spuštění programu bez parametrů
-m jednoduchý diagnostický monitor - umožňuje ručně ovládat a sledovat stavy signálů.
UPOZORNĚNÍ
TRAPP verze 2.x a 3.x používají mírně odlišný protokol. Pokud máte v jednodeskovém počítači TRAPP verze 2.x a na straně PC chcete spustit TRAPP verze 3.x, je nutné přidat parametr -2.
Stažení - aktuální verze 3.0: