Architektura jednočipových mikropočítačů PIC 16F84 a PIC 16F877. Tato prezentace vznikla jako součást řešení projektu FRVŠ 2008/566.



Podobné dokumenty
Jednočipové mikropočítače (mikrokontroléry)

Microchip. PICmicro Microcontrollers

Jednočipový mikropočítač PIC16F87/88. Překlad originální dokumentace. Ing. Vladimír Čebiš

CONFIGURATION zapisuje se na začátek inicializační části programu použitím direktivy preprocesoru pragma


Podrobný obsah CHARAKTERISTIKA A POROVNÁNÍ ØADY PIC16F87X A PIC16F87XA TYPY POUZDER A PØIØAZENÍ VÝVODÙ PIC16F87X TYPY POUZDER A PØIØAZENÍ


CONFIGURATION zapisuje se na začátek programu použitím direktivy preprocesoru pragma

Činnost CPU. IMTEE Přednáška č. 2. Několik úrovní abstrakce od obvodů CPU: Hodinový cyklus fáze strojový cyklus instrukční cyklus

Mikrokontroléry. Doplňující text pro POS K. D. 2001

Osmibitové mikrořadiče Microchip PIC16F887

Osmibitové mikrořadiče Microchip PIC16F1937


Procesor. Základní prvky procesoru Instrukční sada Metody zvýšení výkonu procesoru

Základní uspořádání pamětí MCU

Dělení pamětí Volatilní paměti Nevolatilní paměti. Miroslav Flídr Počítačové systémy LS /11- Západočeská univerzita v Plzni

Procesor z pohledu programátora

Popis instrukční sady - procesory PIC Aritmetické a logické operace

Mikrořadiče. Ing. Jaroslav Bernkopf

MIKROPROCESORY PRO VÝKONOVÉ SYSTÉMY. Systém přerušení. České vysoké učení technické Fakulta elektrotechnická

MSP 430F1611. Jiří Kašpar. Charakteristika

Akademický rok: 2004/05 Datum: Příjmení: Křestní jméno: Osobní číslo: Obor:

Architekura mikroprocesoru AVR ATMega ( Pokročilé architektury počítačů )

Mikrokontrolery. Úvod do obvodů Atmega 328 a PIC16F88

Aplikace Embedded systémů v Mechatronice. Michal Bastl A2/713a

Přednáška A3B38MMP. Bloky mikropočítače vestavné aplikace, dohlížecí obvody. 2015, kat. měření, ČVUT - FEL, Praha J. Fischer

1. MIKROPROCESOR ATMEGA A/D PŘEVODNÍK MÓDY PŘEVODNÍKU Single Conversion Mode Auto Triggering Start...

Programování PICAXE18M2 v Assembleru

Procesory z řady 8051

Organizace pam ového prostoru 1

Sběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC

Paměti Flash. Paměti Flash. Základní charakteristiky

Konfigurace portů u mikrokontrolérů

Koncepce DMA POT POT. Při vstupu nebo výstupu dat se opakují jednoduché činnosti. Jednotlivé kroky lze realizovat pomocí speciálního HW.

Kubatova Y36SAP procesor - control unit obvodový a mikroprogramový řadič RISC Y36SAP-control unit 1

Principy komunikace s adaptéry periferních zařízení (PZ)

Monolitické mikropoèítaèe II

Princip funkce počítače

Metody připojování periferií

Úvod do mobilní robotiky NAIL028

Architektura počítače

Metody připojování periferií BI-MPP Přednáška 2

Základní principy konstrukce systémové sběrnice - shrnutí. Shrnout základní principy konstrukce a fungování systémových sběrnic.

Semestrální práce z předmětu Speciální číslicové systémy X31SCS

Pohled do nitra mikroprocesoru Josef Horálek

Strojový kód k d a asembler procesoru MIPS SPIM. MIPS - prostředí NMS NMS. 32 ks 32bitových registrů ( adresa registru = 5 bitů).

7. Monolitické počítače, vlastnosti a použití.

Profilová část maturitní zkoušky 2014/2015

Paměti EEPROM (1) Paměti EEPROM (2) Paměti Flash (1) Paměti EEPROM (3) Paměti Flash (2) Paměti Flash (3)

Technické prostředky počítačové techniky

Úvod do mobilní robotiky AIL028

