Sei sulla pagina 1di 35

SITIOS WEB DE INTERES

http://unexpo-microprocesadores1.webnode.es/
www.microchip.com

Prof. Antonio Pateti


Un poco de historia
1823 J. J. Belzelius descubre el Silicio
1886 C. Winklet descubre el Germanio
1947 B. J. Barden, W. B. Brattain y W. B. Shockley,
inventaron el transistor bipolar
1951 Se inventa el transistor de efecto de campo
1958 S. Kilby y R. Noyce inventan el Circuito Integrado
1971 El Microprocesador 4004 de Intel
1973 El primer microprocesador comercial de 8 bits, el 8080
por INTEL
1974 Se comercializa el microprocesador 6800 de Motorola
1978 Primera generacin de microcontroladores, MCS-48
1976 Zilog anuncia el Z80
1979 Intel introduce el MCS-51
1980 Sistemas VLSI
1985 ASICs

Prof. Antonio Pateti


Un poco de historia

1965 Se formo GI divisin de Microelectrnica

1975 GI diseo el Controlador de Interface Perifrico (PIC16C5X)

1985 GI divisin de Microelectrnica es vendida a Venture Capital


Investors, se forma Arizona Microchip Technology.

Prof. Antonio Pateti


Arquitectura general de una Microcomputadora

UNIDAD
ARITMETICA/
LOGICA BUS DE DIRECCIONES

SALIDAS
UNIDAD
PUERTOS
RELOJ DE ROM RAM
E/S
CONTROL
ENTRADAS

BUS DE DATOS

REGISTROS
BUS DE CONTROL

MICROPROCESADOR
(CPU) MICROCOMPUTADORA

UNEXPO Pto. Ordaz. Prof. Antonio Pateti MICROPROCESADORES


Arquitecturas

Bus
Direcciones
Memoria

CPU Programa
+
Bus Datos
Datos

Arquitectura von Neumann

UNEXPO Pto. Ordaz. Prof. Antonio Pateti MICROPROCESADORES


Arquitecturas

Bus Bus
Direcciones Direcciones
M. Datos M. Prog Memoria
Memoria

Datos
Bus
Datos
CPU Bus
Datos
Programa

M. Datos M. Prog

Arquitectura Harvard

UNEXPO Pto. Ordaz. Prof. Antonio Pateti MICROPROCESADORES


La Familia de los PIC

Gama Bsica:
PIC16C5X: Instrucciones de 12 Bits
33 Instrucciones

Gama Media:
PIC16CXXX: Instrucciones de 14 Bits
35 Instrucciones

UNEXPO Pto. Ordaz. Prof. Antonio Pateti MICROPROCESADORES


La Familia de los PIC

Gama Mejorada:
PIC18CXXX: Instrucciones de 16 Bits
77 Instrucciones
Arquitectura Optimizada para ser programado
en C

UNEXPO Pto. Ordaz. Prof. Antonio Pateti MICROPROCESADORES


La Familia de los PIC

dSPIC:
dsPICXXX: Instrucciones de 24 Bits
84 Instrucciones
Arquitectura Optimizada para ser programado
en C

PIC24:
PIC24F/HXXX: Microcontrolador de 16 bits.
Instrucciones de 24 Bits,84 Instrucciones
Arquitectura Optimizada para ser programado
en C

UNEXPO Pto. Ordaz. Prof. Antonio Pateti MICROPROCESADORES


La Familia de los PIC

PIC32:
PIC32F/HXXX
Arquitectura Optimizada para ser programado
en C

UNEXPO Pto. Ordaz. Prof. Antonio Pateti MICROPROCESADORES


Caractersticas relevantes de los PIC16F87X
Modelo PIC16F877 PIC16F1787
Mem. Programa
8192x14 8192x14
FLASH
Mem. EEPROM 256 256
Datos
(Bytes) RAM 368 1024
Puertos E/S 33 36
Temporizadores 1-16 bits, 2-8 1-16 bits, 2-8
bits, 1-WDT bits, 1-WDT
CCP 2 3

Comunicacin USART/ EUSART/


Serial MSSP MSSP

ADC
8 (10 bits) 14 (12 bits)

Fuentes de
14 22
Interrupcin
Encapsulado 40P,44L,44PQ, 40P,44L,44PQ,
44PT 44PT

UNEXPO Pto. Ordaz. Prof. Antonio Pateti MICROPROCESADORES


Arquitectura General del 16F87X
Direcciones
PC
13 Memoria
Dir. Indirecto
de Prog.
FSR
(FLASH)
Direcciones

MUX
Pila Dir. Directo 9 Memoria
14
8 Niveles de Datos
Registro de (SRAM)
Instrucciones
8
8 Datos
Decodif. de
Instrucciones
8 MUX Puertos E/S
TIMERS
EEPROM
CCP1,2
ADC
ALU
USART
SSP
Estado PSP
W

UNEXPO Pto. Ordaz. Prof. Antonio Pateti MICROPROCESADORES


Arquitectura del 16F1787

