1 / 25

SIMULACIJA PIC MIKROKONTROLER A PREKO SOFTVERA PIC SIMULATOR IDE

Elektronski fakultet u Nišu Katedra za elektroniku Predmet: Mikroprocesorski sistemi prof. dr Mile Stojčev. SIMULACIJA PIC MIKROKONTROLER A PREKO SOFTVERA PIC SIMULATOR IDE. S tudent: Ranko Prokopović 10609. UVOD.

blithe
Télécharger la présentation

SIMULACIJA PIC MIKROKONTROLER A PREKO SOFTVERA PIC SIMULATOR IDE

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. Elektronski fakultet u Nišu Katedra za elektroniku Predmet: Mikroprocesorski sistemi prof. dr Mile Stojčev SIMULACIJA PIC MIKROKONTROLERAPREKO SOFTVERAPIC SIMULATOR IDE Student: Ranko Prokopović 10609

  2. UVOD • Misao vodilja autora ovog seminarskog rada bila je da studentima približi program PIC Simulator IDE, koji je razvio Vladimir Šošo iz Zemuna. U pitanju je simulator velikog broja mikrokontrolera 12F i 16F serija. Detaljnije informacije o pomenutom programu su dostupne na sajtu http://www.oshonsoft.com/pic.html, a koriste ga brojni renomirani koledži i fakulteti. • U radu je dat kratak opis mikrokontrolera PIC16F877, pregled menija PIC Simulator IDE, kao i nekoliko primera koji pokazuju mogućnosti ovog softvera • Na kraju je dato nekoliko zadataka za studente, koje treba rešavati na laboratorijskim vežbama

  3. Mikrokontroler PIC16F877 • PIC16F877 je Microchip-ov 8-bitni CMOS mikrokontroler baziran na flash tehnologiji • RISC arhitektura omogućuje odvojene magistrale 8-bitnih podataka i 14-bitne programske memorije • Jezgro mikrokontrolera PIC16F877 proizvodi se u 40-pinskom (DIP) ili u 44-pinskim kućištima (QFP i PLCC)

  4. Mikrokontroler PIC16F877 • Na narednom slajdu je data šema arhitekture mikrokontrolera PIC16F877 • Mogu se uočiti standardne komponente: • Flash programska memorija – 8 kiloreči • RAM (File Registers) – 368 bajtova • Aritmetičko-logička jedinica (ALU) • Akumulator (Working Register) • Hardverski magacin (Stack) sa 8 nivoa • EEPROM memorija podataka – 256 bajtova • Razne periferne jedinice (portovi, tajmeri, A/D konvertor, USART,...)

  5. Arhitektura mikrokontrolera PIC16F877

  6. Mikrokontroler PIC16F877 • PIC16F877 podržava tehniku prekida (eng. interrupts). Postoji ukupno 14 izvora prekida, što spoljašnjih, što unutrašnjih • Ono što mikrokontrolere izdvaja od ostalih procesora jeste prisustvo raznih specijalnih kola koja se trebaju izboriti sa potrebama real-time aplikacija • Među ponuđenim karakteristikama postoji mogućnost izbora četiri tipa oscilatora, mogućnost upotrebe Power-up (PWRT) i Oscilator Start-up (OST) tajmera, te eventualno korišćenje Power-on (POR) i/ili Brown-out (BOR) reseta • Sprečavanje zalaska programa u mrtve petlje pomaže upotreba Watchdog tajmera (WDT)

  7. Mikrokontroler PIC16F877 • Zaštitu kôda od neželjenog čitanja pruža opcija code protection • Za uređaje sa baterijskim napajanjem interesantna mogućnost je Sleep Mode • Napajanje se dovodi na pinove VDD, a masa na pinove VSS. Nožice OSC1 i OSC2 služe za priključenje oscilatorskih komponenti. Osim za reset-kolo pin 1 (MCLR/VPP) ima ulogu u toku procesa programiranja mikrokontrolera. Ostalih 33 pina predstavljaju I/O linije. Oni su grupisani u pet portova (PORT A, B, C, D i E) • Na kraju ovog uvoda treba napomenuti da su Microchip PIC mikrokontroleri dominantni u odnosu na konkurentne relativno visokom strujom koju može propustiti I/O pin (25 mA)

  8. Mikrokontroler PIC16F877 • Strukturu memorije kod PICmicro™ mikrokontrolera čine tri odvojena bloka: • Programska memorija • Memorija podataka • EEPROM memorija podataka • Odvojeno od navedenih memorijskih blokova egzistira zasebna struktura magacin (stack), koja se sastoji od osam 13-bitnih registara Mapa pogramske memorije

  9. Mikrokontroler PIC16F877 • PIC16F877 mikrokontroleri imaju 13-bitni programski brojač (PC) koji može da adresira memorijski prostor od 8k programskih reči od 14 bita • Memorija za podatke je izdeljena u više celina banki (eng. banks), a sastoji se od registara opšte namene (General Purpose Registers) i registara specijalne funkcije (Special Function Registers)

  10. Mikrokontroler PIC16F877 • Programski brojač (PC) određuje adresu instrukcije u programskom flešu koja će sledeća biti pribavljena • STATUS registar je veoma bitan i zato je predviđeno da se može adresirati iz bilo koje banke. On pokazuje status aritmetičko-logičke jedinice, reset status mikrokontrolera i sadrži bite za selekciju banki internog RAM-a • Registar OPTION_REG se koristi za konfiguraciju preskalera za tajmer 0 ili Watchdog, za upravljanje tajmerom 0, selekciju ivice okidanja eksternog interapta, te za omogućenje Pull-up otpornika na portu B. • INTCON je registar za manipulisanje sistemom prekida mikrokontrolera

  11. Mikrokontroler PIC16F877 • Za vezu mikrokontrolera sa svetom oko sebe zaduženi su ulazno/izlazni portovi • Ima ukupno pet I/O portova i oni su označeni sa A, B, C, D i E • Portovi su nejednakih širina, tako port E čine 3 pina, port A čine 6 pinova, a portove B, C i D čine 8 pinova • Svaki port poseduje odgovarajući registar (PORTX) preko kojeg se programski pristupa I/O pinovima • Tajmeri se koriste za merenje vremena i brojanje eksternih događaja. Ugrađena su tri tajmerska modula (TMR 0,1,2) od kojih svaki ima svoje specifičnosti.

  12. Mikrokontroler PIC16F877 • CCP moduli - CCP je skraćenica za Compare/Capture/PWM. PIC16F877 poseduje dva ovakva modula koji mu “pomažu” da se lakše nosi sa raznim zahtevima real-time aplikacija. • Ostale periferije: • SSP modul (Synchronous Serial Port) - služi za komunikaciju sa serijskim EEPROM-ima, pomeračkim registrima, displej-drajverima, A/D konvertorima, itd. Ovaj modul može raditi u jednom od dva moda: Serial Peripheral Interface (SPI) ili Inter-Integrated Circuit (I2C) • USART (Universal Synchronous Asynchronous Receiver Transmiter) služi za povezivanje sa personalnim računarom, ali to nije njegova jedina mogućnost primene. • PSP (Parallel Slave Port). On služi da se PIC16F877 direktno poveže na 8-bitnu magistralu podataka drugog mikroprocesora

  13. Asembler za PIC mikrokontrolere • Asemblerske instrukcije se izvršavaju tokom četiri taktna intervala, izuzev instrukcija grananja čije izvršavanje traje duže. Primera radi, ako interni oscilator mikrokontrolera radi na frekvenciji 4 MHz, izvršenje standardne instrukcije traje 1µs. • S obzirom da mikrokontroleri serije PIC16Fxxx imaju RISC arhitekturu, operišu sa svega 35 asemblerskih instrukcija koje možemo podeliti u pet grupa: • instrukcije koje operišu sa podacima • aritmetičko-logičke instrukcije • instrukcije koje operišu sa bitovima • instrukcije koje upravljaju tokom programa • ostale instrukcije.

  14. PIC Simulator IDE • PIC Simulator IDE je aplikacija koju koriste projektanti u razvoju sistema sa PIC mikrokontrolerima, a karakteriše je njena laka upotreba u WINDOWS okruženju. Pomenuta aplikacija ima integrisan simulator (emulator), BASIC kompajler, asembler, disasembler i debager. • Glavni aplikacioni prozor prikazuje statuse svih internih registara datog mikrokontrolera, instrukciju koja je poslednja izvršena i instrukciju koja će se sledeća izvršiti, taktni ciklus i brojač instrukcija kao i realno vreme trajanja simulacije.

  15. PIC Simulator IDE Izgled glavnog aplikacionog prozora

  16. PIC Simulator IDE FILE MENI • Komande ovog menija su: • Clear memory – resetovanje simulatora i postavljanje u početno stanje • Load program – učitavanje programskog fajla (HEX) • Save memory – čuvanje podataka iz memorija (FLASH i EEPROM)

  17. PIC Simulator IDE SIMULATION MENI • Komande ovog menija su: • Start – otpočinje simulaciju • Step – izvršavanje simulacije korak po korak • Stop – zaustavlja simulaciju

  18. PIC Simulator IDE RATE MENI • Komande ovog menija predstavljaju brzine izvršavanja simulacije • -Step by step – korak po korak (instrukcija po instrukcija) • -Slow – vreme između dve instrukcije je 1500 ms • -Normal – vreme između dve instrukcije je 250 ms • -Fast – vreme između dve instrukcije je 50 ms • -Extremely fast – vreme između dve instrukcije je suviše malo tako da brzina simulacije zavisi od brzine rada računara • -Utimate (No refresh) – glavni prozor simulatora se ne osvežava • pa se tako značajno uvećava brzina simulacije

  19. PIC Simulator IDE • TOOLS MENI • Ovaj meni sadrži puno pomoćnih alatki koje su značajne za simulaciju rada jednog mikrokontrolera • Neke od njih su: Program Memory Editor, EEPROM Memory Editor, Microcontroller View, Disassembler, Breakpoints Manager, Assembler, BASIC Compiler, 8 x LED Board, Oscilloscope, 7-Segment LED Displays Panel, LCD Module

  20. PIC Simulator IDE OPTIONS MENI • Ovaj meni nudi dodatne opcije koje vam omogućuju da simulaciju podesite po potrebi • Tu je naravno i HELP menikoji služi za pomoć u nekimtrenucima kada vam je to potrebno

  21. Primeri • U ovom seminarskom radu je obrađeno nekoliko primera. Podeljeni su u grupe: • Elementarni primeri (ukupno 8) – sabiranje i oduzimanje dva broja, upis broja na određenu lokaciju, zamena vrednosti dva broja i slično • Jednostavni primeri (ukupno 3) – brojač, upis podataka u EEPROM memoriju, A/D konverzija napona • Napredniji primeri (ukupno 3) – izračunavanje izraza, upis i čitanje podataka iz EEPROM-a, prikazivanje A/D konverzije na LCD displeju • Dopunski primeri (ukupno 4) – IF i FOR petlje, primena kašnjenja

  22. Laboratorijske vežbe • Takođe su dati zadaci za studente koje oni treba da rešavaju na časovima laboratorijskih vežbi • Ovi zadaci su predviđeni za lako i brzo rešavanje, i veoma su slični kao primeri obrađeni u tekstu

  23. Zaključak • U prethodnom tekstu ovog seminarskog rada je opisan softver PIC Simulator IDE, koji služi za simulaciju većeg broja PIC mikrokontrolera 12F i 16F serija. • Najpre je detaljno opisano 8 primera u asembleru, da bi kasnije bilo detaljno opisano i ilustrovano 6 primera sa mikrokontrolerom PIC16F877 • Primeri su savim dovoljni da se savlada suština programiranja i simulacije mikrokontrolera korišćenjem softvera PIC Simulator IDE

  24. Literatura • PIC16F877, Microchip, sajt http://www.microchip.com • PIC Simulator IDE, sajt http://www.oshonsoft.com/pic.html • Instrukcije u PIC BASIC-u, sajt http://milan.milanovic.org/skola • Instrukcije u asembleru za PIC, sajt http://mikroe.com

  25. CV

More Related