microprocesadores, tema 2:
TRANSCRIPT
![Page 1: Microprocesadores, Tema 2:](https://reader031.vdocuments.co/reader031/viewer/2022020119/589da5481a28abd1498bd84b/html5/thumbnails/1.jpg)
Microprocesadores, Tema 2:
Introducción al Microcontrolador PIC18
Guillermo Carpintero, [email protected]
Universidad Carlos III de Madrid
![Page 2: Microprocesadores, Tema 2:](https://reader031.vdocuments.co/reader031/viewer/2022020119/589da5481a28abd1498bd84b/html5/thumbnails/2.jpg)
Diagrama de bloques
“PIC microcontrollers: An introduction to Microelectronics”
M. Bates
Elsevier/Newnes 2004
![Page 3: Microprocesadores, Tema 2:](https://reader031.vdocuments.co/reader031/viewer/2022020119/589da5481a28abd1498bd84b/html5/thumbnails/3.jpg)
Ruta de datos del PIC 18F
Entradas/Salidas
Memoria
CPU
Figura del “PIC18F2525/2620/4525/4620 Data Sheet”
Con permiso de MICROCHIP
![Page 4: Microprocesadores, Tema 2:](https://reader031.vdocuments.co/reader031/viewer/2022020119/589da5481a28abd1498bd84b/html5/thumbnails/4.jpg)
Arquitectura Harvard:
1. Memoria de PROGRAMA ���� Almacena INTRUCCIONES y DATOS
EEPROM/Flash
2. Memoria de DATOS ���� Almacena DATOSCompuesta por dos áreas principales
2.1 Área RAM formada por:Registros de propósito específico (SFR) – Regs. de Control Registros de propósito general – Almacenamiento temp.
2.2 Área EEPROM formada por 64 bytes – Almacenamiento datos usr. no volátiles
Memoria: Características generales
![Page 5: Microprocesadores, Tema 2:](https://reader031.vdocuments.co/reader031/viewer/2022020119/589da5481a28abd1498bd84b/html5/thumbnails/5.jpg)
Memoriaprograma
Figura del “PIC18F2525/2620/4525/4620 Data Sheet”
Con permiso de MICROCHIP
Memoria de programa: Organización
![Page 6: Microprocesadores, Tema 2:](https://reader031.vdocuments.co/reader031/viewer/2022020119/589da5481a28abd1498bd84b/html5/thumbnails/6.jpg)
16-bit wide
8-bit wide
Memoria de programa: Organización
8-bit wide
Unidades datos memoria de programa
Instruction 16 bits
Data 8 bits
Direcciones memoria de programa
Cada byte � Propia dirección
0000 00010002 0003
Direcciones dedicadas en memoria de programa
0000h = Vector RESET0008h = Vector interrupción HP0018h = Vector Interrupción LP
Mapa de memoria
![Page 7: Microprocesadores, Tema 2:](https://reader031.vdocuments.co/reader031/viewer/2022020119/589da5481a28abd1498bd84b/html5/thumbnails/7.jpg)
Figura del “PIC18F2525/2620/4525/4620 Data Sheet”
Con permiso de MICROCHIP
Memoria de programa: Organización
Direcciónde 21 bits
![Page 8: Microprocesadores, Tema 2:](https://reader031.vdocuments.co/reader031/viewer/2022020119/589da5481a28abd1498bd84b/html5/thumbnails/8.jpg)
1
2
3
Memoria de programa: Acceso a Instrucciones
Direccionamiento de Instrucciones : Contador de Programa
![Page 9: Microprocesadores, Tema 2:](https://reader031.vdocuments.co/reader031/viewer/2022020119/589da5481a28abd1498bd84b/html5/thumbnails/9.jpg)
Memoria de programa: Acceso a datos
Direccionamiento de datos (memoria programa) : Tablas datos en memoria de programa (PUNTEROS)
TBLRD*
TABLAT = (TBLPTR)
TBLRD*+
TABLAT = (TBLPTR)
TBLPTR = (TBLPTR)+1
TBLRD*-
TABLAT = (TBLPTR)
TBLPTR = (TBLPTR)-1
TBLRD+*
TBLPTR = (TBLPTR)+1
TABLAT = (TBLPTR)
Figura del “PIC18F2525/2620/4525/4620 Data Sheet”
Con permiso de MICROCHIP
TABLAT = (TBLPTR)
Instrucciones relacionadas
![Page 10: Microprocesadores, Tema 2:](https://reader031.vdocuments.co/reader031/viewer/2022020119/589da5481a28abd1498bd84b/html5/thumbnails/10.jpg)
MemoriaDatos
Figura del “PIC18F2525/2620/4525/4620 Data Sheet”
Con permiso de MICROCHIP
Memoria de datos: Organización
![Page 11: Microprocesadores, Tema 2:](https://reader031.vdocuments.co/reader031/viewer/2022020119/589da5481a28abd1498bd84b/html5/thumbnails/11.jpg)
Tamaño12 (4+8) bits direcciones: 4096 pos.
Organizada en BancosEstá divida en 16 bancos de 256 bytes cada uno (8 bits).
Los 4 bits LSB del Bank SelectRegister (BSR<3:0>) seleccionan el banco activo.
La zona SFR ocupa las últimas 64 posiciones, descendiendo desde la última dirección del banco 15 (0xFFF).
Scratch Pad(8 bits de dir)
Control:ProcesadorPreriféricos
Memoria de datos: Organización
![Page 12: Microprocesadores, Tema 2:](https://reader031.vdocuments.co/reader031/viewer/2022020119/589da5481a28abd1498bd84b/html5/thumbnails/12.jpg)
Figura del “PIC18F2525/2620/4525/4620 Data Sheet”
Con permiso de MICROCHIP
DATOS
BSR
Memoria de datos: Organización
![Page 13: Microprocesadores, Tema 2:](https://reader031.vdocuments.co/reader031/viewer/2022020119/589da5481a28abd1498bd84b/html5/thumbnails/13.jpg)
Ejemplo de movimiento de datos
Escribir un valor en una dirección de memoria RAM:
MOVLW valor
MOVWF F
![Page 14: Microprocesadores, Tema 2:](https://reader031.vdocuments.co/reader031/viewer/2022020119/589da5481a28abd1498bd84b/html5/thumbnails/14.jpg)
Ciclo de Instrucción
fOSC = 8 MHz → TOSC = 125 ns → Tcyc = 500 ns
fOSC_MAX =20 MHz → TOSC = 50 ns → Tcyc = 200 ns
Pipeline: Procesado Paralelo
![Page 15: Microprocesadores, Tema 2:](https://reader031.vdocuments.co/reader031/viewer/2022020119/589da5481a28abd1498bd84b/html5/thumbnails/15.jpg)
dirección efectiva (de)
POSTDEC de = (FSRx)FSRx = (FSRx)-1
POSTINC de = (FSRx)FSRx = (FSRx)+1
PREINC
PLUSW de = (FSRx) + (W)
Memoria de DATOS: Acceso a Datos
Acceso Directo Acceso Indirecto
FSR0FSR1FSR2
![Page 16: Microprocesadores, Tema 2:](https://reader031.vdocuments.co/reader031/viewer/2022020119/589da5481a28abd1498bd84b/html5/thumbnails/16.jpg)
Memoria de DATOS: Zona SFR
Stack
PC
AccesoIndirectoFSR0 Puertos
![Page 17: Microprocesadores, Tema 2:](https://reader031.vdocuments.co/reader031/viewer/2022020119/589da5481a28abd1498bd84b/html5/thumbnails/17.jpg)
Arquitectura del Procesador: Unidad Computacional
![Page 18: Microprocesadores, Tema 2:](https://reader031.vdocuments.co/reader031/viewer/2022020119/589da5481a28abd1498bd84b/html5/thumbnails/18.jpg)
Figura del “PIC18F2525/2620/4525/4620 Data Sheet”
Con permiso de MICROCHIP
Memoria de datos: Zona SFR (Puertos E/S)
![Page 19: Microprocesadores, Tema 2:](https://reader031.vdocuments.co/reader031/viewer/2022020119/589da5481a28abd1498bd84b/html5/thumbnails/19.jpg)
Arquitectura Ortogonal : Cualquier instrucción puede utilizar cualquier registro de la arquitectura como fuente o destino.
Arquitectura con E/S mapeada en memoria: Todos los elementos del sistema están implementados físicamente como registros.
Arquitectura del Procesador: Unidad Computacional
![Page 20: Microprocesadores, Tema 2:](https://reader031.vdocuments.co/reader031/viewer/2022020119/589da5481a28abd1498bd84b/html5/thumbnails/20.jpg)
Memoria de PROGRAMAS: Acceso a datos
Direccionamiento de Datos : Tablas en Memoria de Programa
TBLRD*TBLRD*+TBLRD*-TBLRD+*
![Page 21: Microprocesadores, Tema 2:](https://reader031.vdocuments.co/reader031/viewer/2022020119/589da5481a28abd1498bd84b/html5/thumbnails/21.jpg)
Memoria de PROGRAMAS
La pila (Stack)
Cuando hablemos de las subrutinas en el Software
![Page 22: Microprocesadores, Tema 2:](https://reader031.vdocuments.co/reader031/viewer/2022020119/589da5481a28abd1498bd84b/html5/thumbnails/22.jpg)
Puertos del Microcontrolador
![Page 23: Microprocesadores, Tema 2:](https://reader031.vdocuments.co/reader031/viewer/2022020119/589da5481a28abd1498bd84b/html5/thumbnails/23.jpg)
Puertos del Microcontrolador
![Page 24: Microprocesadores, Tema 2:](https://reader031.vdocuments.co/reader031/viewer/2022020119/589da5481a28abd1498bd84b/html5/thumbnails/24.jpg)
Hardware de Aplicación
Diseño Eléctrico: Esquemático
![Page 25: Microprocesadores, Tema 2:](https://reader031.vdocuments.co/reader031/viewer/2022020119/589da5481a28abd1498bd84b/html5/thumbnails/25.jpg)
Diseño Eléctrico: Esquemático de Prácticas
![Page 26: Microprocesadores, Tema 2:](https://reader031.vdocuments.co/reader031/viewer/2022020119/589da5481a28abd1498bd84b/html5/thumbnails/26.jpg)
Programación del ChipProgramación del Chip
La cadena de desarrollo
BoardProgramador
SWProg
C18
MPASM
Debug
C18
MPASM
PCB