Operační paměti počítačů PC

PIC krok za krokem. Komentované příklady programů pro PIC

Použití programovatelného čítače 8253

Sběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC

Struktura a architektura počítačů (BI-SAP) 7

Seznámení s mikropočítačem. Architektura mikropočítače. Instrukce. Paměť. Čítače. Porovnání s AT89C2051

RISC a CISC architektura

Systém řízení sběrnice

Přerušení na PC. Fakulta informačních technologií VUT v Brně Ústav informatiky a výpočetní techniky. Personální počítače, technická péče cvičení

Profilová část maturitní zkoušky 2015/2016

Sběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC

ZÁKLADY PROGRAMOVÁNÍ. Mgr. Vladislav BEDNÁŘ /14

Periferní operace využívající přímý přístup do paměti

IMPLEMENTACE JÁDRA 8-BITOVÉHO MIKROKONTROLÉRU DO FPGA A ASIC

Historie osmibitových mikroprocesoru a mikroradicu ZILOG.

Základy informatiky. 2. Přednáška HW. Lenka Carr Motyčková. February 22, 2011 Základy informatiky 2

MIKROPOČÍTAČOVÉ SYSTÉMY

Přerušovací systém s prioritním řetězem

Mikrokontroléry PIC a vestavěné systémy. PIC18 použití assembleru a jazyka C

Monolitické mikropočítače III

ŘÍZENÍ ELEKTRICKÝCH POHONŮ. Systémová struktura počítače Řízení běhu programu. České vysoké učení technické Fakulta elektrotechnická

INFORMAČNÍ LED DISPLEJ

Obsluha periferních operací, přerušení a jeho obsluha, vybavení systémových sběrnic

APLIKACE MIKROKONTROLÉRŮ PIC32MX

Strojový kód. Instrukce počítače

MIKROPROCESORY PRO VÝKONOVÉ SYSTÉMY. Systémová struktura počítače

Struktura a architektura počítačů

Algoritmizace a programování

Procesor. Procesor FPU ALU. Řadič mikrokód

V PRAZE Fakulta elektrotechnická Katedra teorie obvodů. Úvod do mikrokontrolérů ATMEL AVR Konkrétn. ATmega. Martin Pokorný 31SCS 2004

Obr. 1 - Hlavní okno prostředí MPLAB

Jízda po čáře pro reklamní robot

Jednočipový mikropočítač PIC12F629/675

Architektura procesoru ARM

Vstupně - výstupní moduly

Architektury VLIW M. Skrbek a I. Šimeček

Mikroprocesory Z8Encore! firmy ZiLOG

PCKIT LPT MODUL SBĚRNICE IOBUS PRO PC LPT. Příručka uživatele. Střešovická 49, Praha 6, s o f c o s o f c o n.

MIKROKONTROLÉRY PIC PRO POKROČILÉ

Miroslav Flídr Počítačové systémy LS /21- Západočeská univerzita v Plzni

Jihočeská univerzita v Českých Budějovicích

Rozhraní mikrořadiče, SPI, IIC bus,..

A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL. Rozhraní mikrořadiče, SPI, IIC bus,.. A438NVS, kat. měření, ČVUT - FEL, Praha. J.

MCP BIOS řídicí jednotky Kit386EXR

Systém přerušení. Algoritmizace a programování. Struktura počítače - pokračování. Systémová struktura počítače pokrač.

Rozhraní mikrořadiče, SPI, IIC bus,.. Přednáška 11 (12)

Fakulta informačních technologií, VUT v Brně Ústav počítačových systémů Personální počítače, technická péče, cvičení. Sběrnice ISA

Přerušovací systém 12.přednáška

Transkript:

Počítačové systémy Jednočipové mikropočítače II Architektura jednočipových mikropočítačů PIC 16F84 a PIC 16F877 Tato prezentace vznikla jako součást řešení projektu FRVŠ 2008/566. Miroslav Flídr Počítačové systémy LS 2008-1/24- Západočeská univerzita v Plzni

