Vous êtes sur la page 1sur 2

PIC16F88

Ir a la navegaci�nIr a la b�squeda
El PIC16F88 es un microcontrolador de la familia PIC, fabricada por la empresa
Microchip.

�ndice
1 Estructura
2 Usos
3 Programa de ejemplo
4 Enlaces externos
Estructura
Se trata de uno de los microcontroladores que puede reemplazar al m�s popular del
mercado PIC16F84, ideal para principiantes, debido a su arquitectura de 8 bits, 18
pines, y un set de instrucciones RISC muy amigable para memorizar y f�cil de
entender, internamente consta de:

Memoria Flash de programa (4K x 14).


Memoria EEPROM de datos (256 x 8).
Memoria RAM (368 registros x 8).
Oscilador interno de 8MHz.
Modulaci�n por ancho de pulso (PWM) de 10Bits,
Comunicaci�n as�ncrona mediante su modulo AUSART
Cominicaci�n s�ncrona SPI 3 Hilos o I2C en 2 hilos, con el modulo SSP
Conversor de Anal�gico a Digital de 7 canales
Un temporizador/contador (timer de 8 bits).
Un divisor de frecuencia.
Varios puertos de entrada-salida (16 pines en dos puertos, 8 pines el puerto A y 8
pines el puerto B).
Otras caracter�sticas son:

Manejo de interrupciones (de 4 fuentes).


Perro guardi�n (watchdog).
Bajo consumo.
Frecuencia de reloj externa m�xima 20MHz. La frecuencia de reloj interna es un
cuarto de la externa, lo que significa que con un reloj de 20Mhz, el reloj interno
ser�a de 5Mhz y as� pues se ejecutan 5 Millones de Instrucciones por Segundo (5
MIPS)
Pipe-line de 2 etapas, 1 para b�squeda de instrucci�n y otra para la ejecuci�n de
la instrucci�n (los saltos ocupan un ciclo m�s).
Repertorio de instrucciones reducido (RISC), con tan solo 35 instrucciones
distintas.
4 tipos distintos de instrucciones, orientadas a byte, orientadas a bit, operaci�n
entre registros, de salto.
Usos
En los �ltimos a�os se ha popularizado el uso de este microcontrolador debido a su
bajo costo y tama�o. Se ha usado en numerosas aplicaciones, que van desde los
autom�viles a decodificadores de televisi�n. Es muy popular su uso por los
aficionados a la rob�tica y electr�nica.

Puede ser programado tanto en lenguaje ensamblador como en Basic y principalmente


en C, para el que existen numerosos compiladores.

Programa de ejemplo
A continuaci�n hay un peque�o programa en ensamblador (MPASM) que pone a 0 las
posiciones de memoria 20 y 21 (en hexadecimal) usando un direccionamiento
indirecto:

MOVLW 20h
MOVWF FSR
CLRF INDF
INCF FSR
CLRF INDF
MOVLW k: (Move Literal to W) Es una instrucci�n que carga en el registro de trabajo
W, un literal (constante) k, que en este caso es 20h.

MOVWF f: (Move W to File), Copia el contenido del registro W a la posici�n de


memoria f. En este caso, FSR representa una direcci�n de memoria. FSR es el
registro usado para direccionamiento indirecto. En FSR se carga la direcci�n de
memoria que se va a direccionar con INDF (otro registro).

CLRF f: (Clear File), Pone en 0 el registro en la posici�n de memoria f.

INCF f: (Increment File), Incrementa en uno el valor almacenado en la posici�n de


memoria f.

Vous aimerez peut-être aussi