Pic 16f628A Caracteristicas

Instituto Tecnológico de Pachuca CARRERA: ING. EN SISTEMAS COMPUTACIONALES MATERIA: SISTEMAS PROGRAMABLES DOCENTE: DR. A

Views 87 Downloads 0 File size 2MB

Report DMCA / Copyright

DOWNLOAD FILE

Recommend stories

Citation preview

Instituto Tecnológico de Pachuca CARRERA: ING. EN SISTEMAS COMPUTACIONALES MATERIA: SISTEMAS PROGRAMABLES DOCENTE: DR. ARTURO GONZÁLEZ CERÓN

PROTOCOLOS DE COMUNICACIÓN USADOS EN SISTEMAS DE CONTROL ALUMNO: SEBASTIAN GUADALUPE MORENO CAMPOS N.C.: 13320937

11 de julio del 2017

PIC 16F628A El Pic que yo elegiré será el 16F628A, es un microcontrolador de 8bits, elijo este microcontrolador porque, es de muy bajo costo, cuesta aproximadamente 40 pesos y tiene muy buena capacidad de memoria, además de contar con un oscilador interno, que en proyectos chicos nos reduce la circuitería. En la siguiente figura vemos la distribución de sus pines.

PIC 16F628A Este microcontrolador cuenta con 18 pines los cuales los pines 5 y 14 son tierra y VDD respectivamente, Este pic se alimenta con 5V, por lo que es recomendable alimentarlo con un 7805 cuando se implementa un circuito físicamente.

CARACTERÍSTICAS DEL PIC 16F628A 

Velocidad de operación hasta 20 MHZ con oscilador externo.



Programación serial en Circuito ICSP por 2 pines: RB6 reloj y RB7 datos.

   

Admite 8 configuraciones de oscilador.

 

Código de protección programable por sectores.



Memoria de datos EEPROM de 1.000.000 ciclos escritura/borrado de 100 años retención.



Instrucciones de un ciclo excepto los saltos (200nS por instrucción a 20 MHZ).



2 circuitos comparadores análogos con entradas multiplexadas.

 

Resistencias PULL-UP programables en el puerto B.



3 Timers, Timer 0 a 8 bits, Timer 1 a 16 bits y Timer 2 a 8 bits.

   

8 niveles de PILA.

Procesador con arquitectura HARVARD. Conjunto reducido de instrucciones RISC (35) gama media.

Memoria de programa FLASH 2048K. de 100.000 ciclos escritura/borrado.

Pin RA5 MCLR programable como reset externo o pin de  Módulos CCP, Captura compara 16 bits, y PWM, entrada. modulación de ancho de pulso 10 bits. Rango de operación desde 3V hasta 5.5V.  10 fuentes de interrupción. 15 pines de I/O y 1 sólo de entrada (RA5).  Módulo de comunicación serial USART/SCI. Temporizador Perro guardián WDT independiente del  Capacidad de corriente para encender leds oscilador. directamente (25 mA I/O) por cada pin. Programable con bajo voltaje LPV (5V.).

DIAGRAMA DE PINES PINES

NOMBRE

18 18 1

RA0/AN0 RA1/AN1 RA2/AN2/VREF

2

RA3/AN3/CMP1

3

RA4/T0CKI/CMP2

4 15

RA5/MCLR/VPP RA6/OSC2/CLKOUT

16

RA7/OSC1/CLKIN

DESCRIPCION Pin bidireccional I/O, entrada análoga del comparador Pin bidireccional I/O, entrada análoga del comparador Pin bidireccional I/O, entrada análoga del comparador y voltaje de referencia Pin bidireccional I/O, entrada análoga del comparador y salida del comparador 1 Pin bidireccional I/O, entrada del reloj timer 0 y salida del comparador 2 Pin de entrada, MCLR activado, habilita el reset externo Pin bidireccional I/O, entrada de oscilador externo y salida de ¼ de frecuencia de osc1 Pin bidireccional I/O, entrada de oscilador externo y entrada de reloj externo

DIAGRAMA DE PINES 6

RB0/INT

7

RB1/RX/DT

8

RB2/TX/CK

9

RB3/CPP1

10

RB4/PGM

11 12

RB5 RB6/T1OSO/T1CKI/PGC

13

RB7/T1OSI/PGD

5 18

GROUND VDD

