|
|
Řádka 17: |
Řádka 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}} |
Řádka 33: |
Řádka 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] | + | |
| | | |
| |} | | |} |
Řádka 323: |
Řádka 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 />
| |