Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Mcu

945 views

Published on

miniintervention into robo-world by Ing. Pavel Bansky

Published in: Technology
  • Be the first to comment

  • Be the first to like this

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 

×