You are on page 1of 28

UNIVERSIDAD NACIONAL DE TRUJILLO

MECATRONICA

MICROPROCESADORES Y
SISTEMAS DIGITALES

MICROCONTROLADORES
Docente: Ing. Albertis Florián Vigo
1
PIC 16F628A
Es uno de los modelos estrella de MicroChip, siendo
además el sucesor del anterior modelo más importante (y
todavía vigente) 16F84.
Siendo un micro de la gama media tiene varias
funcionalidades incorporadas que describiremos más
adelante.
Es comercializado en 3 versiones que soportan
velocidades de reloj diferentes, 4 MHz, 10 MHz y 20 MHz.
Los PIC16F62X son chips de 18 pines, basados en
memoria FLASH, miembros de la versátil familia de chips
de alta performance, bajo costo PIC16CXX que tienen
entre sus características relevantes utilizar tecnología
CMOS, ser microcontroladores de 8 bits, soportar
interrupciones externas e internas y ser reprogramables.

Docente: Ing. Albertis Florián Vigo


2
PIC 16F628A
Estos microcontroladores tienen características especiales
que permiten la reducción de componentes externos, y por
lo tanto la reducción de costos, reforzando la confiabilidad
y reduciendo el consumo eléctrico.
Todos los microcontroladores PIC utilizan arquitectura
RISC, el 16F628 tiene mejoras en los principales rasgos,
como 8 niveles de stack, múltiples fuentes de
interrupciones externas e internas. Inclusive separar las
instrucciones de los datos (siguiendo la arquitectura
Harvard) permite instrucciones más anchas, de 14 bits, y
datos de 8 bits.
El pipeline de 2 fases permite que todas las instrucciones
se ejecuten en un solo ciclo de procesador, excepto las
instrucciones de salto.
Docente: Ing. Albertis Florián Vigo
3
ARQUITECTURA DEL PIC 16F628A
La Distribución de los pines (patas)

Docente: Ing. Albertis Florián Vigo


4
PIC 16F628A
Configuración básica del pic

Docente: Ing. Albertis Florián Vigo


5
PIC 16F628A
Configuración básica del
pic

Docente: Ing. Albertis Florián Vigo


6
Esquema de la Arquitectura del Chip

Docente: Ing. Albertis Florián Vigo


7
Características mas importantes del
pic16f628A
- Empaquetado: DIP 18 pines.
- Memoria FLASH : 2K
- Memoria RAM : 224 bytes.
- Memoria EEPROM : 128 bytes.
- Oscilador interno de 4MHz.
- Dos comparadores analógicos.
- USART

Docente: Ing. Albertis Florián Vigo


8
PIC 16F877A
Características
➢Velocidad de operación: hasta 20 MHz de reloj
➢8K x 14 bits por palabra de memoria de programa FLASH
➢368 x 8 bytes de memoria de datos (RAM)
➢256 x 8 bytes de memoria de datos EEPROM
➢14 fuentes de interrupciones
➢Memoria de pila (stack) de 8 niveles de profundidad
➢Protecciones:
▪Power-on Reset (POR)
▪Power-up Timer (PWRT)
▪Oscillator Start-up Timer (OST)
▪Watchdog Timer (WDT) independiente del cristal.

Docente: Ing. Albertis Florián Vigo


9
PIC 16F877A
Puertos de entrada y salida
PORTA ( RA5, RA4, RA3, RA2, RA1, RA0 )

PORTB ( RB7, RB6, RB5, RB4, RB3, RB2, RB1, RB0 )

PORTC ( RC7, RC6, RC5, RC4, RC3, RC2, RC1, RC0 )

PORTD ( RD7, RD6, RD5, RD4, RD3, RD2, RD1, RD0 )

PORTE ( RE2, RE1, RE0 )

Docente: Ing. Albertis Florián Vigo


10
PIC 16F877A
Características de periféricos
➢Timer 0: timer/counter de 8 bits con un pre-escalador de 8
valores.
➢Timer 1: 16-bit timer/counter con pre-escalador
➢Timer 2: 8-bit timer/counter con registro de estado de 8-bit,
pre-escalador y post-escalador
➢Dos módulos de Capture, Compare, PWM
▪Capture es de 16-bit, máx.. resolución es 12.5 ns
▪Compare es de 16-bit, máx.. resolución es 200 ns
▪PWM máx.. resolución de 10-bit

Docente: Ing. Albertis Florián Vigo


11
PIC 16F877A
Características de periféricos

➢Convertidor analógico a digital de 10-bit multi-canal


➢Puerto serial síncrono (SSP) con SPI. (modo maestro) e
I2C (maestro/esclavo)
➢Transmisor-Receptor síncrono-asíncrono universal
(USART/SCI) con 9-bit
➢Puerto paralelo esclavo (PSP) con 8-bits de ancho, con
terminales de control RD, WR y CS

Docente: Ing. Albertis Florián Vigo


12
PIC 16F877A
Arquitectura Interna

Docente: Ing. Albertis Florián Vigo


13
PIC 16F877A
Arquitectura Interna
➢Arquitectura HARVARD.

➢Buses separados (datos e instrucciones).

➢Memoria de programa : 14 bits.

➢Memoria de datos: 8 bits.

➢Recursos mapeados en memoria de datos.

Docente: Ing. Albertis Florián Vigo


14
PIC 16F877A
Arquitectura Interna

Docente: Ing. Albertis Florián Vigo


15
PIC 16F877A
PUERTOS
Puerto # funciones Funciones
PORTA 3 Entradas digital
Salidas digital
Entradas analógicas
PORTB 2 Entradas digital
Salidas digital

PORTC 3 Entradas digital


