|
|
Řádek 17: |
Řádek 17: |
| * [[Soubor:Icon-pdf.gif]] [[:Media:PICAXE-2-220_man_cz.pdf|PICAXE – příručka programátora]] [http://www.hobbyrobot.cz/PDF/PICAXE_basic_man_cz.pdf mirror] | | * [[Soubor:Icon-pdf.gif]] [[:Media:PICAXE-2-220_man_cz.pdf|PICAXE – příručka programátora]] [http://www.hobbyrobot.cz/PDF/PICAXE_basic_man_cz.pdf mirror] |
| * [[Soubor:hobbyrobot.jpg|200px|link=http://www.hobbyrobot.cz/mikrokontrolery/prikazy-jazyka-basic/]] | | * [[Soubor:hobbyrobot.jpg|200px|link=http://www.hobbyrobot.cz/mikrokontrolery/prikazy-jazyka-basic/]] |
| | |
|
| |
|
| [http://www.hobbyrobot.cz/mikrokontrolery/prikazy-jazyka-basic/ Syntaxe jazyka BASIC] | | [http://www.hobbyrobot.cz/mikrokontrolery/prikazy-jazyka-basic/ Syntaxe jazyka BASIC] |
| * [http://www.joliebrisemodels.co.uk/picaxe/ PICAXE Microprocessor Tutorial] | | * [[PICAXE - BASIC commands]] |
| | * [http://www.joliebrisemodels.co.uk/picaxe/ PICAXE - Microprocessor Tutorial] |
|
| |
|
| www:
| |
| * [http://www.picaxe.com/docs/axe120.pdf PICAXE MICRO-ROBOT]
| |
| * [[Soubor:Icon-pdf.gif]] [http://letsmakerobots.com/files/lmr-Start.pdf How to make your first Robot]
| |
|
| |
|
| {{#widget:YouTube|id=fRvAgDKbAD0|height=180|width=240|Popis|right}} | | {{#widget:YouTube|id=fRvAgDKbAD0|height=180|width=240|Popis|right}} |
Řádek 33: |
Řádek 32: |
| |- style="vertical-align: top;" | | |- style="vertical-align: top;" |
| | | | | |
| [http://www.linuxsoft.cz/article.php?id_article=1971 Posuvný bod] | | # [http://www.linuxsoft.cz/article.php?id_article=1971 Posuvný bod] |
| | | # [http://www.linuxsoft.cz/article.php?id_article=1971 Změna jasu diody] |
| [http://www.linuxsoft.cz/article.php?id_article=1971 Změna jasu diody] | | # [http://www.bristolwatch.com/picaxe/picaxe_led_display.htm Using 7-Segment Displays] |
| | | # [http://www.bristolwatch.com/picaxe/74hc164_demo.htm Using the 74HC165 Shift Register] |
| [http://www.bristolwatch.com/picaxe/picaxe_led_display.htm Using 7-Segment Displays] | | # [http://www.bristolwatch.com/picaxe/picaxe_h_bridge.htm H-Bridge DC Motor Control] |
| | | # [http://www.bristolwatch.com/picaxe/myservo.htm Connecting a Servo] |
| [http://www.bristolwatch.com/picaxe/74hc164_demo.htm Using the 74HC165 Shift Register] | | # [[Soubor:Icon-pdf.gif]] [http://www.picaxe.com/docs/axe105.pdf ELECTRONIC DICE] |
| | | # [[Soubor:Icon-pdf.gif]] [http://www.picaxe.com/docs/axe120.pdf PICAXE MICRO-ROBOT] |
| [http://www.bristolwatch.com/picaxe/picaxe_h_bridge.htm H-Bridge DC Motor Control] | | # [[Soubor:Icon-pdf.gif]] [http://letsmakerobots.com/files/lmr-Start.pdf How to make your first Robot] |
| | |
| [http://www.bristolwatch.com/picaxe/myservo.htm Connecting a Servo] | |
| | |
| [http://www.picaxe.com/docs/axe105.pdf ELECTRONIC DICE] | |
|
| |
|
| |} | | |} |
Řádek 323: |
Řádek 318: |
| |- | | |- |
| |} | | |} |
|
| |
|
| |
| == Příkazy: ==
| |
|
| |
| =====Abecední seznam příkazů=====
| |
|
| |
| '''backward''' (použitelné pro PICAXE: 18, 18A, 18X, 28A, 28X, 40X)<br />
| |
|
| |
| ''syntaxe:''
| |
| BACKWARD motor
| |
| - motor je A nebo B<br />
| |
|
| |
| ''funkce:''
| |
| Spustí otáčení motoru dozadu. Tento příkaz je ekvivalentní low 4, high 5 pro motor A, nebo low 6, high 7
| |
| pro motor B.
| |
| Bude fungovat správně na desce UMU rev. C (vyrobené v roce 2007). A je levý motor, B je pravý motor.<br /><br />
| |
|
| |
| '''branch''' (použitelné pro všechny typy PICAXE)<br />
| |
|
| |
| ''syntaxe:''
| |
| BRANCH offset,(address0,address1...addressN)
| |
| - offset je proměnná, určující na kterou adresu (0-N) se má skočit.
| |
| - adresy (address) jsou návěští, na která se větví program podle hodnoty proměnné offset.<br />
| |
|
| |
| ''funkce:''
| |
| Tento příkaz umožňuje větvení programu podle proměnné offset. Pokud je její hodnota 0, skočí se na
| |
| první návěští, pokud je hodnota 1, skočí se na druhé atd. Pokud je hodnota větší nežli odpovídá
| |
| poslednímu uvedenému návěští, neprovede se žádný skok a program pokračuje na dalším řádku.<br /><br />
| |
|
| |
| '''button''' (použitelné pro všechny typy PICAXE)<br />
| |
|
| |
| ''syntaxe:''
| |
| BUTTON pin,downstate,delay,rate,bytevariable,targetstate,address<br />
| |
|
| |
| ''funkce:''
| |
| Příkaz ke čtení tlačítka, odstranění zákmitů a simulaci opakovaného stisku (autorepeat). Aby správně
| |
| fungoval, musí být periodicky vykonáván.<br /><br />
| |
|
| |
| '''calibfreq''' (použitelné pro PICAXE: 08M, 18A, 18X)<br />
| |
|
| |
| ''syntaxe:''
| |
| CALIBFREQ {-} factor
| |
| - factor je konstanta nebo proměnná, nabývající hodnot -31 až 31<br />
| |
|
| |
| ''funkce:''
| |
| Slouží k jemnému doladění interního oscilátoru. Po zapnutí napájení má konstanta hodnotu 0. Kladné
| |
| hodnoty zvyšují kmitočet, záporné hodnoty snižují kmitočet oscilátoru.
| |
| Tento příkaz má smysl pouze u mikrokontrolérů s interním oscilátorem – 08M, 18A a 18X.<br /><br />
| |
|
| |
| '''count''' (použitelné pro PICAXE: 08M, 18X, 28X, 40X)<br />
| |
|
| |
| ''syntaxe:''
| |
| COUNT pin, period, variable
| |
| - pin je proměnná nebo konstanta, určující, na kterém vstupu se počítají impulsy.
| |
| - period je proměnná nebo konstanta, určující dobu měření (1-65535 ms při frekvenci oscilátoru 4
| |
| MHz).
| |
| - variable je proměnná, do které se zaznamená výsledek (přednostně proměnná word – s rozsahem
| |
| 0-65535).<br />
| |
|
| |
| ''funkce:''
| |
| Slouží k čítání impulsů na vstupu, počítá vzestupné hrany na určeném vstupu. Nejvyšší měřitelná
| |
| frekvence vstupního signálu je 25 kHz (pokud je střída signálu 1:1) pro frekvenci oscilátoru 4MHz.<br /><br />
| |
|
| |
| '''debug''' (použitelné pro všechny typy PICAXE)<br />
| |
|
| |
| ''syntaxe:''
| |
| DEBUG {var}
| |
| - var je nepovinná proměnná, uvedená pouze z důvodu zpětné kompatibility, její hodnota nemá
| |
| žádný vliv.<br />
| |
|
| |
| ''funkce:''
| |
| Zobrazí hodnoty všech proměnných v ladícím okně na monitoru PC. Musí být připojen komunikační
| |
| kabel. Vzhledem k množství přenášených dat tento příkaz značně zpomaluje běh programu. Rychlejší
| |
| selektivní výpis ladících informací umožňuje příkaz SERTXD.<br /><br />
| |
|
| |
| '''data eeprom''' (použitelné pro všechny typy PICAXE)<br />
| |
|
| |
| ''syntaxe:''
| |
| DATA {location},(data,data...)
| |
| EEPROM {location},(data,data...)
| |
| - location je nepovinná konstanta (0-255), určující počáteční adresu paměti eeprom, kam se budou
| |
| ukládat data. Pokud není počáteční adresa uvedena, ukládání pokračuje tam, kde předchozí
| |
| příkaz skončil. Při prvním použití příkazu se začíná na adrese 0.
| |
| - data jsou konstanty (0-255), které budou uloženy v paměti eeprom.<br />
| |
|
| |
| ''funkce:''
| |
| Příkazy DATA a EEPROM jsou synonyma, oba slouží k naplnění paměti eeprom konstantami při
| |
| zavádění programu z PC. Tyto konstanty lze načíst v programu příkazem READ. Příkaz DATA či
| |
| EEPROM neovlivňuje délku programu.<br /><br />
| |
|
| |
| '''end''' (použitelné pro všechny typy PICAXE)<br />
| |
|
| |
| ''syntaxe:''
| |
| END<br />
| |
|
| |
| ''funkce:''
| |
| Ukončí běh programu a uvede kontroler do režimu s minimální spotřebou. Obnova běhu programu je
| |
| možná pouze vypnutím napájení, přivedením nízké úrovně na vstup MCLR (resetem) nebo zavedením
| |
| nového programu z PC.
| |
| Příkaz END vypíná všechny časovače, po jeho provedení se ukončí činnost příkazů PWM a SERVO a
| |
| kontrolér přejde do režimu s nízkým příkonem. Pokud je tento efekt nežádoucí, lze použít příkaz STOP.<br /><br />
| |
|
| |
| '''for..next''' (použitelné pro všechny typy PICAXE)<br />
| |
|
| |
| ''syntaxe:''
| |
| FOR variable = start TO end {STEP {-}increment}
| |
| ..
| |
| příkazy programové smyčky
| |
| ..
| |
| NEXT {variable}
| |
| - variable je proměnná, která je použita jako čítač cyklů
| |
| - start je počáteční hodnota čítače
| |
| - end je konečná hodnota čítače
| |
| - increment je nepovinná hodnota kroku čítače. Pokud není uvedena použije se hodnota +1. Pokud je
| |
| uvedena záporna hodnota, předpokládá se, že Start je větší nežli End a čítá se směrem dolů.<br />
| |
|
| |
| ''funkce:''
| |
| Slouží k opakovanému provádění kódu uvedeného mezi příkazy FOR a NEXT. Při použití proměnné byte
| |
| je největší možný počet cyklů 255. Při každém provedení příkazu NEXT se hodnota čítače zvětší (nebo
| |
| zmenší) o předepsaný krok a porovná se s konečnou hodnotou End. Pokud je čítač větší (nebo menší při
| |
| záporném kroku) nežli End, smyčka se ukončí a program pokračuje dalším řádkem za NEXT. Příkaz
| |
| FOR-NEXT může mít osm úrovní vnoření.<br /><br />
| |
|
| |
| '''forward''' (použitelné pro PICAXE: 18, 18A, 18X, 28A, 28X, 40X)<br />
| |
|
| |
| ''syntaxe:''
| |
| FORWARD motor
| |
| - motor je A nebo B<br />
| |
|
| |
| ''funkce:''
| |
| Spustí otáčení motoru dopředu. Tento příkaz je ekvivalentní high 4 low 5 pro motor A, nebo high 6 low 7
| |
| pro motor B.
| |
| Bude fungovat správně na desce UMU rev. C (vyrobené v roce 2007). A je levý motor, B je pravý motor.<br /><br />
| |
|
| |
| '''gosub''' (použitelné pro všechny typy PICAXE)<br />
| |
|
| |
| ''syntaxe:''
| |
| GOSUB address
| |
| - address je návěští podprogramu, který příkaz GOSUB volá<br />
| |
|
| |
| ''funkce:''
| |
| Předává řízení programu na udanou adresu, po vykonání příkazu RETURN se vrátí vykonávání programu
| |
| na řádek následující po příkazu GOSUB. Příkaz GOSUB se liší od příkazu GOTO v tom, že uchovává
| |
| návratovou adresu. Po každém příkazu GOSUB musí následovat vykonání příkazu RETURN, jinak by
| |
| došlo k přeplnění zásobníku návratových adres. Příkazy GOSUB mohou mít čtyři úrovně vnoření.
| |
| Program kontrolérů 18X, 28X a 40X může obsahovat celkem 15 nebo 255 příkazů GOSUB, podle
| |
| nastavení v menu Options. U ostatních kontrolérů je povoleno 15, případně 16 příkazů GOSUB v celém
| |
| programu.<br /><br />
| |
|
| |
| '''goto''' (použitelné pro všechny typy PICAXE)<br />
| |
|
| |
| ''syntaxe:''
| |
| GOTO address
| |
| - address je návěští, na které se předá provádění programu – nepodmíněný skok na jiné místo v
| |
| programu.<br /><br />
| |
|
| |
| '''halt''' (použitelné pro PICAXE: 18, 18A, 18X, 28A, 28X, 40X)<br />
| |
|
| |
| ''syntaxe:''
| |
| HALT motor
| |
| - motor je A nebo B<br />
| |
|
| |
| ''funkce:''
| |
| Zastaví otáčení motoru. Tento příkaz je ekvivalentní low 4 low 5 pro motor A, nebo low 6 low 7 pro
| |
| motor B.<br /><br />
| |
|
| |
| '''high''' (použitelné pro všechny typy PICAXE)<br />
| |
|
| |
| ''syntaxe:''
| |
| HIGH pin
| |
| - pin je proměnná nebo konstanta, označuje výstup, který se použije<br />
| |
|
| |
| ''funkce:''
| |
| Nastaví vysokou výstupní úroveň. (U PICAXE-08 zároveň nastaví vývod jako výstupní.)<br /><br />
| |
|
| |
| '''high portc''' (použitelné pro PICAXE: 28X, 40X)<br />
| |
|
| |
| ''syntaxe:''
| |
| HIGH PORTC pin
| |
| - pin je proměnná nebo konstanta, označuje výstup na portu C, který se použije<br />
| |
|
| |
| ''funkce:''
| |
| Nastaví vysokou výstupní úroveň na výstupu portu C. (Pouze u kontrolérů 28X a 40X)<br /><br />
| |
|
| |
| '''i2cslave''' (použitelné pro PICAXE: 18X, 28X, 40X)<br />
| |
|
| |
| ''syntaxe:''
| |
| I2CSLAVE slave, speed, address
| |
| - slave je adresa zařízení na I2C sběrnici
| |
| - speed je klíčové slovo i2cfast (400 kHz) nebo i2cslow (100 kHz) (krystal 4 MHz), určuje rychlost
| |
| komunikace. Pokud je na sběrnici více zařízení, určuje se rychlost podle nejpomalejšího z
| |
| nich – rychlejší periferie může pracovat s nižší rychlostí, naopak pracovat nelze.
| |
| - address je klíčové slovo i2cbyte nebo i2cword, určuje, zda je adresa 8-bitová nebo 16-bitová.<br />
| |
|
| |
| ''funkce:''
| |
| Nastavuje parametry pro komunikaci po I2C sběrnici a konfiguruje vývody SCL a SDA jako vstupní.
| |
| Komunikaci obstarávají příkazy READI2C, WRITEI2C.<br /><br />
| |
|
| |
| '''if .. then'''<br />
| |
| '''if .. and .. then'''<br />
| |
| '''if .. or .. then''' (použitelné pro všechny typy PICAXE)<br />
| |
|
| |
| ''syntaxe:''
| |
| IF variable ?? value {AND/OR variable ?? value ...} THEN address
| |
| - variable je proměnná. Bude porovnána s value
| |
| - value může být proměnná nebo konstanta
| |
| - address je návěští, na které se předá řízení programu. Pokud je podmínka splněna
| |
| - ?? může být jeden z následujících operátorů:
| |
| = rovná se
| |
| is rovná se (alternativní zápis)
| |
| <> nerovná se
| |
| != nerovná se (alternativní zápis)
| |
| > větší než
| |
| >= větší nebo rovno
| |
| < menší než
| |
| <= menší nebo rovno<br />
| |
|
| |
| ''funkce:''
| |
| Příkaz porovnává dvě proměnné nebo proměnnou s konstantou a skočí na určené místo, pokud je
| |
| podmínka splněna. Pokud není podmínka splněna, pokračuje se na daším řádku programu.<br /><br />
| |
|
| |
| '''infrain''' (použitelné pro PICAXE: 18A, 18X, 28A, 28X, 40X)<br />
| |
|
| |
| ''syntaxe:''
| |
| INFRAIN<br />
| |
|
| |
| ''funkce:''
| |
| Čeká na příjem znaku z dálkového ovládání. Přijatý kód je v proměnné infrain. Vyžaduje připojení
| |
| přijímače infračerveného signálu na vstup input0, používá protokol Sony.<br /><br />
| |
|
| |
| '''infrain2''' (použitelné pro PICAXE: 08M)<br />
| |
|
| |
| ''syntaxe:''
| |
| INFRAIN2<br />
| |
|
| |
| ''funkce:''
| |
| Obdoba předchozího příkazu pro PICAXE-08M. Vyžaduje připojení přijímače infračerveného signálu na
| |
| vstup input3, používá protokol Sony.<br /><br />
| |
|
| |
| '''infraout''' (použitelné pro PICAXE: 08M)<br />
| |
|
| |
| ''syntaxe:''
| |
| INFRAOUT device,data<br />
| |
|
| |
| ''funkce:''
| |
| Vyšle data protokolem Sony infračerveného dálkového ovládání, pouze na PICAXE-08M. Předpokládá
| |
| připojení vysílací infračervené LED s omezovacím odporem na výstup 0.<br /><br />
| |
|
| |
| '''input''' (použitelné pro PICAXE: 08, 08M)<br />
| |
|
| |
| ''syntaxe:''
| |
| INPUT pin
| |
| - pin je proměnná nebo konstanta, označuje použitý vývod<br />
| |
|
| |
| ''funkce:''
| |
| Nastaví vývod jako vstupní.
| |
| Po zapnutí napájení jsou všechny konfigurovatelné vývody nastaveny jako vstupní. Kromě příkazů k
| |
| přímému nastavení (LET DIRS, INPUT, OUTPUT, REVERSE) se příslušné vývody nastavují také
| |
| příkazy HIGH, LOW, TOGGLE, PULSOUT jako výstupní.<br /><br />
| |
|
| |
| '''keyin''' (použitelné pro PICAXE: 18A, 18X, 28A, 28X, 40X)<br />
| |
|
| |
| ''syntaxe:''
| |
| KEYIN<br />
| |
|
| |
| ''funkce:''
| |
| Čeká na příjem znaku z počítačové klávesnice připojené přímo k mikrokontroléru. Přijatý kód je v
| |
| proměnné keyin. Vyžaduje připojení klávesnice na vstupy input6 a input7 a zdvihací rezistory 4k7.<br /><br />
| |
|
| |
| '''keyled''' (použitelné pro PICAXE: 18A, 18X, 28A, 28X, 40X)<br />
| |
|
| |
| ''syntaxe:''
| |
| KEYLED mask
| |
| - mask je proměnná nebo konstanta, určuje stav LED na klávesnici.<br />
| |
|
| |
| ''funkce:''
| |
| Rozsvěcí nebo zhasíná LED na klávesnici PC. Vyžaduje připojení klávesnice na vstupy input6 a input7.<br /><br />
| |
|
| |
| '''let''' (použitelné pro všechny typy PICAXE)<br />
| |
|
| |
| ''syntaxe:''
| |
| {LET} variable = {-} value ?? value...
| |
| - variable je proměnná, které bude přiřazen výsledek početní operace
| |
| - value jsou proměnné nebo konstanty spojené operátory
| |
| Klíčové slovo LET je nepovinné<br />
| |
|
| |
| ''funkce:''
| |
| Provádí početní operace v celočíselné 16-bitové aritmetice (hodnoty 0 až 65535). Výrazy jsou
| |
| vyhodnocovány zleva doprava bez upatnění přednosti operátorů. Všechna čísla jsou chápána jako kladná.
| |
| Výsledek může být také 8-bitový nebo 1-bitový, v tom případě jsou vyšší bity oříznuty.<br /><br />
| |
|
| |
| '''let dirs =''' (použitelné pro PICAXE: 08, 08M)
| |
| '''let dirsc =''' (použitelné pro PICAXE: 28X, 40X)<br />
| |
|
| |
| ''syntaxe:''
| |
| {LET} dirs = value
| |
| {LET} dirsc = value
| |
| - value jsou proměnné nebo konstanty, jejichž hodnota je uložena do proměnné dirs (dirsc).<br />
| |
|
| |
| ''funkce:''
| |
| Konfiguruje vývody kontroléru jako vstupní nebo výstupní (let dirs, na PICAXE-08/08M)
| |
| Konfiguruje vývody kontroléru na portu C jako vstupní nebo výstupní (let dirsc, na PICAXE-28X/40X).
| |
| Hodnota 1 příslušného bitu značí vstup, hodnota 0 značí výstup.<br /><br />
| |
|
| |
| '''let pins =''' (použitelné pro všechny typy PICAXE)
| |
| '''let pinsc =''' (použitelné pro PICAXE: 28X, 40X)<br />
| |
|
| |
| ''syntaxe:''
| |
| {LET} pins = value
| |
| {LET} pinsc = value
| |
| - value je proměnná nebo konstanta, jejíž hodnota je uložena do proměnné pins (pinsc).<br />
| |
|
| |
| ''funkce:''
| |
| Tento příkaz nastavuje současně všechny výstupy kontroléru individuálně na vysokou nebo nízkou
| |
| úroveň, u kontrolérů PICAXE-28X/40X lze takto nastavit též všechny vývody portu C. Klíčové slovo
| |
| LET je nepovinné.
| |
| K individuálnímu nastavení jednotlivých výstupů lze použít příkazy high a low. Příkaz LET PINS
| |
| umožňuje hromadné nastavení všech osmi výstupů současně.<br /><br />
| |
|
| |
| '''lookdown''' (použitelné pro všechny typy PICAXE)<br />
| |
|
| |
| ''syntaxe:''
| |
| LOOKDOWN target,(value0,value1...valueN),variable
| |
| - target je proměnná nebo konstanta, která se porovnává s řadou hodnot v závorce.
| |
| - value0... jsou proměnné nebo konstanty
| |
| - variable obsahuje výsledek porovnávání.<br />
| |
|
| |
| ''funkce:''
| |
| Porovnává target se seznamem hodnot v závorce, pokud najde stejnou hodnotu, uloží do proměnné za
| |
| závorkou pořadové číslo shodné hodnoty. Číslování začíná nulou. Pokud se shoda nenajde, proměnná za
| |
| závorkou zůstane beze změny.<br /><br />
| |
|
| |
| '''lookup''' (použitelné pro všechny typy PICAXE)<br />
| |
|
| |
| ''syntaxe:''
| |
| LOOKUP offset,(data0,data1...dataN),variable
| |
| - offset je proměnná nebo konstanta, určuje, která položka z data0 až dataN se uloží do proměnné
| |
| variable.
| |
| - data jsou proměnné nebo konstanty
| |
| - variable předává výslednou hodnotu, nebo zůstává beze změny<br />
| |
|
| |
| ''funkce:''
| |
| Vybírá z pole hodnot podle zadaného ofsetu (indexu). Pokud je ofset mimo rozsah uvedených hodnot,
| |
| výstupní proměnná zůstává beze změny.<br /><br />
| |
|
| |
| '''low''' (použitelné pro všechny typy PICAXE)<br />
| |
|
| |
| ''syntaxe:''
| |
| LOW pin
| |
| - pin je proměnná nebo konstanta, označuje výstup, který se použije<br />
| |
|
| |
| ''funkce:''
| |
| Nastaví nízkou výstupní úroveň. (U PICAXE-08 zároveň nastaví vývod jako výstupní.)<br /><br />
| |
|
| |
| '''low portc''' (pro PICAXE: 28X, 40X)<br />
| |
|
| |
| ''syntaxe:''
| |
| LOW PORTC pin
| |
| - pin je proměnná nebo konstanta, označuje výstup na portu C, který se použije<br />
| |
|
| |
| ''funkce:''
| |
| Nastaví nízkou výstupní úroveň na výstupu portu C. (Pouze u kontrolérů 28X a 40X)<br /><br />
| |
|
| |
| '''nap''' (použitelné pro všechny typy PICAXE)<br />
| |
|
| |
| ''syntaxe:''
| |
| NAP period
| |
| - period je proměnná nebo konstanta, určující dobu, na kterou přejde kontroler do režimu s nízkou
| |
| spotřebou. Rozsah 0 až 7.
| |
| Doba zpoždění:
| |
| 0 18 ms
| |
| 1 32 ms
| |
| 2 72 ms
| |
| 3 144 ms
| |
| 4 288 ms
| |
| 5 576 ms
| |
| 6 1,152 s
| |
| 7 2,304 s<br />
| |
|
| |
| ''funkce:''
| |
| Uvede kontroler do spánku na dobu 2^period*18 ms. Tento příkaz využívá watchdog timer s omezenou
| |
| přesností časování. Delší prodlevy lze dosáhnout příkazem Sleep.<br /><br />
| |
|
| |
| '''output''' (použitelné pro PICAXE: 08, 08M)<br />
| |
|
| |
| ''syntaxe:''
| |
| OUTPUT pin
| |
| - pin je proměnná nebo konstanta, označuje použitý vývod<br />
| |
|
| |
| ''funkce:''
| |
| Nastaví vývod jako výstupní. Funguje pouze u kontrolérů 08 a 08M.<br /><br />
| |
|
| |
| '''pause''' (použitelné pro všechny typy PICAXE)<br />
| |
|
| |
| ''syntaxe:''
| |
| PAUSE milliseconds
| |
| - milliseconds je proměnná nebo konstanta v rozsahu 0 až 65535, určuje dobu v jednotkách
| |
| milisekund, po kterou bude tento příkaz trvat. Toto platí pouze při nastavené
| |
| hodinové frekvenci 4 MHz. Při nastavení hodinové frekvence 8 MHz se čas
| |
| zkracuje na 0,5 ms a na 0,25 ms při nastavení hodinové frekvence na 16 MHz.<br />
| |
|
| |
| ''funkce:''
| |
| Zastaví běh programu na určenou dobu. Přesnost je odvozena od hodinového kmitočtu kontroleru.<br /><br />
| |
|
| |
| '''peek''' (použitelné pro PICAXE: 08M, 18, 18A, 18X, 28A, 28X, 40X)<br />
| |
|
| |
| ''syntaxe:''
| |
| PEEK location,variable
| |
| - location je proměnná nebo konstanta, určující adresu registru. Platné hodnoty jsou 0 až 255.
| |
| - variable je 8bitová proměnná, ve které je navrácen obsah registru na udané adrese.<br />
| |
|
| |
| ''funkce:''
| |
| Čte data z registrů mikrokontroleru. Umožňuje obnovit data uschovaná příkazem POKE.<br /><br />
| |
|
| |
| '''play''' (použitelné pro PICAXE: 08M)<br />
| |
|
| |
| ''syntaxe:''
| |
| PLAY tune,LED
| |
| - tune je proměnná nebo konstanta (0 - 3) určující, která skladba se zahraje:
| |
| 0 - Happy Birthday
| |
| 1 - Jingle Bells
| |
| 2 - Silent Night
| |
| 3 - Rudolf the Red Nosed Reindeer
| |
| - LED je proměnná nebo konstanta (0 -3) určující způsob blikání připojených LED během hraní:
| |
| 0 - bez blikání
| |
| 1 - výstup 0 se zapíná a vypíná
| |
| 2 - výstup 4 se zapíná a vypíná
| |
| 3 - výstupy 0 a 4 se střídavě zapínají a vypínají<br />
| |
|
| |
| ''funkce:''
| |
| Přehrává skladbu, pouze na PICAXE-08M. Výstupní signál se objeví na výstupu 2.<br /><br />
| |
|
| |
| '''poke''' (použitelné pro PICAXE: 08M, 18, 18A, 18X, 28A, 28X, 40X)<br />
| |
|
| |
| ''syntaxe:''
| |
| POKE location,data
| |
| - location je proměnná nebo konstanta určující adresu registru. Platné hodnoty jsou 0 až 255.
| |
| - data je proměnná nebo konstanta obsahující data, která budou zapsána na uvednou adresu.<br />
| |
|
| |
| ''funkce:''
| |
| Zapisuje data do registrů kontroleru. Umožňuje uložit proměnné b0 až b13 do paměti a dále využít
| |
| hardware prostřednictvím SFR (podle dokumentace v katalogovém listu příslušného kontroleru).<br /><br />
| |
|
| |
| '''pulsin''' (použitelné pro všechny typy PICAXE)<br />
| |
|
| |
| ''syntaxe:''
| |
| PULSIN pin,state,variable
| |
| - pin je proměnná nebo konstanta (0-7), určující, který vývod bude použit.
| |
| - state je proměnná nebo konstanta (0 nebo 1), určující, která hrana se musí první objevit před
| |
| začátkem měření.
| |
| - variable obsahuje výsledek měření (1 - 65535) v jednotkách 10 μs.<br />
| |
|
| |
| ''funkce:''
| |
| Měří délku vstupního pulsu v jednotkách 10 μs. Jestliže se puls neobjeví do 0,65536 s, příkaz končí a
| |
| výsledek je 0. Pokud je proměnná state = 1, měří se délka pulsu ve vysoké úrovni, měření začíná
| |
| vzestupná hrana a končí sestupná hrana. Pokud je proměnná state = 0, měří se délka pulsu v nízké úrovni,
| |
| měření začíná sestupná hrana a končí vzestupná hrana. Výstupní proměnná se obvykle používá 16bitová.<br /><br />
| |
|
| |
| '''pulsout''' (použitelné pro všechny typy PICAXE)<br />
| |
|
| |
| ''syntaxe:''
| |
| PULSOUT pin,time
| |
| - pin je proměnná nebo konstanta (0-7) určující, který vývod bude použit.
| |
| - time je proměnná nebo konstanta určující dobu trvání pulsu (0-65535) v jednotkách 10 μs.<br />
| |
|
| |
| ''funkce:''
| |
| Vyšle impuls zadané délky. Polarita impulsu je určená počátečním stavem pinu, během pulsu se stav
| |
| invertuje a po skončení se vrátí na původní úroveň.<br /><br />
| |
|
| |
| '''pwm''' (použitelné pro PICAXE: 08, 08M)<br />
| |
|
| |
| ''syntaxe:''
| |
| PWM pin,duty,cycles
| |
| - pin je proměnná nebo konstanta (0-7), určující, který vývod bude použit.
| |
| - duty je proměnná nebo konstanta (0-255), určující činitel plnění PWM (dobu, kterou výstup
| |
| setrvá ve stavu 1)
| |
| - cycles je proměnná nebo konstanta (0-255), určující počet cyklů PWM, které na určeném vývodu
| |
| proběhnout. Každý cyklus trvá asi 5 ms.<br />
| |
|
| |
| ''funkce:''
| |
| Tento příkaz se používá zřídka, vhodnější je použít PWMOUT. Příkaz PWM ukončí svoji činnost po
| |
| zadaném počtu cyklů, neprobíhá na pozadí jako příkaz PWMOUT. Ve spojení s RC filtrem může
| |
| napodobit analogový výstup na kontroléru PICAXE-08. Příkaz musí být volán opakovaně.<br /><br />
| |
|
| |
| '''pwmout''' (použitelné pro PICAXE: 08M, 18X, 28X, 40X)<br />
| |
|
| |
| ''syntaxe:''
| |
| PWMOUT pin,period,duty cycles
| |
| - pin je proměnná nebo konstanta určující, který vývod bude použit.
| |
| (pouze vývod 3 na 18X, pouze vývod 2 na 08M, vývod 1 nebo 2 na 28X a 40X)
| |
| - period je proměnná nebo konstanta (0-255) určující periodu pulsně šířkové modulace (PWM)
| |
| - duty je proměnná nebo konstanta (0-1023) určující činitel plnění PWM (dobu, kterou výstup
| |
| setrvá ve stavu 1)
| |
| Generuje pulsně modulovaný výstupní signál na zvoleném vývodu s využitím interního hardware
| |
| kontroleru. Tento signál zůstává aktivní i po ukončení příkazu PWMOUT. Pokud je třeba signál zrušit,
| |
| použije se příkaz PWMOUT s periodou 0.<br /><br />
| |
|
| |
| '''random''' (použitelné pro všechny typy PICAXE)<br />
| |
|
| |
| ''syntaxe:''
| |
| RANDOM wordvariable
| |
| - wordvariable slouží zároveň jako výsledek i jako pracovní proměnná (násada) pro příští použití
| |
| příkazu. Musí být použita proměnná typu word a její hodnota se nesmí do dalšího
| |
| použití příkazu změnit.
| |
| Vytváří sekvenci pseudonáhodných čísel mezi 0 a 65535.<br /><br />
| |
|
| |
| '''readadc''' (použitelné pro všechny typy PICAXE)<br />
| |
|
| |
| ''syntaxe:''
| |
| READADC channel,variable
| |
| - channel je proměnná nebo konstanta, určující vstup (0-7)
| |
| - variable obsahuje výsledek A/D převodu<br />
| |
|
| |
| ''funkce:''
| |
| Příkaz čte napětí na analogovém vstupu a převádí ho na osmibitové číslo. Pouze některé vstupy mohou
| |
| sloužit jako analogové. Na některých kontrolerech jsou analogové a digitální vstupy sdílené, mohou plnit
| |
| obě funkce.<br /><br />
| |
|
| |
| '''readadc10''' (použitelné pro PICAXE: 08M, 18X, 28X, 40X)<br />
| |
|
| |
| ''syntaxe:''
| |
| READADC10 channel,wordvariable
| |
| - channel je proměnná nebo konstanta určující vstup (0-7)
| |
| - wordvariable obsahuje výsledek A/D převodu<br />
| |
|
| |
| ''funkce:''
| |
| Příkaz čte napětí na analogovém vstupu a převádí ho na 10bitové číslo, proto se výsledek musí ukládat do
| |
| 16bitové proměnné. Pouze některé vstupy mohou sloužit jako analogové. Na některých kontrolerech jsou
| |
| analogové a digitální vstupy sdílené, mohou plnit obě funkce. Při použití příkazu DEBUG může
| |
| komunikace s PC narušit výsledek A/D převodu. V tom případě se doporučuje doplnit obvod o
| |
| Schottkyho diodu, která tento efekt potlačí.<br /><br />
| |
|
| |
| '''readi2c''' (použitelné pro PICAXE: 18X, 28X, 40X)<br />
| |
|
| |
| ''syntaxe:''
| |
| READI2C location,(variable,...)
| |
| - location je proměnná nebo konstanta, určující adresu z které se bude číst.
| |
| - variable proměnné, které po provedení příkazu obsahují data přečtená z uvedené adresy.<br />
| |
|
| |
| ''funkce:''
| |
| Čte data z I2C sběrnice a ukládá je do proměnné (proměnných).
| |
| Adresa zařízení na I2C sběrnici je určená příkazem I2CSLAVE, location udává adresu v rámci tohoto
| |
| zařízení, například adresu dat v (externí) EEPROM nebo RTC obvodu apod.<br /><br />
| |
|
| |
| '''read''' (použitelné pro všechny typy PICAXE)<br />
| |
|
| |
| ''syntaxe:''
| |
| READ location,variable
| |
| - location je proměnná nebo konstanta, určující 8bitovou adresu v interní EEPROM (0-255).
| |
| - variable obsahuje přečtená data<br />
| |
|
| |
| ''funkce:''
| |
| Příkaz READ načítá data z EEPROM. Obsah této paměti je zachován i po vypnutí napájení. Tato data
| |
| jsou zapisována při každém zavedení nového programu do mikrokontroléru, podle definice v příkazu
| |
| DATA/EEPROM. Za běhu programu mohou být tato data přepisována pomocí příkazu WRITE.<br /><br />
| |
|
| |
| '''readtemp''' (použitelné pro PICAXE: 08M, 18A, 18X, 28A, 28X, 40X)<br />
| |
|
| |
| ''syntaxe:''
| |
| READTEMP pin,variable
| |
| - pin je proměnná nebo konstanta, určující, který vývod bude použit.
| |
| - variable obsahuje přečtená data (byte).<br />
| |
|
| |
| ''funkce:''
| |
| Příkaz přečte teplotu z digitálního čidla DS18B20 a uloží ji do proměnné. Převod může trvat až 750 ms.
| |
| Teplota se předává v celých stupních celsia. Senzor pracuje v rozmezí teplot -55 až +125°C.<br /><br />
| |
|
| |
| '''readtemp12''' (použitelné pro PICAXE: 08M, 18X, 28X, 40X)<br />
| |
|
| |
| ''syntaxe:''
| |
| READTEMP12 pin,wordvariable
| |
| - pin je proměnná nebo konstanta, určující, který vývod bude použit.
| |
| - wordvariable obsahuje přečtená data (12 bitů).<br />
| |
|
| |
| ''funkce:''
| |
| Příkaz přečte teplotu v surovém 12 bitovém formátu z digitálního čidla DS18B20 a uloží ji do proměnné.
| |
| Převod může trvat až 750ms.<br /><br />
| |
|
| |
| '''readowsn''' (použitelné pro PICAXE: 08M, 18A, 18X, 28A, 28X, 40X)<br />
| |
|
| |
| syntaxe:
| |
| READOWSN pin
| |
| - pin je proměnná nebo konstanta (0-7), určující, který vývod bude použit.<br />
| |
|
| |
| ''funkce:''
| |
| Přečte sériové číslo z obvodu připojeného na jednodrátovou sběrnici firmy Dallas. Může číst například z
| |
| teplotního senzoru DS18B20, obvodu reálného času DS2415 nebo identifikačního obvodu DS1990A
| |
| (iButton). U DS1990A je sériové číslo také vypálené laserem na pouzdru obvodu.<br /><br />
| |
|
| |
| '''return''' (použitelné pro všechny typy PICAXE)<br />
| |
|
| |
| ''syntaxe:''
| |
| RETURN<br />
| |
|
| |
| ''funkce:''
| |
| Návrat z podprogramu. Příkaz return smí být použit pouze po předchozím příkazu gosub. Příkaz navrací
| |
| běh programu do místa, odkud byl podprogram vyvolán. Pokud by byl příkaz return použit bez
| |
| předchozího gosub, program havaruje.<br /><br />
| |
|
| |
| '''reverse''' (použitelné pro PICAXE: 08, 08M)<br />
| |
|
| |
| ''syntaxe:''
| |
| REVERSE pin
| |
| - pin je proměnná nebo konstanta, určující, který vývod bude použit.<br />
| |
|
| |
| ''funkce:''
| |
| Změní směr signálu na vývodu – původně vstup nastaví jako výstup a původně výstup nastaví jako vstup.
| |
| Funguje pouze u kontrolérů 08 a 08M.<br /><br />
| |
|
| |
| '''serin''' (použitelné pro všechny typy PICAXE)<br />
| |
|
| |
| ''syntaxe:''
| |
| SERIN pin,baudmode,(qualifier,qualifier...)
| |
| SERIN pin,baudmode,(qualifier,qualifier...),{#}variable,{#}variable...
| |
| SERIN pin,baudmode,{#}variable,{#}variable...
| |
| - pin je proměnná nebo konstanta (0-7) určující, který vývod bude použit.
| |
| - baudmode je proměnná nebo konstanta (0-7) která určuje přenosovou rychlost a polaritu signálu.
| |
| Všechny přenosové rychlosti se vztahují k hodinovému kmitočtu 4 MHz:
| |
| T2400 normální polarita (True, klidová úroveň vysoká)
| |
| T1200 normální polarita
| |
| T600 normální polarita
| |
| T300/T4800 normální polarita
| |
| N2400 obrácená polarita (Negated, klidová úroveň nízká)
| |
| N1200 obrácená polarita
| |
| N600 obrácená polarita
| |
| N300/N4800 obrácená polarita
| |
| - data jsou proměnné nebo konstanty (0-255), jejichž hodnoty budou vyslány na určený
| |
| výstup.
| |
| Nepovinný znak # signalizuje, že se následující hodnota má odeslat jako číslo v desítkové soustavě,
| |
| nikoliv jako jeden znak. Textový řetězec může být uveden v uvozovkách („Hello“).
| |
| Vysílá sériová data ve formátu 8N1 (8 datových bitů, bez parity, 1 stop bit).<br />
| |
|
| |
| ''funkce:''
| |
| Příkaz serout vysílá data asynchronním sériovým přenosem na určeném výstupu mikrokontroléru. Nelze
| |
| ho použít s vývodem Sout, určeném ke komunikaci při zavádění nového programu. Na tomto vývodu
| |
| pracuje příkaz sertxd.
| |
| Pin určuje na kterém vstupu se budou sériová data vysílat.
| |
| Baudmode určuje přenosovou rychlost a polaritu signálu.<br /><br />
| |