Využití ICT pro rozvoj klíčových kompetencí CZ.1.07/1.5.00/34.0448 Střední odborná škola elektrotechnická, Centrum odborné přípravy Zvolenovská 537, Hluboká nad Vltavou Využití ICT pro rozvoj klíčových kompetencí CZ.1.07/1.5.00/34.0448 CZ.1.07/1.5.00/34.0448
Programování jednočipových mikropočítačů Číslo projektu CZ.1.07/1.5.00/34.0448 Číslo materiálu ICT-PG1-1/14 Programování jednočipových mikropočítačů Název školy Střední odborná škola elektrotechnická, Centrum odborné přípravy, Zvolenovská 537, Hluboká nad Vltavou Autor Bc. Zdeněk Boháč Tématický celek Přerušení Ročník 2-4. ročník SOŠ Datum tvorby Leden 2013 Anotace Prezentace s výkladem Metodický pokyn DUM pro seznámení s využitím přerušení u jednočipového mikroprocesoru PIC16F84A Pokud není uvedeno jinak, uvedený materiál je z vlastních zdrojů autora CZ.1.07/1.5.00/34.0448 Zpět
Přerušení 4 zdroje přerušení u PIC16F84A: Hardwarové přerušení je speciální vlastností mikroprocesoru, která umožňuje automaticky při vykonávání programu zareagovat na vnější podnět (přerušit vykonávaný program), vykonat nějakou akci (obsluhu přerušení), poté se opět vrátit k vykonávání programu. 4 zdroje přerušení u PIC16F84A: 1. Vnější přerušení na vývodu RB0 2. Vnější přerušení změnou na 4 bitech brány PORTB (RB7, RB6, RB5, RB4) 3. Vnitřní přerušení přetečením čítače TMR0 4. Vnitřní přerušení dokončením zápisu do paměti EEPROM CZ.1.07/1.5.00/34.0448 3 Zpět
Přerušovací logika CZ.1.07/1.5.00/34.0448 4 Zpět
Konfigurace hardwarového přerušení INTCON 0Ch, 8Ch Registr INTCON obsahuje bity pro nastavení přerušovacího systému PIC16F84A CZ.1.07/1.5.00/34.0448 Zpět 5
Registr INTCON INTCON 0Ch, 8Ch GIE – globální povolení přerušení (1-povoleno, 0-zakázáno) EEIE – přerušení od dokončení zápisu do EEPROM TOIE – přerušení od přetečení čítače/časovače TMR0 INTE – přerušení od vnějšího signálu RBO/INT RBIE - přerušení změnou hodnoty na jednom ze 4 vyšších bitů PORTB TOIF – příznak přetečení čítače/časovače TMR0 (1-došlo, 0-nedošlo) INTF – příznak vnějšího přerušení na vývodu RB0/INT RBIF – příznak přerušení změnou hodnoty na jednom ze 4 vyšších bitů brány PORTB CZ.1.07/1.5.00/34.0448 6 Zpět
Co se děje při vykonání přerušení? 1. GIE = 0, tj. zakážou se všechny další druhy přerušení 2. Uložení adresy místa, na kterém bylo vykonáno přerušení 3. Přesun na vektor přerušení, tj. na adresu 0004h 4. Záloha nastavení registru STATUS a pracovního registru W 5. Zjištění, z jakého zdroje přerušení nastalo, tj. otestování příznakových bitů RBIF, INTF, EEIF a TOIF 6. Vymazání příznakových bitů 7. Obnova dat pro pracovní registr W a STATUS 8. Ukončení obsluhy přerušení instrukcí RETFIE CZ.1.07/1.5.00/34.0448 Zpět 7
Ukázka zdrojového kódu obsluhy přerušení ORG 0x04 MOVWF RAMW ; ulozeni hodnoty registru w do pameti MOVF STATUS,W ; ulozeni hodnoty status do w (movfw status,0) MOVF RAMS ; ulozeni hodnoty registru status do pameti BTFSC INTCON,1 ; kontrola priznaku preruseni z RB0 CALL AKCE ; provedeni akce MOVF RAMS,W ; hodnora z rams do w MOVWF STATUS ; obnova registru status (presun z w ) SWAPF RAMW,F ; obnova w ze stavu pred prerusenim SWAPF RAM,W ; prehozenim ctverice bitu RETFIE ; konec preruseni CZ.1.07/1.5.00/34.0448 Zpět 8
Seznam literatury a pramenů Materiály jsou určeny pro bezplatné používání pro potřeby výuky a vzdělávání na všech typech škol a školských zařízení. Jákékoliv další využití podléhá autorskému zákonu. Jednočipový mikropočítač PIC16F84A Překlad originální dokumentace [online]. 1998 [cit. 2012-10-05]. Dostupné z:www.copsu.cz/mikrop/mytest/obsah/informace/pomucky/%C2%B5pc/pic16f84a.zip PIC krok za krokem [online]. [cit. 2012-11-02]. Dostupné z:http://www.asix.cz/download/other/pic_krok_za_krokem.pdf CZ.1.07/1.5.00/34.0448 Zpět