Struktura a vlastnosti mikrokontroléru PIC 16F84 Charakteristika MCU PIC PIC16F84 8-bit MCU s RISC architekturou pamět programu realizována Flash pamětí (1024 slov po 14bitech) 2 paměti dat 64B RAM pro data vykonávaného programu ve dvou bankách (rozsah 0CH 4FH resp. 8CH CFH) 64B EEPROM uchovávající důležitá data (nepřímé adresování) sada registrů speciálních funkcí (adresy 00H 0BH resp. 80H 8BH) osmi úrovňový 13-ti bitový hardwarový zásobník komunikace s okolím přes PORTA (5 bitů) a PORTB (8 bitů) 8mi bitový časovač (inkrementován v každém 4 cyklu) čtyři zdroje přerušení ukončení zápisu dat do EEPROM přerušení TMR0 vyvolané přetečením čítače přerušení při změně pinů RB4, RB5, RB6 a RB7 na PORTB vnější přerušení na pinech MCU RB0/INT Miroslav Flídr Počítačové systémy LS 2008-2/24- Západočeská univerzita v Plzni

6 7 8 9 Struktura a vlastnosti mikrokontroléru PIC 16F84 Zjednodušené schéma architektury PIC16F84 Vdd 14 Vss 5 Program store Flash ROM 1K x 14 PIC16F84 Program address bus F 02h File data bus Program Counter EEPROM data memory F 08h EEPROM data 13 Program 14 PLATH data bus F 0Ah Pipeline Instruction reg 1 8-level stack 8 8 RAM Register file Data store 68 x 8 EEPROM data memory 64 x 8 Instruction reg 2 File 8 address bus F 09h EEPROM address 7 Direct address Address mux Indirect 8 address F 04h Timer File select reg. 8 Literal data MCLR 4 OSC1 16 OSC2 15 op-code 7 Instruction decoder & control Q1 Q2 Q3 Q4 Oscillator and timing generation Power-up timer Fetch Unit SLEEP F 0Bh Int control Data mux ALU Working reg. F 03h RP0 Z DC C Status register Execute Unit Prescale:OPTION F 81h Timer counter F 01h I/O port A TRISA F 85h Port A F 05h RA4/TOCKI 3 RA3 2 RA2 1 RA1 18 RA0 17 Oscillator start-up Power-on Reset Watchdog timer F 86h TRISB F 06h Port B I/O port B RB0/INT RB1 RB2 Miroslav Flídr Počítačové systémy LS 2008-3/24- Západočeská univerzita v Plzni RB3 RB4 10 RB5 11 RB6 12 RB7 13

Funkce Centrální procesorové jednotky mikropočítače Stavový registr IRP RP1 RP0 T0 PD Z DC C IRP RP1,RP0 TO PD Z DC C * nevyužit v PIC16F84 výběr banky registrů při nepřímém adresování (Register bank select) výběr banky registrů (Time-out) důvod time-outu 0... přetečení WDT 1... reset, CLRWDT, SLEEP (Power-down) indikuje důvod startu 0... instrukce SLEEP 1... reset, CLRWDT (Zero bit) indikuje nulový výsledek operace (Digit Carry) indikuje přenos z bitu 3 nebo borrow (Carry, Borrow) pří sčítání indikuje přenos z nejvyššího bitu výsledku operace při odečítání indikuje, že nebylo podtečení pod 0 použit pří bitové rotace pro přenos z bitu 7 resp. 0 Miroslav Flídr Počítačové systémy LS 2008-4/24- Západočeská univerzita v Plzni

Mapa paměti, práce s pamětí a registry speciálních funkcí Miroslav Flídr Počítačové systémy LS 2008-5/24- Západočeská univerzita v Plzni

Mapa paměti, práce s pamětí a registry speciálních funkcí Pamět programu Charakteristika programové paměti implementována FLASH pamětí (1000 cyklů) 13-ti bitový čítač instrukcí PIC16F84 fyzicky implementuje pouze adresní rozsah 0000h-03FFh vyhrazené pamět ové buňky 0000h RESET vektor 0004h Peripheral Interrupt vektor 2007h Configuration word specifikuje základní funkce mikrokontroléru (není přístupná programu) bity 13-4 Code protection bit 3 Power-up Timer Enable bit 2 Watchdog Timer(WDT) Enable bity 1,0 Oscillator Selection Miroslav Flídr Počítačové systémy LS 2008-6/24- Západočeská univerzita v Plzni

