Mcu

893 views

Published on

miniintervention into robo-world by Ing. Pavel Bansky

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
893
On SlideShare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
7
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Mcu

  1. 1. Velmi jemný úvod do programování microprocesorů Ing. Pavel Bánský
  2. 2. Agenda Trocha historie  Trocha teorie  Programování  Komunikace s okolním světem 
  3. 3. Trocha historie Vysoký stupeň integrace umožnil výrobu  mikroprocesorů „stovky“ klopných obvodů v jednom pouzdře  „tisíce“ tranzistorů v jednom pouzdře  1971 – první mikroprocesor Intel 4004  2009  8 bitové mikroprocesory  16 bitové mikroprocesory  32 bitové mikroprocesory 
  4. 4. Trocha teorie Mikroprocesor = mikropočítač  Poslouchá příkazy (velmi atomické instrukce)  Má paměť  Flash – pro uložení programu  RAM – pro běh programu a „přemýšlení“  Vstupně a výstupní obvody  Digitální  Analogové 
  5. 5. Příklad programu (symbolické instrukce) mov R1,#POCET odecet: mov DPTR,#VYSTUP clr C mov R0,#PROSTOR mov A,DOLNI2 subb A,DOLNI1 ZAPIS: mov POMOCD,A mov POMOCH,@R0 mov A,HORNI2 inc R0 subb A,HORNI1 mov A,@R0 mov POMOCH,A movx @DPTR,A clr C inc DPTR mov A,POMOCH rrc A mov A,POMOCHm mov POMOCH,A movx @DPTR,A v=(ni+1 – ni) / 4 mov A,POMOCD inc DPTR rrc A inc R0 mov POMOCD,A djnz R1,ZAPIS clr C KONEC: sjmp KONEC mov A,POMOCH rrc A test1: jnc vymen mov @R0,A ljmp odecet inc R0 vymen: mov POMOCD,DOLNI1 mov DOLNI1,DOLNI2 mov A,POMOCD mov DOLNI2,POMOCD rrc A mov POMOCD,HORNI1 mov @R0,A mov HORNI1,HORNI2 mov HORNI2,POMOCD inc R0 ljmp odecet djnz R1,HLAVNI
  6. 6. Programování Program se píše v PC  Provádí se překlad (kompilace) do strojového kódu  Výsledný datový soubor se nahraje do mikropočítače  speciálním programovacím obvodem
  7. 7. Jste zděšeni?
  8. 8. Nebuďte
  9. 9. Mikroprocesory pro línější Využívají běžné mikroprocesory  Obsahují interpretr vyššího programovacího jazyka  Na způsob Basic, Pascal, C, Java  Mají překladač/kompilátor vyššího programovacího  jazyka Program se nahrává pomocí seriového  portu, USB, sítě Možnost komunikace s PC pro případ ladění 
  10. 10. Různé technologie Microsoft .NET Micro Framework  Profesionální řešení založené na procesorech ARM  Objektový programovací jazyk C#  Vysoká produktivita a možnosti  http://www.microsoft.com/netmf 
  11. 11. Různé technologie Arduino  Založeno na procesorech Atmel-AVR  Programovací jazyk podobný C++  Snadné použití  http://arduino.cc/en/Reference/HomePage 
  12. 12. Různé technologie Picaxe  Založeno na procesorech Microchip PIC  Obsahuje interpret jazyka Basic  Jednoduché strukurované programování  Dobrá dokumentace  http://www.rev-ed.co.uk/docs/picaxe_manual1.pdf 
  13. 13. Příklad programu (vyšší programovací jazyk) I2CDevice.I2CTransaction[] xact = new I2CDevice.I2CTransaction[] { bus.CreateWriteTransaction(new byte[] { 0x02}), bus.CreateReadTransaction(buffer) }; int count = bus.Execute(xact, 2000); if (count == 3) { int azimuth = buffer[0] << 8; azimuth |= buffer[1]; azimuth /= 10; ShowAzimuth(azimuth); }
  14. 14. Komunikace s okolním světem Digitální vstupy / výstupy  Měření délky pulsů  Počítání pulsů  Spouštěcí impuls 10 s PIN 1 Impuls úměrný vzálenosti 100 s – 25ms PIN 2
  15. 15. Komunikace s okolním světem Analogové vstupy  Měření vstupního napětí 
  16. 16. Kam dál http://www.hobbyrobot.cz/  http://shop.snailinstruments.com  Robotický den – Soutěž Eurobot  Sobota 25. Dubna 2009  10 – 17  Retro Music Hall, Francouzská 4, Praha 2 

×