PIC mikrokontroller Loeng 4 - PowerPoint PPT Presentation

nenet
pic mikrokontroller loeng 4 n.
Skip this Video
Loading SlideShow in 5 Seconds..
PIC mikrokontroller Loeng 4 PowerPoint Presentation
Download Presentation
PIC mikrokontroller Loeng 4

play fullscreen
1 / 20
Download Presentation
133 Views
Download Presentation

PIC mikrokontroller Loeng 4

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. PIC mikrokontrollerLoeng 4 Alar Ainla 5.oktoober.2004

  2. Käsud (2)

  3. Kuidas käsud paiknevad mälus ?

  4. Käsukoodid

  5. Pisikene ülesanne • Korrutada 00011001*00001010=? • Vastus 11100001=225=25*9 • Kuidas realiseerida korrutamist? • Kuidas realiseerida jagamist?


  6. Mäluarhitektuurid • Vaatleme seda, kuidas protsessor näeb ja kasutab mälu! • Muutuja mälu • Programmi mälu • Stack (pinu) mälu • Data EEPROM

  7. Muutuja mälu • Muutuja mäluruumis on ka erifunktsioonidega registrid • Käsu tasemel erifunktsioonidega registrid ei eristu tavalisest mälupesast • Hetkel PIC16 seerias ülimalt 368baiti mälu • Ka meie PICil (PIC16F876A) on 368baiti mälu • Kui sellele lisada veel registrid, siis on vaja vähemalt 9 biti aadressiks ... :S

  8. Muutuja mälu (2) • Lahendus!!! • Mälu on jagatud bankadeks ja nende valimiseks on kuskil bitid

  9. Muutuja mälu • SFR • GPR • CommonRAM

  10. Muutuja mälu adresseerimine • Otsene (direct) • Viidaga (indirect)

  11. indirect adresseerimine • Aadress peab olema kirjutatud spetsiaalsesse registrisse (FSR 0x04) • Tulemuse lugemine toimub teisest spetsiaalsest registrist (INDF 0x00) • IRP (1-2/2-3 bank)

  12. Adresseerimise mehhanism

  13. Pisikene ülesanne

  14. Programmi mälu • Programmi mälus on programm! • Meie PICil on 14336 baiti = 8192x14bitti • Selleks et seda addresseerida on vaja 13bitti ...! • 13bitine loendur (PC) • Programmis (goto, call) ülimalt 11bitti • On 2k käsused blokid. (0-7FF,800-FFF,1000-17FF,1800-1FFF) • PCLATH (Program Counter Latch High). • Järjestik programm läheb algusest kuni lõpuni • Kui vähem mälu siis liiga kaugele adresseeriminewraparound

  15. Programmi mälu (2)

  16. Programmi mälu (3) • Reset vector 0x0000 (ja PCLATH=0) • Interrupt vector 0x0004 (PCLATH muutumatu) • Kallibratsiooni informatsioon (retlw)

  17. Programmi loendur (PC) • 13-bit • Madalam bait on PCL • Kõrgem on PCH (muudetav vaid läbi PCLATH)

  18. Programmi loendur (PC)(2)

  19. GOTO arvutamine • Näiteks ADDWF PCL

  20. Stack