Mapa paměti, práce s pamětí a registry speciálních funkcí Datová pamět - SFR + obecné registry Indirect addressing Direct addressing File Select Register d 0 d 6 RP0 Access File 0 (IND) File 4 File address 00h d 0 d 7 01h 02h 03h 04h 05h 06h 07h 08h 09h 0Ah 0Bh 0Ch 4Fh 50h 7Fh IND TMR0 PCL STATUS FSR PORTA PORTB Unimplemented EEDATA EEADR PCLATH INTCON 68 General Purpose register files Unimplemented IND OPTION PCL STATUS FSR TRISA TRISB Unimplemented EECON1 EECON2 PCLATH INTCON Images of the 68 General Purpose register files Unimplemented File address 80h 81h 82h 83h 84h 85h 86h 87h 88h 89h 8Ah 8Bh 8Ch CFh D0h FFh INDF Obsah paměti při nepřímém adresování TMR0 čítač časovače PCL Dolních 8 bitů PC STATUS Stavový registr FSR Ukazatel pro nepřímé adresování PORTA V/V port PORTA PORTB V/V port PORTB EEDATA Data pro EEPROM EEADR Adresace EEPROM PCLATH bufer pro horních 5 bitů PC INTCON Řízení přerušení OPTION Nastavení módů činnosti TRISA Nastavení módu portu PORTA TRIEB Nastavení módu portu PORTB EECON1 Řídicí registr EEPROM paměti EECON2 Povolení zápisu do EEPROM Miroslav Flídr Počítačové systémy LS 2008-7/24- Západočeská univerzita v Plzni

Mapa paměti, práce s pamětí a registry speciálních funkcí Datová pamět - pamět EEPROM umožňuje až 10000 cyklů a uchová data více než 40let především k uchování konfigurace programu nepřímo adresovatelní pamět s kapacitou 64 B Práce s pamětí EEPROM data čtena/zapisována přes registr EEDATA adresace pomocí registru EEADR - - - EEIF WRERR WREN WR RD řídicí registr EECON1 EEIF EEPROM Write Operation Interrupt Flag (indikuje ukončení zápisu) WRERR Write Error Flag (detekce přerušení od MCLR nebo WDT) WREN Write Enable (hodnota 1 povolí zápis) WR Write (nastavení hodnoty 1 do bitu zahájí zápis) RD Read (nastavení hodnoty 1 do bitu zahájí čtení) postupným zápisem hodnot 55h a 0AAh do EECON2 se povolí zápis Miroslav Flídr Počítačové systémy LS 2008-8/24- Západočeská univerzita v Plzni

Instrukční sada mikroprocesoru a adresní módy Instrukční sada 14ti bitové instrukce pouze 35 instrukcí všechny až na řídicí instrukce trvají pouze jeden cyklus sedm dolních sedm bitů použito pro určení adresu registru zdrojem dat většiny operací je registr W výsledek operací může být zapsán do registru W nebo zpět do zdrojového registru tři typy instrukcí bytově orientované bitově orientované literálové a řídicí tři typy adresních módů s přímým operandem přímé adresování nepřímé adresování Miroslav Flídr Počítačové systémy LS 2008-9/24- Západočeská univerzita v Plzni

Instrukční sada mikroprocesoru a adresní módy Typy instrukcí Bytově orientované 13 8 7 6 0 OPCODE d adresa registru d=0 výsledek bude uložen v registru W d=1 výsledek bude uložen do zdrojového registru určeného adresou Bitově orientované 13 10 9 7 6 0 OPCODE výběr bitu adresa registru Literálové a řídicí 13 8 7 0 OPCODE literál (konstanta) běžná literálová instrukce 13 11 10 0 OPCODE literál (11ti- bitová adresa) řídicí instrukce (GOTO, CALL) Miroslav Flídr Počítačové systémy LS 2008-10/24- Západočeská univerzita v Plzni

Instrukční sada mikroprocesoru a adresní módy Adresní režimy S přímým operandem Operandem je literál, který je přímo součástí instrukce. Přímé a nepřímé adresování Přím é adresování Nepřím é adresování RP1 RP0 6 0 IRP 7 (FSR) 0 0 0 Výběr banky Výběr umístění Výběr banky Výběr umístění 00h 00 01 80h Datová paměť 0Bh 0Ch Adresy mapovány do banky 1 7Fh FFh Miroslav Flídr Počítačové systémy LS 2008-11/24- Západočeská univerzita v Plzni