UNEXPO Pto. Ordaz. Prof. Antonio Pateti MICROPROCESADORES


Diagrama de Pines del 16F87X

UNEXPO Pto. Ordaz. Prof. Antonio Pateti MICROPROCESADORES


Organizacin de la Memoria

Memoria
Programa
PIC16F1787
UNEXPO Pto. Ordaz. Prof. Antonio Pateti MICROPROCESADORES
Organizacin de la Memoria

Memoria
Datos
PIC16F1787
UNEXPO Pto. Ordaz. Prof. Antonio Pateti MICROPROCESADORES
Organizacin de la Memoria

Configuracin General de cada Banco del PIC16F1787

UNEXPO Pto. Ordaz. Prof. Antonio Pateti MICROPROCESADORES


Organizacin de la Memoria

Memoria Datos PIC16F1787 (Banco 0-7)


UNEXPO Pto. Ordaz. Prof. Antonio Pateti MICROPROCESADORES
Organizacin de la Memoria

Memoria Datos PIC16F1787 (Banco 8-15)


UNEXPO Pto. Ordaz. Prof. Antonio Pateti MICROPROCESADORES
Organizacin de la Memoria

Memoria Datos PIC16F1787 (Banco 16-31)


UNEXPO Pto. Ordaz. Prof. Antonio Pateti MICROPROCESADORES
Registro STATUS

C: Acarreo / llevada

DC: Acarreo / llevada 4to bit

Z: Cero

PD#: Power Down


1: Despus de Alimentar en C o por la Instruccin CLRWDT
0: Por la Instruccin SLEEP

TO#: Time Out


1: Despus de Alimentar en C o por la Instruccin CLRWDT y SLEEP
0: Cuando se produce un desbordamiento en el Perro Guardin (Watchdog)

UNEXPO Pto. Ordaz. Prof. Antonio Pateti MICROPROCESADORES


Registros

BSR4-BSR0: Seleccin de Banco Registros (Dir. Directo)


00000: Banco 0
00001: Banco 1
00010: Banco 2
00011: Banco 3

11111: Banco 31

UNEXPO Pto. Ordaz. Prof. Antonio Pateti MICROPROCESADORES


Ciclo de Instruccin

Ciclo Instruccin
Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4 Q1 Q2 Q3 Q4

Busca Instruccin (PC)


Ejecuta Instruccin (PC-1) Busca Instruccin (PC+1)
Ejecuta Instruccin (PC) Busca Instruccin (PC+2)
Ejecuta Instruccin (PC+1)

Ciclo de Instruccin

UNEXPO Pto. Ordaz. Prof. Antonio Pateti MICROPROCESADORES


Ciclo de Instruccin

No Ejec.

Ejecucin de un programa

UNEXPO Pto. Ordaz. Prof. Antonio Pateti MICROPROCESADORES


Set de Instrucciones

Instrucciones que manejan Registros


Son 20 instrucciones
Instrucciones de Registros con Brinco
Son 2 instrucciones
Instrucciones que manipulan Bits
Son 4 instrucciones
Instrucciones de Operando Inmediato
Son 8 instrucciones

UNEXPO Pto. Ordaz. Prof. Antonio Pateti MICROPROCESADORES


Set de Instrucciones

Instrucciones de Control
Son 8 instrucciones
Instrucciones de Operaciones Inherentes
Son 6 instrucciones
Instrucciones Optimizadas para Comp. C
Son 5 instrucciones

UNEXPO Pto. Ordaz. Prof. Antonio Pateti MICROPROCESADORES


Set de Instrucciones

Formato de una instruccin

Nemnico u Operacin Operandos

MOVF f,d

Especifica la operacin a realizar Datos requeridos por la operacin

UNEXPO Pto. Ordaz. Prof. Antonio Pateti MICROPROCESADORES


Set de Instrucciones
Instrucciones que manejan Registros
Nemonico Descripcin Ciclos 14 Bits Opcode. Banderas afectadas

ADDWF f,d f + W d 1 00 0111 dfff ffff C, DC, Z


ADDWFC f,d W + f + C d 1 11 1101 dfff ffff C, DC, Z
ANDWF f,d f AND W dest 1 00 0101 dfff ffff Z
ASRF f,d Desp. Arit. Der. 1 11 0111 dfff ffff C, DC
LSLF f,d Desp. Log. Izqui. 1 11 0101 dfff ffff C, DC
LSRF f,d Desp. Log. Der. 1 11 0110 dfff ffff C, DC
CLRF f 00h f 1 00 0001 1fff ffff Z
CLRW 00h W 1 00 0001 0000 00xx Z
COMF f,d NOT f dest 1 00 1001 dfff ffff Z
DECF f,d f - 1 dest 1 00 0011 dfff ffff Z
INCF f,d f + 1 dest 1 00 1010 dfff ffff Z
IORWF f,d f OR W dest 1 00 0100 dfff ffff Z
MOVF f,d f dest 1 00 1000 dfff ffff Z
MOVWF f W f 1 00 0000 1fff ffff