Pin bidireccional I/O, resistenia Pull-Up programable, entrada de interrupcion externa Pin bidireccional I/O, resistenia Pull-Up programable,entrada de dato RS232, I/O dato serial asincrono Pin bidireccional I/O, resistencia Pull-Up programable, salida de dato RS232, I/O señal de reloj asíncrono Pin bidirecional I/O, resistência Pull-Up programable, modulo CPP /PWM entrada o salda Pin bidireccional I/O, resistencia Pull-Up programable, PIN programado de baja tensión de entrada Pin bidireccional I/O, resistencia Pull-Up programable Pin bidireccional I/O, resistencia Pull-Up programable, salida del oscilador timer 1, entrada del reloj Timer1, Reloj programado de ICSP Pin bidireccional I/O, resistencia Pull-Up programable, entrada del reloj Timer1, I/o datos de ICSP Voltaje negativo/tierra Voltaje positivo

MEMORIA MEMORIA DE PROGRAMA Conocido también como memoria de instrucciones en esta memoria se almacenan toda las instrucciones de nuestro programa que luego se va ejecutar por el microcontrolador PIC, este tiene una memoria de programa tipo FLASH, que es un memoria no volátil(no se borran las instrucciones al desconectarle la alimentación ) es de bajo consumo y en esta memoria se puede borrar y escribir, lo que caracteriza al PIC de reprogramable.

MEMORIA DE DATOS Es una memoria de tipo volátil, quiere decir que a la hora de desconectarle la alimentación al PIC estos datos se borran, este tipo de memoria almacena datos de forma permanente, porque estos datos varían continuamente. Se encargan de llevar el contador del programa, el conteo del temporizador, el estado de los puertos, la configuración de las interrupciones, etc.

MCLR DEL PIC El MCLR del PIC permite realizar un reset externo en el pic y puede estar configurado de la siguiente manera, para esto el MCLR de estar activado, esto se hace mediante la configuración de los fuses en CSS. Supongamos que el programa del PIC se esta ejecutando y si en ese momento presionamos el boton el PIC se resetea y comienza nuevamente el programa desde 0.

INSTRUCCIONES Las 35 instrucciones ó mnemónicos de la gama media de Microchip las encontraremos resumidas en la siguiente tabla. w es el acumulador, f representa un registro cualquiera y C, DC, Z los flags del registro STATUS.

Las instrucciones de registros, se orientan solo a añadir bits al un registro, cambiarlo, sumar, restar hacer operaciones lógicas, entre otras.

Las instrucciones literales y de control, sirven para comprobar banderas o mover registros literalmente a otra posición, además de que con estas se pueden usar los saltos y los modos espera.

Las instrucciones orientadas a bits, son las que simplemente añaden un valor a algún registro o puerto, o también existen operandos para comparar los bits que hay en un registro y hacer un salto si una condición se cumple o no.

EJEMPLO CÓDIGO En la materia de lenguaje de interfaz, hice un contador del 0 al 9 con este pic y poniéndole un punto a los números primos, usando simplemente la instrucción bsf (bit set) en el puerto B usando tablas y regresando a la etiqueta Inicio cuando la tabla terminara de mostrarse y entre cada columna de la tabla se aplicaba un delay para que se pudiera notar el cambio de numero.

APLICACIONES • Así como yo en una materia realice un contador de 0 a 9 indicando los números primos, existen múltiples usos mas que se le pueden dar a estos microcontroladores.

• Desde proyectos sencillos como un reloj digital. • Hasta proyectos mas complejos como un sistema de riego

CONCLUSIÓN •

Sin duda los pics pueden tener múltiples usos y aplicaciones, además por su bajo costo los proyectos no requieren de mucha inversión, actualmente con el gran auge de la robótica, los drones y la inteligencia artificial, yo creo que para alguien con ganas de trabajar y con tiempo de sobra, fácilmente podría idearse un proyecto bien hecho realizado en un pic, además de que hoy en día los pics se pueden programar en distintos lenguajes gracias a la amplia gama de programas compiladores que existen para ellos, desde c, hasta java cuando anteriormente estos solo se podían programar en lenguaje ensamblador, el ensamblador es sencillo de aprender pero se debe contar con mucha lógica ya que las instrucciones son muy reducidas (solo 35 en el pic 16f628A) y no existen por ejemplo delays que se puedan crear fácilmente como en C o java, se debe tener lógica para crear delays a base de las revoluciones del oscilador, pero con las herramientas correctas se pueden crear proyectos interesantes, desde simples sensores hasta videojuegos, aunque los pics se limiten mucho en memoria, a causa de esto actualmente están siendo cambiados por los arduinos o raspherry, ya que cuentan mayor memoria y mayor poder de procesamiento, aunque usar pics puede ser tedioso pero divertido y te ayuda como ingenieros a ingeniárnosla para crear programas agiles y que funcionen, aunque sea muy cansado.



Sebastian Guadalupe Moreno Campos

REFERENCIAS • Datasheet Pic 16f628A http://www.microchip.com/wwwproducts/en/PIC16F628A