Obsluha přerušení Obsluha přerušení 1/2 Zdroje přerušení přerušení TMR0 vyvolané přetečením čítače vnější přerušení na pinech RB0/INT přerušení při změně pinů RB4, RB5, RB6 a RB7 na PORTB ukončení zápisu dat do EEPROM Schéma přerušovacího systému Miroslav Flídr Počítačové systémy LS 2008-12/24- Západočeská univerzita v Plzni

Obsluha přerušení Obsluha přerušení 2/2 Registr INTCON GIE EEIE TOIE INTE RBIE (Global Interrupt Enable) (EEPROM Write Complete Interrupt Enable) (TMR0 Overflow Interrupt Enable) (INT External Interrupt Enable) (RB port change Interrupt Enable) 0... zakázáno 1... zakázáno TOIF (TMR0 Overflow Interrupt Flag) při přetečení = 1 INTF (INT External Interrupt Flag) při přerušení = 1 RBIF (RB Port Change Interrupt Flag) při změně alespoň jednoho pinu = 1 při vyvolání přerušení jsou zakázána další přerušení (GIE=0) PC je uložen do zásobníku a je nahrazen hodnotou 0004h uživatel by měl uložit registr W a stavové slovo do paměti Miroslav Flídr Počítačové systémy LS 2008-13/24- Západočeská univerzita v Plzni

Komunikace přes I/O porty PORTA Základní charakteristika 5-ti bitový port (RA0, RA1, RA2, RA3, RA4/T0CKI) funkce řízena bity v registru TRISA (nahození bitu vstupní pin) RA0, RA1, RA2, RA3 připojeny přes třístavový výstup RA4/T0CKI Schmittův klopný obvod je typu otevřený kolektor lze použít jako hodinový vstup pro časovač TMR0 Schéma zapojení pinů RA0 RA3 Schéma zapojení pinu RA4 Miroslav Flídr Počítačové systémy LS 2008-14/24- Západočeská univerzita v Plzni

Komunikace přes I/O porty PORTB Základní charakteristika 8-mi bitový obousměrný port funkce řízena bity v registru TRISB (nahození bitu vstupní pin) RB0 může být nakonfigurován jako vstup pro vnější přerušení možnost vyvolání přerušení při změně úrovně na vstupu RB4 až RB7 Schéma zapojení pinů RB0 RB3 Schéma zapojení pinů RB4 RB7 Miroslav Flídr Počítačové systémy LS 2008-15/24- Západočeská univerzita v Plzni

Funkce časovače Funkce časovače TIMER0 1/2 Charakteristika časovače TIMER0 8-mi bitový s výběrem hodin (interní/externí) použitelný jak jako časovač, tak i čítač (např. čítač pulsů z RB4/T0CKI) je možné jej číst a zapisovat do něj přes registr TMR0 obsahuje programovatelný dělič vyvolává přerušení pří přetečení (tj. při přechodu FFh 00h) lze vybrat, která hrana vnějšího hodinového signálu ovlivňuje čítání Schéma časovače TMR0 OSC/4 1 7 6 5 4 3 2 1 0 TOCKI MUX MUX TMR0 data bus Prescaler 0 GIE TOIE TOSE (Source edge select) 7 6 5 4 3 2 1 0 OPTION TOCS (Clock source select) 7 6 5 4 3 2 1 0 TOIF (TMR0 interrupt) INTCON PS2-PS0 (Prescaler) PSA (Prescaler assignment) Miroslav Flídr Počítačové systémy LS 2008-16/24- Západočeská univerzita v Plzni

Funkce časovače Funkce časovače TIMER0 2/2 Registr OPTION (bity vztahující se k časovači) T0CS T0SE PSA PS2:PS0 RBPU INTEDG T0CS T0SE PSA PS2 PS1 PS0 (TMR0 Clock Source Select bit) 0... externí pulsy 1... 1/4 pulsu interních hodin (tj. 1 µs při 4 Mhz) (TMR0 Source Edge Select bit) 0... vzestupná hrana externích pulsů 1... sestupná hrana externích pulsů (Prescaler Assignment bit) 0... přiřazení děliče k časovači 1... přiřazení děliče k watchdogu (Prescaler Rate Select bit) nastavení děliče dělič 000 1:2 001 1:4 010 1:8 011 1:16 PS2:PS0... dělič 100 1:32 101 1:64 110 1:128 111 1:256 PS2:PS2 Miroslav Flídr Počítačové systémy LS 2008-17/24- Západočeská univerzita v Plzni

