PICAXE

Z MediaWiki SPŠ a VOŠ Písek
(Rozdíly mezi verzemi)
Přejít na: navigace, hledání
 
(Není zobrazeno 24 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
 +
 
 +
</source>
 +
[http://www.picaxe.com/BASIC-Commands/Digital-InputOutput/button/ info]
 +
 
 
|-
 
|-
 +
| '''Push Switch'''
 +
[[Soubor:PICAXE-Buuton-LED.jpg|200px]]
 +
[[Soubor:PICAXE-Button-LED_2.jpg|200px]]
 +
|
 +
<source lang="qbasic">
  
 +
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
  
 +
</source>
 +
[http://www.picaxe.com/Circuit-Creator/Switches/Push-Switch/ info]
  
 +
|-
 +
| '''For..Next'''
 +
[[Soubor:PICAXE-Counter.jpg|200px]]
 +
|
 +
<source lang="qbasic">
 +
symbol counter = b0 ‘ 'define the variable “counter”
 +
symbol dp = 7 ‘      'define pin 7 with the name “dp”
  
== www: ==
+
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
 +
</source>
 +
[[Soubor:Icon-pdf.gif]] [http://robotics.ee.uwa.edu.au/eyejr/pic-controller/PICAXE-tutorial.pdf info]
  
[http://www.picaxe.com/Software/PICAXE/PICAXE-Programming-Editor/ SW: PICAXE Programming Editor]
+
|-
 +
| '''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           
  
[http://www.picaxe.com/Software/PICAXE/AXEpad/ SW: AXEpad]  
+
   
 +
    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
  
[http://programujte.com/clanek/2010082700-programovani-picaxe-uvod/ Programování PICAXE - Úvod]
+
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
 +
</source>
 +
[ info]
  
[http://programujte.com/clanek/2010071900-programovani-picaxe-08m/ Programování PICAXE]
+
|-
 +
| '''Counter'''
 +
[[Soubor:PICAXE-PICAXE04.jpg|200px]]
 +
|
 +
<source lang="qbasic">
 +
rst:
 +
w1 = %00000000
 +
pins =  w1
  
[http://programujte.com/clanek/2010090300-programovani-picaxe-1-lekce/ Programování PICAXE - 1. lekce]
+
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
 +
</source>
 +
[ info]
 +
|-
  
[[Soubor:Icon-pdf.gif]] [http://www.hobbyrobot.cz/PDF/PICAXE_basic_man_cz.pdf PICAXE – příručka programátora]
+
| '''Servo'''
 +
[[Soubor:PICAXE-PICAXE_servo.jpg|200px]]
 +
|
 +
<source lang="qbasic">
  
[[Soubor:Icon-pdf.gif]] [http://www.hobbyrobot.cz/PDF/picaxe_technical_faq_cz.pdf Nejčastěji pokládané dotazy]
+
servo 4, 150      ' start servo on pin four and move to center
  
[[Soubor:Icon-pdf.gif]] [http://letsmakerobots.com/files/lmr-Start.pdf How to make your first Robot]
+
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
  
[[Soubor:Icon-pdf.gif]] [http://www.rcmania.cz/modules.php?name=Private_Messages&mode=post&u=1029 PicaxeRCR2009_01-10.pdf]
+
  goto main          ' return to main program loop
 +
 
 +
</source>
 +
[http://picaxe.hobbizine.com/servo.html info]
 +
|-
 +
|}

Aktuální verze z 23. 2. 2021, 14: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