Professional Documents
Culture Documents
MICROCONTROLADORES PIC
Qu es un microcontrolador?
Es un circuito integrado programable que acepta un listado de instrucciones y contiene todos los componentes de un computador. Se utilizan para realizar determinadas tareas o para gobernar dispositivos, debido a su reducido tamao, suele ir incorporado en el propio dispositivo que gobierna. El microcontrolador es un dispositivo dedicado. En su memoria solo reside un programa destinado a gobernar una aplicacin determinada, sus lneas de entradas y salidas (I/O) permiten la conexin de sensores y relay. Una vez programado y configurado el microcontrolador solamente sirve para gobernar la tarea asignada.
Un microcontrolador dispone normalmente de los siguientes componentes: Procesador o UCP (Unidad Central de Proceso). Memoria RAM para Contener los datos. Memoria para el programa tipo ROM/PROM/EPROM/EEPROM & FLASH. Lneas de (entrada / salida) para comunicarse con el exterior. Diversos mdulos para el control de perifricos (temporizadores, Puertos Serie y Paralelo, A/D y D/A, etc.). Generador de impulsos de reloj que sincronizan el funcionamiento de todo el sistema.
Evidentemente, el corazn del microcontrolador es un microprocesador, pero cabe recordar que el microcontrolador es para una aplicacin concreta y no es universal como el microprocesador. El microcontrolador es en definitiva un circuito integrado que incluye todos los componentes de un computador. Debido a su reducido tamao es posible montar el controlador en el propio dispositivo al que gobierna. En este caso el controlador recibe el nombre de controlador empotrado (embedded controller).
Bach. Fernando Montenegro Daz
PIC 16F84A
Conociendo al PIC16F84A
Versiones para bajo consumo (16LF84A), de 4 MHz (PIC16F84A-04) y 20 MHz (PIC16F84A-20). Un ciclo mquina del PIC son 4 ciclos de reloj, por lo cual si tenemos un PIC con un cristal de 4 MHz, se ejecutarn 1 milln de instrucciones por segundo. Memoria de programa Flash de 1 K x 14 bits. Memoria RAM dividida en 2 reas: 22 registros de propsito especfico (SFR) y 68 de propsito general (GPR) como memoria de datos. Memoria de datos RAM de 68 bytes (68 registros de propsito general). Memoria de datos EEPROM de 64 bytes. 1.000.000 de ciclos de borrado/escritura de la memoria EEPROM. 40 aos de retencin de la memoria EEPROM. 13 pins de E/S con control individual de direccin. PortA de 5 bits <RA0:RA4>. PortB de 8 bits <RB0:RB7>. Power-on Reset (POR). Power-up Timer (PWRT). Oscillator Start-up Timer (OST). Watchdog Timer (WDT). Proteccin de cdigo. Modo de bajo consumo SLEEP. Tecnologa de baja potencia y alta velocidad CMOS Flash/EEPROM. Rango de alimentacin: de 4 a 5,5 v en configuracin de oscilador XT, RC y LP.
Bach. Fernando Montenegro Daz
RA0, RA1, RA2, RA3 y RA4: son los pines del puerto A RB0, RB1, RB2, RB3, RB4, RB5, RB6 y RB7: son los pines del puerto B. MCLR: Pin de reseteo del pic, cuando se pone a "0" el pic se resetea. Vdd y Vss: pines de alimentacin (Vdd 5V y Vss a masa) . OSC1/CLKIN y OSC2/CLKOUT: son para el oscilador .
Bach. Fernando Montenegro Daz
En este modelo la unidad central de proceso o CPU est conectada a una memoria nica que contiene las instrucciones del programa y los datos. A esta memoria se accede a travs de un sistema de buses nico La velocidad de operacin est limitada por el efecto de cuello de botella que significa un nico bus para datos e instrucciones, que impide superponer ambos tiempos de acceso. La longitud de las instrucciones est limitada por la unidad de longitud de los datos.
Arquitectura Harvard
Los Microcontroladores PICs utilizan una arquitectura Harvard que dispone de 2 memorias independientes a las que se conecta mediante 2 grupos de buses separados: Memoria de datos y Memoria de Programa Ambos buses son totalmente independientes y pueden ser de distintos anchos. La CPU puede acceder de forma independiente y simultnea a la memoria de datos y a la de instrucciones, logrando una mayor velocidad de operacin.
Procesador segmentado (Pipeline) Un procesador segmentado o pipeline (Que utiliza el PIC) realiza simultneamente la ejecucin de una instruccin y la bsqueda de cdigo de la siguiente. Cada instruccin se ejecuta en el denominado ciclo de mquina que est constituido por 4 ciclos de reloj
Programa 1 Ciclo Bsqueda 1
1 bsf STATUS, 5 2 clrf TRISB 3 movlw oxFF 4 movwf TRISA
3 Ciclo
4 Ciclo
5 Ciclo
Tipos de Procesadores
CISC. (Complex Instruction Set Computer) Son procesadores con un juego de instrucciones complejo. Se requieren de muchos ciclos de reloj para ejecutar las instrucciones complejas. SISC. (Specific Instruction Set Computer). Poseen un juego de instrucciones especfico para cada aplicacin. Se destinan a aplicaciones muy concretas. RISC. (Reduced Instruction Set Computer). Tienen un repertorio de instrucciones reducido. Las instrucciones son muy simples y suelen ejecutarse en un ciclo mquina. El PIC16F84A es un Microcontrolador RISC con slo 35 instrucciones.
CONFIGURAR PUERTOS A Y B
NOTAS
Un PIC nuevo viene vaco, no hace nada. Para decirle al microcontrolador lo que queremos que haga, necesitamos escribir un programa en el computador y grabrselo en la memoria. Se puede grabar y volver a grabar muchas veces distintos programas en el mismo PIC16F84A.
Bach. Fernando Montenegro Daz
EXPLORADOR DE CODIGO
AREA DE EDICION
NUEVO ARCHIVO ABRIR ARCHIVO GUARDAR ARCHIVO GUARDAR ARCHIVO COMO GUARDAR TODO LOS ARCHIVOS CERRAR VENTANA ACTIVA CERRAR TODAS LAS VENTANAS ABRE ARCHIVOS RECIENTES CONFIGURACION DE IMPRESION VISTA PREVIA DE IMPRESION IMPRIMIR SALIR
DESHACER CAMBIOS VOLVER AL ULTIMO CAMBIO CORTAR COPIAR PEGAR SUPRIMIR SELECCIONAR TODO BUSCAR REEMPLAZAR BUSCAR SIGUIENTE
EXPLORADOR DE CODIGO COMUNICACIN SERIAL VENTANA DE CARGA DE PROGRAMA AL PIC OPCIONES DE CARGAR OPCIONES DE PROGRAMACION Y COMPILAION OPCIONES DEL EDITOR BARRAS DE HERRAMIENTAS ACTUALIZAR EN LINEA
NUEVO ABRIR
GUARDAR
CORTAR
COPIAR
PEGAR
DESHACER
REHACER
IMPRIMIR
COMPILAR
COMPILAR Y PROGRAMAR
PIC A USAR
BUSCAR
REEMPLAZAR
PONER TAB
QUITAR TAB
PONER COMENTARIO
QUITAR COMENTARIO
ESQUEMATICO GENERAL
Introduccin a ISIS
El mdulo ISIS es un programa que nos permite dibujar, sobre un rea de trabajo, un circuito que posteriormente podremos simular. En la manipulacin del software casi siempre existirn varias opciones para un mismo fin. Normalmente podremos optar por seguir un men, acceder a un icono o trabajar con el teclado. Aqu concederemos preferencia a la opcin ms rpida y ms cmoda, que suele ser casi siempre el olvidado teclado.
Bach. Fernando Montenegro Daz
rea de trabajo
Ventana de vista completa
Barra de herramientas
Barra de mens
Barra de ttulo
Ventana de componentes Barra de herramientas, colocada en vertical Barra de herramientas Barra de herramientas
Zona de trabajo
Barra de estado
Mens
Opcin de teclado
Permite el acceso a la mayor parte de opciones del programa; sin embargo algunas slo estn disponibles en los iconos de las barras de herramientas.
Bach. Fernando Montenegro Daz
Herramientas
Barra de ficheros Barra de visionado Barra de componentes y dibujo Opciones varias Barra para giros y reflejos
rea de trabajo
Centro geomtrico. No se imprime
Resolucin de pantalla
Antes de iniciar el esquema convendr fijar la resolucin de la pantalla en 1024 x 768 pixeles. Resoluciones menores harn que algunas ventanas no quepan en pantalla, y es molesto trabajar as.
Botn de componentes
Al abrir PROTEUS, lo primero que necesitamos es extraer los componentes que se van a utilizar en el circuito, para lo que debemos utilizar la barra de herramientas de componentes.
En esta barra Pincharemos aqu Y quedar realzado as
Libreras de dispositivos
Para acceder a las libreras de dispositivos hay que pulsar P. (Tambin pinchando en el botn P de la ventana de dispositivos.)
Pinchando aqu se abren las libreras de componentes
Ventana de libreras
Palabra para bsqueda automtica Vista previa
Zona de resultados
Subcategora
Fabricantes
Categoras
La puerta and que necesitamos la podemos encontrar en 4 categoras:
Modelos reales ECL Familias reales CMOS de la serie 4000 Familias reales TTL y CMOS de alta velocidad Modelos para simulacin
Subcategoras
Para seleccionar la categora Simulator Primitives, presionamos sobre ella.
Pinchad aqu para resaltar en azul
Resultados
Tras las acciones anteriores vemos que se nos ofrecen 6 resultados. Selecciona en la funcin AND y quedar resaltada.
seleccionar aqu para destacar la funcin elegida
Informacin de Resultados
En la ventana de resultados tenemos el nombre del dispositivo, la librera en la que se encuentra y su descripcin.
Nombre del dispositivo Librera del dispositivo Descripcin del dispositivo
Vista Previa
En la ventana de vista previa observaremos la funcin elegida. Aqu vemos que al smbolo lgico lo acompaa la leyenda Digital Primitive [AND-2]. Esto significa que el modelo podr simularse sin problemas.
Puede simularse
Modelo NO SIMULABLE
El modelo de la figura slo sirve para esquema, pero no es simulable. MUCHA ATENCIN A ESTO.
NO Puede simularse
Ventana de patillaje
En la esquina inferior derecha de la ventana de libreras observamos la ventana que nos ofrece el patillaje del componente seleccionado, para el diseo del circuito impreso (PCB). En este caso, como hemos elegido un elemento de simulacin no real, nos dice que no tiene patillaje
Extraccin de componente
Si en la ventana de resultados seleccionamos dos veces sobre la funcin AND, sta saldr a la ventana de dispositivos.
seleccionamos dos veces
Ventana de dispositivos
El componente extrado se ve as en la ventana de dispositivos.
Ventana de dispositivos
Vista Completa
Una vez hemos extrado el componente, si pinchamos sobre l en la ventana de dispositivos aparecer su smbolo en la ventana de Vista Completa.
Insercin de componente
Si ahora seleccionamos en el rea de trabajo, el componente seleccionado en ventana de dispositivos quedar insertado.
Seleccin de componente
Para seleccionar un elemento del circuito hay que presionar sobre l con el botn derecho. Esto lo resaltar en rojo.
Se ha seleccionado con botn derecho
Deseleccin de componente
Para deseleccionar un elemento seleccionado de un circuito, hay que pinchar con botn derecho en cualquier zona libre del rea de trabajo. Inmediatamente, el objeto recobrar su color normal.
Se ha pinchado aqu para deseleccionar
Borrado de componente
Para borrar un elemento del circuito hay que hacer doble clic sobre l con el botn derecho. El primer clic lo selecciona y resalta en rojo; el segundo lo borra. Borrad la puerta and insertada anteriormente, y dejad el rea de trabajo limpia.
Retroceder
Hasta habituarse a ISIS ser muy normal que se produzcan borrados accidentales. Para recuperar lo perdido hay tres opciones:
Utilizar el men pinchando en Utilizar el icono
O lo ms cmodo y rpido, que es pulsando Ctrl + Z. ISIS permite gran cantidad de pasos atrs.
Bach. Fernando Montenegro Daz
Previo a insercin
Antes de insertar un elemento debemos fijarnos en la posicin en la que saldr ese elemento al esquema. Seleccionar, de nuevo, la puerta and en la ventana de dispositivo y observad su posicin en la ventana de vista completa. Ntese que la puerta mira hacia la derecha. Es posible cambiar su orientacin antes de salir a escena.
Se ha pinchado aqu
Se ha seleccionado aqu
Se presiona aqu
El botn permanece hundido como muestra de que el elemento ha sido reflejado horizontalmente
Bach. Fernando Montenegro Daz
El botn permanece hundido como muestra de que el elemento ha sido reflejado verticalmente
Bach. Fernando Montenegro Daz
Despus de insercin
Las mismas operaciones de rotacin o reflejo se pueden realizar tras haber insertado el componente en el rea de trabajo. Se deja la puerta sin giro ni reflejo y se inserta en el esquema.
As debe salir
Tambin se ponen
en rojo las herramientas de giro-reflejo
Mover componente
Para mover un componente por el rea de trabajo, primero hay que seleccionarlo, despus se pincha con botn principal (izquierdo) y, sin soltar, se arrastra al punto deseado. Ms adelante comprobaremos que al arrastrar un componente conectado a otro se arrastran tambin las conexiones. Dejad una puerta and en el esquema.
Asignacin de nombre
En la casilla inferior se teclea el nombre y PROTEUS ya le asigna la extensin DSN.
Nombre asignado
Comprobacin de extensin
Una vez guardado el fichero podemos comprobar que la extensin DSN ha sido aadida. Es la identificacin de PROTEUS a sus circuitos.
Salvar posteriormente
Una vez salvado por primera vez un circuito, para guardarlo repetidamente con el mismo nombre la operacin es tan sencilla como pulsar la tecla S. Esto se puede comprobar abriendo el men File.
Opcin de teclado para salvar un circuito con el mismo nombre
Manipulacin elementos
Los elementos insertados llevan leyendas anexas que, la mayora de las veces, son molestas y conviene quitarlas.
Opciones de visualizacin
Para modificar la visualizacin de cualquier elemento del esquema podemos recurrir a tres opciones:
Con la barra de herramientas. Con la ventana de Vista Completa. Con el teclado.
Ampliacin de rea
Para ampliar una zona concreta se utilizar el icono Al pincharlo, el cursor se transforma en un rectngulo con cruz central, con la que deberemos dibujar el rea deseada para ampliar.
Vista completa
Tras hacer ampliaciones ser necesario volver a obtener la vista completa del esquema. Para ello hay dos soluciones:
La primera es dndole en el icono La segunda, y ms cmoda, el pulsar F8.
Tras seleccionar, el rectngulo verde muestra el centro de visin Aspecto del rea de trabajo tras el desplazamiento
Bach. Fernando Montenegro Daz
DECLARACION DE VARIABLES VAR Tipo de Variable Descripcin VAR BIT Toma los valores 0 y 1 unicamente VAR BYTE Toma valores entre 0 y 255 (8 bits) VAR WORD Toma valores entre 0 y 65535 (16 bits)
OPERADORES ARITMETICOS Operador Descripcin Ejemplo + Suma c=a+b Resta c=a-b * Multiplicacin c=a*b / Divisin c=a/b // Residuo c=a//b << Desplaza a la Izquierda c=a<<2 >> Desplaza a la Derecha c=b>>4 = Asignacin de Valores c=a ABS Valor Absoluto c=abs a COS Coseno del Angulo c=cos a MIN Minimo de un nmero c=a min b MAX Mximo de un nmero c=a max b SQR Raiz Cuadrada de un numero a=sqr b REV Invertir un Bit c=a rev 3
OPERADORES BINARIOS Operador Descripcin Ejemplo & AND Lgico c=a&b | OR Lgico c=a|b ^ XOR Lgico c=a^b NOT Lgico c= a &/ NAND Lgicoc=a&/b |/ NOR Lgico c=a|/ b ^/ NXOR Lgico c=b^/a
OPERADORES DE COMPARACION Operador Descripcin = Igual <> Diferente < Menor que > Mayor que <= Menor o igual que >= Mayor o igual que
OPERADORES LOGICOS Operador Descripcin AND AND Lgico OR OR Lgico XOR XOR Lgico NOT NOT Lgico NOT AND NAND Lgico NOT OR NOR Lgico NOT XOR NXOR Lgico
CONSIDERACIONES TECNICAS
DESDE EL PIC
10k
D1
220R
AL PIC
10k
AL PIC
R3
220R
D2
DESDE EL PIC
RL1 D3
1N4148
DESDE EL PIC
R5
10k
Q1
BC548
DISPLAYS