UNEXPO Pto. Ordaz. Prof. Antonio Pateti MICROPROCESADORES


Set de Instrucciones
Instrucciones que manejan Registros
Nemonico Descripcin Ciclos 14 Bits Opcode. Banderas afectadas

RLF f,d Rota a la Izq. con C 1 00 1101 dfff ffff C


RRF f,d Rota a la Der. con C 1 00 1100 dfff ffff C
SUBWF f,d F - W dest 1 00 0010 dfff ffff C, DC, Z
SUBWFB f,d F W - C dest 1 11 1011 dfff ffff C, DC, Z
SWAPF f,d f<7:4>f<3:0>dest 1 00 1110 dfff ffff
XORWF f,d f XOR W dest 1 00 0110 dfff ffff Z

UNEXPO Pto. Ordaz. Prof. Antonio Pateti MICROPROCESADORES


Set de Instrucciones
Instrucciones de Registros con Brinco

Nemonico Descripcin Ciclos 14 Bits Opcode. Banderas afectadas

DECFSZ f,d f1, brinca si f=0 1(2) 00 1011 dfff ffff


INCFSZ f,d f+1, brinca si f=0 1(2) 00 1111 dfff ffff

UNEXPO Pto. Ordaz. Prof. Antonio Pateti MICROPROCESADORES


Set de Instrucciones

Instrucciones que manipulan Bits

Nemonico Descripcin Ciclos 14 Bits Opcode. Banderas afectadas

BCF f,b f<b> 0 1 01 00bb bfff ffff


BSF f,b f<b> 1 1 01 01bb bfff ffff
BTFSC f,b Si f<b>=0, Brinca 1(2) 01 10bb bfff ffff
BTFSS f,b Si f<b>=1, Brinca 1(2) 01 11bb bfff ffff

UNEXPO Pto. Ordaz. Prof. Antonio Pateti MICROPROCESADORES


Set de Instrucciones
Instrucciones de operandos inmediatos
Nemonico Descripcin Ciclos 14 Bits Opcode. Banderas afectadas

ADDLW k k + W W 1 11 1110 kkkk kkkk C, DC, Z


ANDLW k k AND W W 1 11 1001 kkkk kkkk Z
IORLW k k OR W W 1 11 1000 kkkk kkkk Z
MOVLB k k BSR 1 00 0000 001k kkkk
MOVLP k k PCLATH 1 11 0001 1kkk kkkk
MOVLW k k W 1 11 0000 kkkk kkkk
SUBLW k k - W W 1 11 1100 kkkk kkkk C, DC, Z
XORLW k k XOR W W 1 11 1010 kkkk kkkk Z

UNEXPO Pto. Ordaz. Prof. Antonio Pateti MICROPROCESADORES


Set de Instrucciones
Instrucciones de control
Nemonico Descripcin Ciclos 14 Bits Opcode. Banderas afectadas

BRA k (PC) + 1 + k PC 2 11 001k kkkk kkkk


BRW (PC) + W PC 2 00 0000 0000 1011
CALL k Llamada a Sub-Rut. 2 10 0kkk kkkk kkkk
CALLW Llamada a Sub-Rut. W 2 00 0000 0000 1010
GOTO k SALTA a la DIR k 2 10 1kkk kkkk kkkk
RETFIE Ret. Interrupcin 2 00 0000 0000 1001
RETLW k Ret. Sub-Rut. K W 2 11 0100 kkkk kkkk
RETURN Retorno de Sub-Rut. 2 00 0000 0000 1000

UNEXPO Pto. Ordaz. Prof. Antonio Pateti MICROPROCESADORES


Set de Instrucciones
Instrucciones de Operadnos Inherentes
Nemonico Descripcin Ciclos 14 Bits Opcode. Banderas afectadas

CLRWDT 00h WDT 1 00 0000 0110 0100 TO, PD


NOP No Operacin 1 00 0000 0000 0000
OPTION W Option REG 1 00 0000 0110 0010
RESET Reset por Software 1 00 0000 0000 0001
SLEEP Modo Reposo 1 00 0000 0110 0011 TO, PD
TRIS f W TRIS 1 00 0000 0110 0fff

UNEXPO Pto. Ordaz. Prof. Antonio Pateti MICROPROCESADORES


Set de Instrucciones
Instrucciones Optimizadas para Comp. C
Nemonico Descripcin Ciclos 14 Bits Opcode. Banderas afectadas

ADDFSR n,k FSR(n) + k FSR(n) 1 11 0001 0nkk kkkk


MOVIW n,mm INDF(n) W 1 00 0000 0001 0nmm Z
MOVIW k[n] FSR(n) + k W 1 11 1111 0nkk kkkk Z
MOVWI n,mm W INDF(n) 1 00 0000 0001 1nmm
MOVWI k[n] W FSR(n) + k 1 11 1111 1nkk kkkk

UNEXPO Pto. Ordaz. Prof. Antonio Pateti MICROPROCESADORES

Potrebbero piacerti anche