1 / 13

Digitální učební materiál

Digitální učební materiál. Nastavení vstupů a výstupů. Mikroprocesory PIC 16Fxx. Zdrojový kód (program) pro konfiguraci vstupů a výstupů. Nastavení vstupů a výstupů. Mikroprocesory PIC 16Fxx. Základem pro dobře napsaný program je:. 1) znalost základní struktury mikroprocesoru.

major
Télécharger la présentation

Digitální učební materiál

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. Digitální učební materiál

  2. Nastavení vstupů a výstupů Mikroprocesory PIC 16Fxx Zdrojový kód (program) pro konfiguraci vstupů a výstupů

  3. Nastavení vstupů a výstupů Mikroprocesory PIC 16Fxx Základem pro dobře napsaný program je: 1) znalost základní struktury mikroprocesoru 2) znalost příslušných instrukcí mikroprocesoru 3) vhodné vývojové prostředí

  4. Nastavení vstupů a výstupů Mikroprocesory PIC 16Fxx Pro zavedení programu do mikroprocesoru potřebujeme: Kompilátor - překladač • převede zapsaný sled instrukcí do strojového kódu (soubor s příponou .hex) • odhalí chybně napsané instrukce a nebo nelogický sled instrukcí (této části říkáme Debuger) • zpravidla je součástí vývojového prostředí

  5. Nastavení vstupů a výstupů Mikroprocesory PIC 16Fxx Pro zavedení programu do mikroprocesoru potřebujeme: Programátor • HW, pomocí kterého nahrajeme soubor *.hex do paměti procesoru • SW obsluhující dané zařízení

  6. Nastavení vstupů a výstupů Mikroprocesory PIC 16Fxx ASSEMBLER – jazyk symbolických adres • každý dílčí krok algoritmu má svůj specifický název - instrukci • každá instrukce musí obsahovat parametry, se kterými má pracovat • stejné instrukce se mohou opakovat s různými parametry • Například: jednoduchou instrukci „připrav čaj“zapsanou ve vyšším programovacím jazyku (např. C++) rozepíšeme v assembleru následovně: • připrav konvici • připrav šálek • připrav čaj • dej vařit vodu • po varu vypni konvici • zalij čaj v šálku

  7. Nastavení vstupů a výstupů Mikroprocesory PIC 16Fxx Program pro konfiguraci I/O PIC 16F84A (RA0, RA1 budou vstupy, RA2-4, RB0-7 budou výstupy) • org 000 • Povinná direktiva určující kam se uloží první instrukce programu. Program se začne vykonávat od této adresy (v našem případě od 000). • bsf 03h,5 • Bit Set f – nastavení příslušného bitu do 1. „f“ je označení kteréhokoli registru – v parametrech musí být uvedena jeho adresa. • V uvedeném příkladu tato instrukce přepne RP0 registru STATUS do 1 a umožní od této chvíle přístup do stránky 1 paměti.

  8. Nastavení vstupů a výstupů Mikroprocesory PIC 16Fxx Program pro konfiguraci I/O PIC 16F84A (RA0, RA1 budou vstupy, RA2-4, RB0-7 budou výstupy) • movlw 03h • Instrukce přesunu (move) konstanty (l) do pracovního registru (w). Pracovní registr má adresu 000, a proto nemusí být udávána jeho adresa v parametrech. Musí tam být ale uvedena konstanta l (nejčastější zápis čísel je v hexadecimálním tvaru). • movwf 85h • Instrukce přesunu obsahu pracovního registru (w) do registru TRISA (adresa 85h). • U speciálních registrů je možno zapsat adresu pomocí jména registru (movwf trisa).

  9. Nastavení vstupů a výstupů Mikroprocesory PIC 16Fxx Program pro konfiguraci I/O PIC 16F84A (RA0, RA1 budou vstupy, RA2-4, RB0-7 budou výstupy) • movlw 00h • - zápis konstanty do pracovního registru • (clrw) • - alternativní způsob zápisu samých 0 do pracovního registru. „clr“ – vyčištění registru • - clrf – zde je nutné uvést adresu registru, který má být vymazán • movwf 86h • - naplnění registru TRISB konstantou z W • bcf 03h,5 • - nastaveni příslušného bitu do 0 • - tato instrukce přepne RP0 registru STATUS do 0 a umožní od této chvíle návrat do stránky 0 paměti

  10. Nastavení vstupů a výstupů Mikroprocesory PIC 16Fxx Program pro konfiguraci I/O PIC 16F84A (RA0, RA1 budou vstupy, RA2-4, RB0-7 budou výstupy) • Takto bude vypadat zdrojový kód našeho programu: • org 000 • bsf 03h,5 • movlw 03h • movwf 85h • movlw 00h • movwf 86h • bcf 03h,5 • org 000 • bsf status,5 • movlw 03h • movwf trisa • clrw • movwf trisb • bcf status,5 a nebo: Přepínání zápisu do stránky 0 a 1 pomocí Satus zabrání neúmyslnému překonfigurování I/O po čas běhu programu.

  11. Nastavení vstupů a výstupů Mikroprocesory PIC 16Fxx Program pro konfiguraci I/O PIC 16F84A (RA0, RA1 budou vstupy, RA2-4, RB0-7 budou výstupy) Zdrojový kód v assembleru Zdrojový kód přeložený do souboru .hex (strojový kód)

  12. Nastavení vstupů a výstupů Mikroprocesory PIC 16Fxx Kontrolní otázky: 1) Jakou instrukcí změníme hodnotu jednoho bitu? Instrukcemi bsf a bcf s uvedením adresy registru a čísla bitu. 2) Jaké základní instrukce přesunu znáš? movlw a movwf 3) Co se stane, vynecháme-li v programu přepnutí do stránky 1? Hodnota konstanty se zapíše místo na adresu 85(6)h na adresu 05(6)h, i když je v parametrech zapsaná adresa TRIS registrů.

  13. Použité zdroje: HRBÁČEK, Jiří. Moderní učebnice programování jednočipových kontrolérů PIC 1. díl. 1. vyd. Praha: BEN, 2004. ISBN 80-7300-136-5. Autorem materiálu a všech jeho částí, není-li uvedeno jinak, je Ing. Peter Podoba.

More Related