Salidas digital
Medios de comunicación
PORTD 3 Entradas digital
Salidas digital
Puerto paralelo esclavo
PORTE 4 Entradas digital
Salidas digital
Entradas analógicas
Control del puerto paralelo esclavo
Docente: Ing. Albertis Florián Vigo
16
PIC 16F877A
FUNCIONES PORTA
Terminal Funciones
RA0 Ent. Digital Sal. Digital Ent. Analógica

RA1 Ent. Digital Sal. Digital Ent. Analógica

RA2 Ent. Digital Sal. Digital Ent. Analógica VREF -

RA3 Ent. Digital Sal. Digital Ent. Analógica VREF +

RA4 Ent. Digital Sal. Digital Ent. contador 1

RA5 Ent. Digital Sal. Digital Ent. Analógica

Docente: Ing. Albertis Florián Vigo


17
PIC 16F877A
FUNCIONES PORTB
Terminal Funciones
RB0 Ent. Digital Sal. Digital Ent. Interrupción 0

RB1 Ent. Digital Sal. Digital

RB2 Ent. Digital Sal. Digital

RB3 Ent. Digital Sal. Digital PGM ( función LVP )

RB4 Ent. Digital Sal. Digital

RB5 Ent. Digital Sal. Digital

RB6 Ent. Digital Sal. Digital PGC ( función LVP )

RB7 Ent. Digital Sal. Digital PGD ( función LVP )


Docente: Ing. Albertis Florián Vigo
18
PIC 16F877A
FUNCIONES PORTC
Terminal Funciones
Ent. Digital Sal. Digital Sal. Osc timer 1 Ent. Contador 1
RC0
Ent. Digital Sal. Digital Ent. Osc Timer 1 Captura/Comp/PWM 1
RC1
Ent. Digital Sal. Digital Captura/Comp/PWM 2
RC2
Ent. Digital Sal. Digital Reloj sincrono SPI Reloj síncrono I2C
RC3
Ent. Digital Sal. Digital Datos entrada SPI Datos I2C
RC4
Ent. Digital Sal. Digital Datos salida SPI
RC5
Ent. Digital Sal. Digital Transmisión USART
RC6
Docente: Ing. Albertis Florián Vigo
19
Ent. Digital Sal. Digital Recepción USART
PIC 16F877A
FUNCIONES PORTD
Terminal Funciones

RD0 Ent. Digital Sal. Digital Bit 0 puerto paralelo esclavo

RD1 Ent. Digital Sal. Digital Bit 1 puerto paralelo esclavo

RD2 Ent. Digital Sal. Digital Bit 2 puerto paralelo esclavo

RD3 Ent. Digital Sal. Digital Bit 3 puerto paralelo esclavo

RD4 Ent. Digital Sal. Digital Bit 4 puerto paralelo esclavo

RD5 Ent. Digital Sal. Digital Bit 5 puerto paralelo esclavo

RD6 Ent. Digital Sal. Digital Bit 6 puerto paralelo esclavo

RD7 Ent. Digital Sal. Digital Bit 7 puerto paralelo esclavo


Docente: Ing. Albertis Florián Vigo
20
PIC 16F877A
FUNCIONES PORTE
Terminal Funciones

RE0 Ent. Digital Sal. Digital Ent. Analógica Lectura PSP

RE1 Ent. Digital Sal. Digital Ent. Analógica Escritura PSP

RE2 Ent. Digital Sal. Digital Ent. Analógica Habilitación PSP

Docente: Ing. Albertis Florián Vigo


21
PIC 16F877A
Tipos de datos

Tipo bytes Rango


(unsigned) char 1 0 .. 255
signed char 1 - 128 .. 127
(signed) short (int) 1 - 128 .. 127
unsigned short (int) 1 0 .. 255
(signed) int 2 -32768 .. 32767
unsigned (int) 2 0 .. 65535
(signed) long (int) 4 -2147483648 .. 2147483647
unsigned long (int) 4 0 .. 4294967295

Docente: Ing. Albertis Florián Vigo


22
PIC 16F877A
Tipos de datos

Tipo bytes Rango

float 4 ±1.17549435082 x 10-38 .. ±6.80564774407 x 1038

double 4 ±1.17549435082 x 10-38 .. ±6.80564774407 x 1038

long double 4 ±1.17549435082 x 10-38 .. ±6.80564774407 x 1038

Docente: Ing. Albertis Florián Vigo


23
PIC 16F877A
Asignación de datos
Decimal
int i = 10; /* decimal 10 */
int j = -10; /* decimal -10 */
int p = 0; /* decimal 0 */

Hexadecimal
short x = 0x37; /* decimal 55 */
short y = 0x7F; /* decimal 127 */
int z = 0x125; /* decimal 293 */

Docente: Ing. Albertis Florián Vigo


24
PIC 16F877A
Asignación de datos
Octal
int m = 023; /* 19 */
short n = 016; /* 14 */

Binario
char dato = 0b00001111;
short dat = 0b10101010;
unsigned char sig = 0b11001100;

ASCII
char dat = ‘a’;
char m = ‘5’;

Docente: Ing. Albertis Florián Vigo


25
PIC 16F877A
Registros Asociados

Entrada/salida Configuración
PORTA TRISA

PORTB TRISB

PORTC TRISC

PORTD TRISD

PORTE TRISE
Docente: Ing. Albertis Florián Vigo
26
PIC 16F877A
Entrada o salida

SALIDA DE DATOS : 0

ENTRADA DE DATOS: 1

La asignación es individual correspondiente a cada


terminal del puerto.

Docente: Ing. Albertis Florián Vigo


27
GRACIAS

28

You might also like