Watchdog Funkce watchdogu Základní charakteristika nezávislý volně běžící časovač umožňuje zotavení při chybě softwaru časová prodleva 18 ms 2.3 s (v závislosti na nastavení děliče) časovač watchdogu není příliš přesný (je např. citlivý na teplotu) běží i po vyvolání instrukce SLEEP (přetečení pak probudí MCU) Blokové schéma watchgogu WDT Timer From TMR0 Clock Source Postscaler 8 WDT Enable Bit PSA 8 - to -1 MUX To TMR0 PS2:PS0 WDT Time-out PSA Miroslav Flídr Počítačové systémy LS 2008-18/24- Západočeská univerzita v Plzni

Struktura mikrokontroléru PIC 16F877 Charakteristika MCU PIC16F877 8-mi bitový pracující s frekvencí 20Mhz až 8k slov programové paměti datové paměti 368 bytů paměti RAM 256 bytů paměti EEPROM přímý, nepřímý a relativní adresní mód 3 časovače/čítače (2x osmibitové a 1x šestnáctibitový) univerzální synchronní asynchronní přijímač vysílač (USART / SCI) synchronní sériový port (SSP) operující v módech SPI a I 2 C paralelní slave port (PSP) 8-bitový, s externím signálem RD, WR a CS 10-bitový A/D převodník 2x záchytný, porovnávací, PWM modul až 14 zdrojů přerušení detekce Brouwn-outu Miroslav Flídr Počítačové systémy LS 2008-19/24- Západočeská univerzita v Plzni

Mapa paměti Mapy paměti Pamět programu Datová pamět - SFR + obecné registry S tack Level 2 File Address File Address File Address File Address S tack Level 2 S tack Level 2 PC<12:0> RESET Vector Interrupt Vector Page 0 Page 1 Page 2 Page 3 0000h 0004h 0005h 07FFh 0800h 0FFFh 1000h 17FFh 1800h 1FFFh Indirect addr. TMR0 PCL STATUS FSR PORTA PORTB PORTC PORTD PORTE PCLATH INTCON PIR1 PIR2 TMR1L TMR1H T1CON TMR2 T2CON SSPBUF SSPCON CCPR1L CCPR1H CCP1CON RCSTA TXREG RCREG CCPR2L CCPR2H CCP2CON ADRESH ADCON0 General Purpose 00h 01h 02h 03h 04h 05h 06h 07h 08h 09h 0Ah 0Bh 0Ch 0Dh 0Eh 0Fh 10h 11h 12h 13h 14h 15h 16h 17h 18h 19h 1Ah 1Bh 1Ch 1Dh 1Eh 1Fh 20h Indirect addr. OPTION_REG PCL STATUS FSR TRISA TRISB TRISC TRISD TRISE PCLATH INTCON PIE1 PIE2 PCON SSPCON2 PR2 SSPADD SSPSTAT TXSTA SPBRG ADRESL ADCON1 General Purpose 80h 81h 82h 83h 84h 85h 86h 87h 88h 89h 8Ah 8Bh 8Ch 8Dh 8Eh 8Fh 90h 91h 92h 93h 94h 95h 96h 97h 98h 99h 9Ah 9Bh 9Ch 9Dh 9Eh 9Fh A0h Indirect addr. TMR0 PCL STATUS FSR PORTB PCLATH INTCON EEDATA EEADR EEDATH EEADRH General Purpose 100h 101h 102h 103h 104h 105h 106h 107h 108h 109h 10Ah 10Bh 10Ch 10Dh 10Eh 10Fh 110h 111h 112h 113h 114h 115h 11Bh 11Ch 11Dh 11Eh 11Fh 120h Indirect addr. OPTION_REG PCL STATUS FSR TRISB PCLATH INTCON EECON1 EECON2 Reserved Reserved 116h General 117h General Purpose Purpose Register 118h Register 16 Bytes 119h 16 Bytes 11Ah General Purpose Register Register Register Register 80 Bytes 80 Bytes 80 Bytes 96 Bytes EFh 16Fh accesses F0h accesses 170h accesses 70h-7Fh 70h-7Fh 70h - 7Fh 7Fh FFh 17Fh Bank 0 Bank 1 Bank 2 Bank 3 180h 181h 182h 183h 184h 185h 186h 187h 188h 189h 18Ah 18Bh 18Ch 18Dh 18Eh 18Fh 190h 191h 192h 193h 194h 195h 196h 197h 198h 199h 19Ah 19Bh 19Ch 19Dh 19Eh 19Fh 1A0h 1EFh 1F0h 1FFh Miroslav Flídr Počítačové systémy LS 2008-20/24- Západočeská univerzita v Plzni

