1 / 20

PIC mikrokontroller Loeng 4

PIC mikrokontroller Loeng 4. Alar Ainla 5.oktoober.2004. Käsud (2). Kuidas k äsud paiknevad mälus ?. Käsukoodid. Pisikene ülesanne. Korrutada 00011001*00001010=? Vastus 11100001=225=25*9 Kuidas realiseerida korrutamist? Kuidas realiseerida jagamist?. Mäluarhitektuurid.

nenet
Download Presentation

PIC mikrokontroller Loeng 4

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

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

More Related