Está en la página 1de 30

Microcontroladores

Microcontroladores

Microprocesadores y microcontroladores

El diagrama de un sistema de un microcontrolador sera algo as

Los dispositivos de entrada pueden ser un teclado, un interruptor, un sensor, etc. Los dispositivos de salida pueden ser LED's, pequeos parlantes, zumbadores, interruptores de potencia (tiristores, optoacopladores), u otros dispositivos como rels, luces, en fin.. lo que quieras

representacin en bloques del microcontrolador

Memoria ROM (Memoria de slo lectura) Memoria RAM (Memoria de acceso aleatorio) Lneas de entrada/salida (I/O) Tambin llamados puertos Lgica de control Coordina la interaccin entre los dems bloques de un set de 35 instrucciones

PIC16C84/F84
encapsulado ms comn para estos microcontrolador es el DIP (Dual In line Pin) de 18 pines, y utiliza un reloj de 4 MHz (cristal de cuarzo).

El oscilador externo
RC. Oscilador con resistencia y condensador. XT. Cristal. HS. Cristal de alta velocidad. LP. Cristal para baja frecuencia y bajo consumo de potencia.

El cristal debe ir

Si no requieres mucha precisin en el oscilador, puedes utilizar una resistencia y un condensador

Reset

Memoria de datos
Tiene dos zonas diferentes PIC16F84A se halla dividida en dos bancos (banco 0 y banco 1) de 128 bytes cada uno (7Fh)

Configuracin de los puertos del PIC


la memoria de datos, la cual como dijimos, est dividida en el BANCO 0 y BANCO 1. Los registros importantes en la configuracin de los puertos son: STATUS direccin 0x3 PORTA direccin 0x5 PORTB direccin 0x6 TRISA direccin 0x5 TRISB direccin 0x6

Al configurar los puertos debers tener en cuenta que: Si asignas un CERO (0) a un pin, ste quedar como salida y... Si le asignas un UNO (1), quedar como entrada Esta asignacin se hace en: TRISA para los pines del PUERTO A (5 bits) TRISB para los pines del PUERTO B (8 bits) Por Ejemplo: Si TRISA es igual a 11110 todos sus pines sern entradas salvo RA0 que esta como salida

STATUS es un Registro de 8 bits u 8 casillas, en el cual la N 5 (RP0) define la posicin del banco en donde nos encontramos Si pones un CERO (0) a RP0 estaremos en el BANCO 0 Si le pones un UNO (1) ya ves, estaremos en el BANCO 1

Instrucciones

Crear un programa que sume dos a la entrada del puerto A y lo visualice por el puerto B bsf bcf movf PUERTA,W addlw movwf goto

;SEGUNDO.ASM Programa que lee el nmero binario introducido mediante 3


;interruptores conectados a la puerta PA (RA0,RA1,RA2), luego suma 2 unidades ;a ese valor y visualiza el resultado mediante 4 diodos led conectados a la ;puerta PB (RB0, RB1,RB2,RB3).

;---------------------------------------------------------------------------LIST P=16f84A ;Comando que indica el PIC usado RADIX HEX ;Los valores se representar n en hexadecimal ;---------------------------------------------------------------------------PUERTAA EQU 0X05 ;La etiqueta "PUERTAA" queda identificada con
;la direccin 0x05, que si corresponde con el ;banco 0 es el valor de PUERTAA y si es del ;banco 1 con el de TRISA.

PUERTAB EQU 0X06 ;Equivalencia de la etiqueta PUERTAB ESTADO EQU 0X03 ;Estado corresponde con el valor 0x03. W EQU 0 ;Identifica W con el valor 0. ;---------------------------------------------------------------------------ORG 0 ;Comando que indica al Ensamblador la
;direccin de la memeoria donde se ;situar la instrucin siguiente ;----------------------------------------------------------------------------

bsf

ESTADO,5

;Pone a 1 el bit 5 de ESTADO para direccionar


;la p gina 1 de la memoria de datos. ;W <-- FF(Hex)

movlw 0xff movwf PUERTAA movlw 0x00 movwf PUERTAB bcf ESTADO,5

;W --> TRISA ;W <-- 0 ;W --> TRISB (Las lneas de PB

salidas)

;Pone a 0 el bit 5 de ESTADO pasando a ;acceder al banco 0. ;W <-- PUERTAA. Se introduce el valor ;binario de los interruptores. ;W <-- W + 2 ;W --> PUERTAB. El valor de W sale por las ;lneas de PB a los led. ;Salta a la instruccin precedida por la ;etiqueta de inicio.

inicio movf PUERTAA,W

addlw 2 movwf PUERTAB goto END inicio

Crear un programa que permita inversin de giro de un motor trifsico (cundo RB1 sea 1 derecha)(cundo RB1 sea 0 derecha ) y lo visualice por el puerto B movf PUERTA,W addlw movwf goto

Cree un programa que me permita Controlar cuatro interruptores independientemente y crear una subrutina automtica de control ( automatizacin de llenado de botellas) Faja , llenado ,tapado, etiquetado

a) Disee la lgica de control Coloque una (1) si es entrada y una (0) si es salida y una (x) si no se usa

b) Disee la lgica y diagram el circuito c) Realice el diagrama de bloques del programa d) Realice el programa de microcontrolador . Encabezado . mapa de memoria (designacin de registros) . Configuracin de puertos. Programa

Instrucciones
CLRW CLRF BTFSC BTFSS ADDWF = Suma el contenido de w
y el registro, y el resultado lo guarda en d ( ADDWF f,d) ANDWF f,d