Mapa paměti Určování adres Programová pamět PCH PCL PCH PCL 12 8 7 0 PC PCLATH<4:0> 8 5 Instruction with PCL as Destination ALU PC 12 11 10 8 7 0 2 PCLATH<4:3> 11 GOTO, CALL Opcode <10:0> PCLATH PCLATH Datová pamět Direct Addressing Indirect Addressing RP1:RP0 6 From Opcode 0 IRP 7 FSR register 0 Bank Select Location Select 00 01 10 11 Bank Select Location Select 00h 80h 100h 180h Data Memory 7Fh FFh 17Fh 1FFh Bank 0 Bank 1 Bank 2 Bank 3 Miroslav Flídr Počítačové systémy LS 2008-21/24- Západočeská univerzita v Plzni

Komunikace s okolím Vstupně/výstupní porty PORTA 6-bitový port RA4 má na vstupu Schmittův obvod je možné přepnout jako vstup pro hodinový signál TMR0 ostatní vývody PORTA připojeny na multiplexer A/D převodníku PORTB 8-bitový port RB0 může být nakonfigurován jako vstup pro vnější přerušení možnost vyvolání přerušení pří změně úrovně na vstupu RB4 RB7 PORTC 8-bitový port na vývodech PORTC 3 a 4 je vyvedena sběrnice I2C PORTD 8-bitový port celý port má na vstupech Schmittův obvod může být nakonfigurován jako Parallel Slave Port (PSP) PORTE 3-bitový port celý port má na vstupech Schmittův obvod může sloužit jako řídicí signály (RD, WR, CS) pro PSP může být připojen na multiplexer A/D převodníku Miroslav Flídr Počítačové systémy LS 2008-22/24- Západočeská univerzita v Plzni

VAIN VDD VSS Komunikace s okolím Funkce a obsluha AD/DA převodníku 1/2 Základní charakteristika 10-ti bitové rozlišení 8 vstupů (5 PORTA + 3 PORTE) A/D převodník aproximativního typu data uchována v registrech ADRESH a ADRESL funkce převodníku řízena registry ADCON0 a ADCON1 Schéma zapojení A/D převodníku CHS2:CHS0 (Input Voltage) 111 110 RE2/AN7 RE1/AN6 A/D Converter 101 100 RE0/AN5 RA5/AN4 011 RA3/AN3/VREF+ VREF+ (Reference Voltage) 010 001 RA1/AN1 PCFG3:PCFG0 000 RA0/AN0 RA2/AN2/VREF- VREF- (Reference Voltage) PCFG3:PCFG0 Miroslav Flídr Počítačové systémy LS 2008-23/24- Západočeská univerzita v Plzni

Komunikace s okolím Funkce a obsluha AD/DA převodníku 2/2 Registr ADCON0 ADCS1:ADCS0 CHS2:CHS0 GO/DONE ADON ADCS1 ADCS0 GO/ CHS2 CHS1 CHS0 DONE - ADON nastavení hodin pro A/D převod výběr analogového kanálu stav převodu 0... automatický vynulováno po dokončení převodu 1... nastavením hodnoty 1 je spuštěn převod zapnutí/vypnutí A/D modulu Registr ADCON1 ADFM - - - PCFG3 PCFG2 PCFG1 PCFG0 ADFM PCFG3:PCFG0 výběr formátu uložení výsledku převodu 0... zarovnáno doprava (bity 2-7 ADRESH rovny 0) 1... zarovnáno doleva (bity 0-5 ADRESL rovny 0) nastavení A/D portu Miroslav Flídr Počítačové systémy LS 2008-24/24- Západočeská univerzita v Plzni