PICAXE

Z MediaWiki SPŠ a VOŠ Písek
(Rozdíly mezi verzemi)
Přejít na: navigace, hledání
 
(Není zobrazeno 22 mezilehlých verzí od 2 uživatelů.)
Řádka 1: Řádka 1:
[[Soubor:MAT-POZADAVKY-PRA-ROBOT-UMIK.jpg|thumb|Robot Umík]]
+
{| class="toccolours" cellpadding="5" style="float: right; clear: right; margin: 0 0 1em 1em; font-size: 85%; width: 30em"
 +
| colspan="2" style="text-align: center; font-size: larger; background-color: lightgreen;" | '''''PICAXE'''''
  
[[Soubor:PICAXE_18.jpg|thumb|PICAXE 18 z PIC16F88]]
+
|- style="vertical-align: top;"
 +
|
  
 +
Download SW:
 +
[https://picaxe.com/software/obsolete/picaxe-programming-editor/index.html PICAXE]
 +
[http://www.picaxe.com/Software/PICAXE/PICAXE-Programming-Editor/ PICAXE]
 +
[http://www.picaxe.com/Software/PICAXE/AXEpad/ AXEpad]
 +
 +
Tutoriály:
 +
 +
* [[Soubor:programujte.jpg|200px|link=http://programujte.com/clanek/2010082700-programovani-picaxe-uvod/]]
 +
 +
[http://programujte.com/clanek/2010082700-programovani-picaxe-uvod/ Programování PICAXE]
 +
* [[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/]]
 +
 +
 +
[http://www.hobbyrobot.cz/mikrokontrolery/prikazy-jazyka-basic/ Syntaxe jazyka BASIC]
 +
* [[PICAXE - BASIC commands]]
 +
* [http://www.joliebrisemodels.co.uk/picaxe/ PICAXE - Microprocessor Tutorial]
 +
 +
 +
{{#widget:YouTube|id=fRvAgDKbAD0|height=180|width=240|Popis|right}}
 +
 +
{{#widget:YouTube|id=_veeeMj-64Q|height=180|width=240|Popis|right}}
 +
|}
 +
 +
{| class="toccolours" cellpadding="5" style="float: right; clear: right; margin: 0 0 1em 1em; font-size: 85%; width: 30em"
 +
| colspan="2" style="text-align: center; font-size: larger; background-color: lightgreen;" | '''''Tasks'''''
 +
 +
|- style="vertical-align: top;"
 +
|
 +
# [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.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_h_bridge.htm H-Bridge DC Motor Control]
 +
# [http://www.bristolwatch.com/picaxe/myservo.htm Connecting a Servo]
 +
# [[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]
 +
# [[Soubor:Icon-pdf.gif]] [http://letsmakerobots.com/files/lmr-Start.pdf How to make your first Robot]
 +
 +
|}
 +
 +
 +
[[Soubor:PICAXE_18.jpg|thumb|PICAXE 18 z PIC16F88]]
 
[[Soubor:PICAXE_01.jpg|thumb|Zapojení programovacího konektoru]]
 
[[Soubor:PICAXE_01.jpg|thumb|Zapojení programovacího konektoru]]
  
[[Soubor:Robot-umík-sch.jpg|thumb|Schéma zapojení robota Umíka]]
 
  
[[Soubor:Robot-umík-dps.jpg|thumb|Deska plošných spojů]]
+
<gallery>
 +
Soubor:D10_HW_picaxe_01.jpg|PICAXE - vývojová deska
 +
Soubor:D10_HW_picaxe_02.jpg|PICAXE - popis vývojové desky
 +
Soubor:ProfiCAD_PICAXE.png|PICAXE - blokové schéma
 +
Soubor:D10_HW_picaxe_03.jpg|PICAXE - schéma vývojové desky
 +
</gallery>
  
== Základní příkazy a syntaxe: ==
+
<gallery>
 +
Soubor:MAT-POZADAVKY-PRA-ROBOT-UMIK.jpg|Robot Umík
 +
Soubor:Umik-popis.png|Umík - popis
 +
Soubor:Umik-blok-schema.png|Umík - blokové schéma
 +
Soubor:Robot-umík-sch.jpg|Schéma zapojení robota Umíka
 +
Soubor:Robot-umík-dps.jpg|Deska plošných spojů
 +
</gallery>
  
<source lang="qbasic">  
+
<Gallery>
+
Soubor:PICAXE-vyv-diagram_01.jpg|Blik
REM Tohle je první jednoduchý program
+
Soubor:PICAXE-vyv-diagram_02.jpg|DICE
 +
Soubor:PICAXE-vyv-diagram.jpg|2x IN, 2 x OUT
 +
</gallery>
  
start: pause 1000
+
== Náměty:==
  
goto start
+
<gallery>
 +
Image:D10 HW PICAXE-08M.jpg| [[PICAXE]]-08M MCU pro programování v Basicu. [http://shop.snailinstruments.com/index.php?main_page=advanced_search_result&search_in_description=1&zenid=f7ce17dec68c901d159d6c3ad334677f&keyword=picaxe]
 +
</gallery>
 +
 
 +
{|
 +
|-
 +
| '''PICAXE8 LED'''
 +
[[Soubor:PICAXE-PICAXE80.jpg|200px]]
 +
[[Soubor:PICAXE-PICAXE80_1.jpg|200px]]
 +
|
 +
<source lang="qbasic">
 +
init:
 +
      let b0 = 0
 
   
 
   
</source>  
+
main:
 +
      if pin3 = 1 then add      'i/o pin 3 = physical ic pin 4
 +
      if pin3 = 0 then low 1
 +
      endif
 +
      goto main
 +
 +
add:
 +
      pause 100
 +
      let b0 = b0 + 1
 +
      if b0 < 5 then main
 +
      high 1                      'i/o pin 1 = physical pin 6
 +
      goto main
 +
</source>
 +
[http://www.joliebrisemodels.co.uk/picaxe/ PICAXE Microprocessor Tutorial]
 +
|-
 +
| '''PICAXE81'''
 +
[[Soubor:PICAXE-PICAXE81.jpg|200px]]
 +
|
 +
<source lang="qbasic">
 +
 
 +
</source>
 +
[ info]
 +
 
 +
|-
 +
|}
 +
 
 +
<gallery>
 +
Image:D10_HW_picaxe.jpg| Modul s [[PICAXE]]-18X. Programování v Basicu a [[SD20]]. [http://shop.snailinstruments.com/index.php?main_page=advanced_search_result&search_in_description=1&zenid=f7ce17dec68c901d159d6c3ad334677f&keyword=picaxe]
 +
</gallery>
 +
 
  
  
== Náměty:==
 
  
 
{|
 
{|
 
|-
 
|-
 +
| '''LED blikání'''
 +
[[Soubor:PICAXE_LED.jpg|200px]]
 +
|
 +
<source lang="qbasic"> 
 +
main:
 +
 
 +
  low 0      ' PIN 0 set OFF, LED will be shine
 +
            ' linka 0 se vynuluje, LED bude svítit
 +
  pause 500  ' wait 500 ms/ čekání 500 ms
 +
  high 0    ' PIN 0 set ON, LED will not be shine
 +
  ' linka 0 se nastavi do log. "1", LED nebude svítit
 +
  pause 500  ' čekání 200 ms
 +
 +
  GOTO main  'jump to label main
 +
            'skok na návěští main
 +
</source> 
 +
|-
 +
 +
 +
 
| '''Běžící had'''
 
| '''Běžící had'''
[[Soubor:PICAXE_bezici_had.jpg|200px]]
+
[[Soubor:PICAXE_bezici_had.jpg|200px]]
 +
 
 +
[[Soubor:Ukáza programu.jpg|Ukázka|200px]]
 
|
 
|
 
<source lang="qbasic">   
 
<source lang="qbasic">   
pins = %11111111  ;zhasne všechny diody main:
 
  
pause 1000
+
pins = %11111111  ;zhasne všechny diody
low 0 pause 200 high 0 ;postupně přepíná s 200 ms pauzou
+
main:
low 1 pause 200 high 1
+
 
low 2 pause 200 high 2
+
  pause 1000 ' čekání 1 000 ms = 1 s
low 3 pause 200 high 3
+
  low 0     ' linka 0 se vynuluje log. "0"
low 4 pause 200 high 4
+
  pause 200 ' čekání 200 ms
low 5 pause 200 high 5
+
  high 0    ' linka 0 se nastavi do log. "1"
low 6 pause 200 high 6
+
  low 1 pause 200 high 1 'dále postupně přepíná s 200 ms pauzou
low 7 pause 200 high 7
+
  low 2 pause 200 high 2
goto main
+
  low 3 pause 200 high 3
 +
  low 4 pause 200 high 4
 +
  low 5 pause 200 high 5
 +
  low 6 pause 200 high 6
 +
  low 7 pause 200 high 7
 +
  goto main  'skok na návěští main
 
</source>   
 
</source>   
 
|-
 
|-
Řádka 60: Řádka 183:
 
| [http://www.technologystudent.com/pics/picdex1.htm PICAXE MICROCONTROLLERS]  
 
| [http://www.technologystudent.com/pics/picdex1.htm PICAXE MICROCONTROLLERS]  
 
|-
 
|-
| [[Soubor:PICAXE-dataloger.jpg|200px]]
+
| '''PICAXE02'''
| [http://profmason.com/?page_id=99 PicAXE data logger] [http://profmason.com/wp-content/uploads/2006/11/datalogger.txt source]
+
[[Soubor:PICAXE-Buuton-LED.jpg|200px]]
|-
+
[[Soubor:PICAXE-Button-LED_1.jpg|200px]]
 +
|  
 +
<source lang="qbasic">
 +
init: b2 = 0 ' reset targetbyte before the loop
  
 +
' input C.0, active high, jump to ‘pushed’ label when = 1
  
 +
myloop: button C.0,1,200,100,b2,1,pushed ' jump to cont when C.0 = 1
 +
low B.7 ' output off
 +
pause 10 ' loop delay time
 +
goto myloop
  
|}
+
pushed: high B.7 ' output on
 +
goto myloop
  
== Příkazy: ==
+
</source>
 +
[http://www.picaxe.com/BASIC-Commands/Digital-InputOutput/button/ info]
  
=====Abecední seznam příkazů=====
+
|-
 +
| '''Push Switch'''
 +
[[Soubor:PICAXE-Buuton-LED.jpg|200px]]
 +
[[Soubor:PICAXE-Button-LED_2.jpg|200px]]
 +
|
 +
<source lang="qbasic">
  
'''backward''' (použitelné pro PICAXE: 18, 18A, 18X, 28A, 28X, 40X)<br />
+
init: let b0 = 0
  
''syntaxe:''
+
main: if pinC.7 = 1 then add
BACKWARD motor
+
        low B.7
- motor je A nebo B<br />
+
goto main
  
''funkce:''
+
add: pause 100 'short delay
Spustí otáčení motoru dozadu. Tento příkaz je ekvivalentní low 4, high 5 pro motor A, nebo low 6, high 7
+
let b0 = b0 + 1
pro motor B.
+
if b0 < 5 then main
Bude fungovat správně na desce UMU rev. C (vyrobené v roce 2007). A je levý motor, B je pravý motor.<br /><br />
+
high B.7
 +
goto main
  
'''branch''' (použitelné pro všechny typy PICAXE)<br />
+
</source>
 +
[http://www.picaxe.com/Circuit-Creator/Switches/Push-Switch/ info]
  
''syntaxe:''
+
|-
BRANCH offset,(address0,address1...addressN)
+
| '''For..Next'''
- offset je proměnná, určující na kterou adresu (0-N) se má skočit.
+
[[Soubor:PICAXE-Counter.jpg|200px]]
- adresy (address) jsou návěští, na která se větví program podle hodnoty proměnné offset.<br />
+
|
 +
<source lang="qbasic">
 +
symbol counter = b0 ‘ 'define the variable “counter”
 +
symbol dp = 7 ‘      'define pin 7 with the name “dp”
  
''funkce:''
+
main:  
Tento příkaz umožňuje větvení programu podle proměnné offset. Pokud je její hodnota 0, skočí se na
+
  for counter = 1 to 15 ‘ 'start a for...next loop
první návěští, pokud je hodnota 1, skočí se na druhé atd. Pokud je hodnota větší nežli odpovídá
+
    high dp ‘    ‘‘        'switch pin 7 high
poslednímu uvedenému návěští, neprovede se žádný skok a program pokračuje na dalším řádku.<br /><br />
+
    pause 500 ‘          'wait for 0.5 second
 +
    low dp ‘              'switch pin 7 low
 +
    pause 500 ‘          'wait for 0.5 second
 +
  next counter ‘          'end of for...next loop
 +
end ‘                      'end program
 +
</source>
 +
[[Soubor:Icon-pdf.gif]] [http://robotics.ee.uwa.edu.au/eyejr/pic-controller/PICAXE-tutorial.pdf info]
  
'''button''' (použitelné pro všechny typy PICAXE)<br />
+
|-
 +
| '''PICAXE03'''
 +
[[Soubor:PICAXE-PICAXE03.jpg|200px]]
 +
|
 +
<source lang="qbasic">
 +
symbol counter = b0  'define the variable counter
 +
symbol dp = 7        'define pin 7 with the name dp
 +
 +
main:
 +
  FOR counter = 1 TO 20  'start a for...next loop
 +
    pins = %11000000    ' symbol 0
 +
    pause 100            'wait for 0.1 second
 +
    pins = %11111001    ' symbol 1
 +
    pause 100           
 +
    pins = %10010100    ' symbol 2
 +
    pause 100           
 +
    pins = %10001111    ' symbol 3
 +
    pause 100           
 +
    pins = %10011001    ' symbol 4
 +
    pause 100           
 +
    pins = %11101101    ' symbol 5
 +
    pause 100           
  
''syntaxe:''
+
   
BUTTON pin,downstate,delay,rate,bytevariable,targetstate,address<br />
+
    NEXT counter        'end of for...next loop
 +
END
 +
</source>
 +
[ info]
 +
|-
 +
| '''PICAXE04'''
 +
[[Soubor:PICAXE-PICAXE04.jpg|200px]]
 +
|
 +
<source lang="qbasic">
 +
symbol counter = b0  'define the variable counter
 +
symbol dp = 7        'define pin 7 with the name dp
 +
w1 = %00000000
  
''funkce:''
+
main:  
Příkaz ke čtení tlačítka, odstranění zákmitů a simulaci opakovaného stisku (autorepeat). Aby správně
+
  FOR counter = 1 TO 255  'start a for...next loop
fungoval, musí být periodicky vykonáván.<br /><br />
+
    pins =  w1      'start
 +
    pause 100            'wait for 0.1 second
 +
    w1 = w1 + 1          'incrementace
 +
         
 +
    NEXT counter        'end of for...next loop
 +
END
 +
</source>
 +
[ info]
  
'''calibfreq''' (použitelné pro PICAXE: 08M, 18A, 18X)<br />
+
|-
 +
| '''Counter'''
 +
[[Soubor:PICAXE-PICAXE04.jpg|200px]]
 +
|
 +
<source lang="qbasic">
 +
rst:
 +
w1 = %00000000
 +
pins =  w1
  
''syntaxe:''
+
main:   if pinC.6 = 1 then rst
CALIBFREQ {-} factor
+
if pinC.7 = 1 then add
- factor je konstanta nebo proměnná, nabývající hodnot -31 až 31<br />
+
goto main
 
+
''funkce:''
+
add: pause 50 ' short delay
Slouží k jemnému doladění interního oscilátoru. Po zapnutí napájení má konstanta hodnotu 0. Kladné
+
let b0 = b0 + 1
hodnoty zvyšují kmitočet, záporné hodnoty snižují kmitočet oscilátoru.
+
if b0 < 5 then main
Tento příkaz má smysl pouze u mikrokontrolérů s interním oscilátorem – 08M, 18A a 18X.<br /><br />
+
pins =  w1    ' symbol 0
 +
    w1 = w1 + 1
 +
       
 +
    goto main       
 +
end
 +
</source>
 +
[ info]
 +
|-
  
'''count''' (použitelné pro PICAXE: 08M, 18X, 28X, 40X)<br />
+
| '''Servo'''
 +
[[Soubor:PICAXE-PICAXE_servo.jpg|200px]]
 +
|
 +
<source lang="qbasic">
  
''syntaxe:''
+
servo 4, 150      ' start servo on pin four and move to center
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:''
+
main:
Slouží k čítání impulsů na vstupu, počítá vzestupné hrany na určeném vstupu. Nejvyšší měřitelná
+
    pause 500        ' wait a half second
frekvence vstupního signálu je 25 kHz (pokud je střída signálu 1:1) pro frekvenci oscilátoru 4MHz.<br /><br />
+
    servopos 4, 200  ' move servo clockwise
 +
    pause 500        ' wait a half second
 +
    servopos 4, 150  ' move servo to center
 +
    pause 500        ' wait a half second
 +
    servopos 4, 100  ' move servo counter-clockwise
 +
    pause 500        ' wait a half second
 +
    servopos 4, 150  ' move servo to center
  
'''debug''' (použitelné pro všechny typy PICAXE)<br />
+
  goto main          ' return to main program loop
  
''syntaxe:''
+
</source>
DEBUG {var}
+
[http://picaxe.hobbizine.com/servo.html info]
- 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 />
+
 
+
== www: ==
+
 
+
[http://www.picaxe.com/Software/PICAXE/PICAXE-Programming-Editor/ SW: PICAXE Programming Editor]
+
 
+
[http://www.picaxe.com/Software/PICAXE/AXEpad/ SW: AXEpad]
+
 
+
[http://programujte.com/clanek/2010082700-programovani-picaxe-uvod/ Programování PICAXE - Úvod]
+
 
+
[http://programujte.com/clanek/2010071900-programovani-picaxe-08m/ Programování PICAXE]
+
 
+
[http://programujte.com/clanek/2010090300-programovani-picaxe-1-lekce/ Programování PICAXE - 1. lekce]
+
 
+
[[Soubor:Icon-pdf.gif]] [http://www.hobbyrobot.cz/PDF/PICAXE_basic_man_cz.pdf PICAXE – příručka programátora]
+
 
+
[[Soubor:Icon-pdf.gif]] [http://www.hobbyrobot.cz/PDF/picaxe_technical_faq_cz.pdf Nejčastěji pokládané dotazy]
+
 
+
[[Soubor:Icon-pdf.gif]] [http://letsmakerobots.com/files/lmr-Start.pdf How to make your first Robot]
+
 
+
[[Soubor:Icon-pdf.gif]] [[:Media:PICAXE-2-220_man_cz.pdf|PICAXE – příručka programátora]]
+

Aktuální verze z 23. 2. 2021, 15:48

PICAXE

Download SW: PICAXE PICAXE AXEpad

Tutoriály:

  • Programujte.jpg

Programování PICAXE


Syntaxe jazyka BASIC


Tasks
  1. Posuvný bod
  2. Změna jasu diody
  3. Using 7-Segment Displays
  4. Using the 74HC165 Shift Register
  5. H-Bridge DC Motor Control
  6. Connecting a Servo
  7. Icon-pdf.gif ELECTRONIC DICE
  8. Icon-pdf.gif PICAXE MICRO-ROBOT
  9. Icon-pdf.gif How to make your first Robot


PICAXE 18 z PIC16F88
Zapojení programovacího konektoru


Náměty:

PICAXE8 LED

PICAXE-PICAXE80.jpg PICAXE-PICAXE80 1.jpg

init: 
      LET b0 = 0 
 
main: 
      IF pin3 = 1 THEN add       'i/o pin 3 = physical ic pin 4 
      IF pin3 = 0 THEN low 1 
      endif 
      GOTO main 
 
add: 
      pause 100 
      LET b0 = b0 + 1 
      IF b0 < 5 THEN main 
      high 1                       'i/o pin 1 = physical pin 6 
      GOTO main

PICAXE Microprocessor Tutorial

PICAXE81

200px

 

[ info]



LED blikání

200px

 
main:
 
  low 0      ' PIN 0 set OFF, LED will be shine
             ' linka 0 se vynuluje, LED bude svítit
  pause 500  ' wait 500 ms/ čekání 500 ms 
  high 0     ' PIN 0 set ON, LED will not be shine
   		 ' linka 0 se nastavi do log. "1", LED nebude svítit
  pause 500  ' čekání 200 ms
 
  GOTO main  'jump to label main
             'skok na návěští main
Běžící had

PICAXE bezici had.jpg

Chyba při vytváření náhledu: Soubor patrně chybí: /var/www/wiki.sps-pi.cz/www/images/f/f3/Ukáza_programu.jpg
 
 
pins = %11111111  ;zhasne všechny diody 
main: 
 
  pause 1000 ' čekání 1 000 ms = 1 s
  low 0      ' linka 0 se vynuluje log. "0"
  pause 200  ' čekání 200 ms
  high 0     ' linka 0 se nastavi do log. "1"
  low 1 pause 200 high 1 'dále postupně přepíná s 200 ms pauzou
  low 2 pause 200 high 2
  low 3 pause 200 high 3
  low 4 pause 200 high 4
  low 5 pause 200 high 5
  low 6 pause 200 high 6
  low 7 pause 200 high 7
  GOTO main   'skok na návěští main
Robot Umík

MAT-POZADAVKY-PRA-ROBOT-UMIK.jpg

je postaven na podvozku UMU-01 Lze sestavit v konfiguraci stopař pro sledování čáry nebo minisumo

  • Čidlo okraje arény: 2x QRD1114 pro Minisumo
  • Čidlo čáry: 3x QRD1114 pro sledování čáry
  • Čidlo soupeře / překážky: SFH5110 + 2x IR-LED20
  • Elektronika s PICAXE-18X
  • Programování v Basicu
  • Ovládání motorů můstkem L293D
  • Icon-pdf.gif dokumentace
Technologystudent.gif PICAXE MICROCONTROLLERS
PICAXE02

PICAXE-Buuton-LED.jpg PICAXE-Button-LED 1.jpg

init:	b2 = 0	' reset targetbyte before the loop
 
' input C.0, active high, jump to ‘pushed’ label when = 1
 
myloop:	button C.0,1,200,100,b2,1,pushed	' jump to cont when C.0 = 1
	low B.7					' output off
	pause 10				' loop delay time
	GOTO myloop
 
pushed:	high B.7				' output on
	GOTO myloop

info

Push Switch

PICAXE-Buuton-LED.jpg PICAXE-Button-LED 2.jpg

init:	LET b0 = 0
 
main:	IF pinC.7 = 1 THEN add
        low B.7
	GOTO main
 
add:	pause 100 		'short delay
	LET b0 = b0 + 1
	IF b0 < 5 THEN main
	high B.7
	GOTO main

info

For..Next

200px

symbol counter = b0 ‘ 'define the variable “counter”
symbol dp = 7 ‘       'define pin 7 with the name “dp”
 
main: 
   FOR counter = 1 TO 15 ‘ 'start a for...next loop
     high dp ‘     ‘‘        'switch pin 7 high
     pause 500 ‘           'wait for 0.5 second
     low dp ‘              'switch pin 7 low
     pause 500 ‘           'wait for 0.5 second
   NEXT counter ‘          'end of for...next loop
END ‘                      'end program

Icon-pdf.gif info

PICAXE03

PICAXE-PICAXE03.jpg

symbol counter = b0  'define the variable counter
symbol dp = 7        'define pin 7 with the name dp
 
main: 
   FOR counter = 1 TO 20  'start a for...next loop
     pins = %11000000     ' symbol 0
     pause 100            'wait for 0.1 second
     pins = %11111001     ' symbol 1
     pause 100            
     pins = %10010100     ' symbol 2
     pause 100            
     pins = %10001111     ' symbol 3
     pause 100            
     pins = %10011001     ' symbol 4
     pause 100            
     pins = %11101101     ' symbol 5
     pause 100            
 
 
     NEXT counter         'end of for...next loop
END

[ info]

PICAXE04

PICAXE-PICAXE04.jpg

symbol counter = b0  'define the variable counter
symbol dp = 7        'define pin 7 with the name dp
w1 = %00000000 
 
main: 
   FOR counter = 1 TO 255  'start a for...next loop
     pins =  w1    	   'start
     pause 100             'wait for 0.1 second
     w1 = w1 + 1           'incrementace
 
     NEXT counter         'end of for...next loop
END

[ info]

Counter

PICAXE-PICAXE04.jpg

rst: 
	w1 = %00000000 
	pins =  w1
 
main:   IF pinC.6 = 1 THEN rst
	IF pinC.7 = 1 THEN add
	GOTO main
 
add:	pause 50		' short delay	
	LET b0 = b0 + 1
	IF b0 < 5 THEN main
	pins =  w1    		' symbol 0
     	w1 = w1 + 1
 
     	GOTO main        
END

[ info]

Servo

200px

servo 4, 150      ' start servo on pin four and move to center
 
main:
    pause 500         ' wait a half second
    servopos 4, 200   ' move servo clockwise
    pause 500         ' wait a half second
    servopos 4, 150   ' move servo to center
    pause 500         ' wait a half second
    servopos 4, 100   ' move servo counter-clockwise
    pause 500         ' wait a half second
    servopos 4, 150   ' move servo to center
 
  GOTO main           ' return to main program loop

info

Osobní nástroje
Jmenné prostory
Varianty
Akce
Rychlá navigace
NEJ aktivity
Nejlepší předměty
Nejlepší MCU
SW-HW
Ostatní
Utility
Nástroje
Tisk/export