Академический Документы
Профессиональный Документы
Культура Документы
ndice
Pagina
Resumen Introductorio -
Introduccin -
Objetivo -
Marco Terico -
Problema
17
Procedimientos de solucin
17
Resultados
25
Circuito esquemtico -
26
Resumen -
28
28
Conclusin
30
Resumen Introductorio.
Introduccin
Objetivo
Marco terico.
Cada pin de esos puertos se puede configurar como entrada o como salida
independiente programando un par de registros diseados para tal fin. En ese registro un
bit en "0" configura el pin del puerto correspondiente como salida y un bit en "1" lo
configura como entrada. Dichos pines del Microcontrolador tambin pueden cumplir
otras funciones especiales, siempre y
cuando se configuren para ello, segn se
ver ms adelante.
Los pines del puerto A y del puerto
E pueden trabajar como entradas para el
convertidor Anlogo a Digital interno, es
decir, all se podra conectar una seal
proveniente de un sensor o de un
circuito analgico para que el
Microcontrolador la convierta en su
equivalente digital y pueda realizar algn
proceso de control o de instrumentacin
digital. El pin RB0/INT se puede
configurar por software para que
funcione como interrupcin externa,
para configurarlo se utilizan unos bits de
los registros que controlan las
interrupciones.
El pin RA4/TOCKI del puerto A puede ser configurado como un pin de
entrada/salida o como entrada del temporizador/contador. Cuando este pin se programa
como entrada digital, funciona como un disparador de Schmitt (Schmitt trigger), puede
reconocer seales un poco distorsionadas y llevarlas a niveles lgicos (cero y cinco
voltios). Cuando se usa como salida digital se comporta como colector abierto (open
collector), por lo tanto, se debe poner una resistencia de pull-up (resistencia externa
conectada a un nivel de cinco voltios). Como salida, la lgica es inversa: un "0" escrito al
pin del puerto entrega en el pin un "1" lgico. Adems, como salida no puede manejar
cargas como fuente, slo en el modo sumidero.
150 mA
200 mA
200 mA
200 mA
Modo fuente
150 mA
200 mA
200mA
200mA
BANCO 1:
- OPTION: Registro de control de frecuencia del TMR0.
- TRISA, TRISB, TRISC, TRISD. TRISE: Registros de configuracin de la operacin de
los pines de los puertos.
- ADRESL: Parte baja del resultado de la conversin A/D.
- ADCON1: Controla la configuracin de los pines de entrada anloga.
BANCO 2:
- TMR0: Registro del temporizador/contador de 8 bits.
- PCL: Byte menos significativo del contador de programa (PC).
- FSR: Registro de direccionamiento indirecto.
- EEDATA: Registro de datos de la memoria EEPROM.
- EEADR: Registro de direccin de la memoria EEPROM.
- PCLATH: Byte alto (ms significativo) del contador de programa (PC).
- INTCON: Registro de control de las interrupciones.
BANCO 3:
- OPTION: Registro de control de frecuencia del TMR0.
- EECON1: Control de lectura/escritura de la memoria EEPROM de datos.
- EECON2: No es un registro fsico.
Principio de funcionamiento
Bsicamente estos motores estn constituidos normalmente por un rotor sobre el
que van aplicados distintos imanes permanentes y por un cierto nmero de bobinas
excitadoras bobinadas en su estator. Las bobinas son parte del estator y el rotor es un
imn permanente. Toda la conmutacin (o excitacin de las bobinas) deber ser
externamente manejada por un controlador.
Problema 7
Se trata de desarrollar un circuito que tenga como principal funcin realizar el
control de entrada y salida de vehculos utilizando un Microcontrolador pic-16f877.
Este ejercicio se pretende manejar todo el conjunto de instrucciones, para disear
el hardware y confeccionar el software para contar con un control de vehculos en un
estacionamiento con el fin de llevar un proceso de seguridad hacia los usuarios.
Procedimientos de solucin.
Programa elaborado en lenguaje ensamblador.
;***********proyecto***********
;control de salida-entrada de un estacionamiento
;se utilizan dos motores a pasos, dos botones pulsador,
;el PIC16F887, y el integrado ULN2803, dos led de
;diferente color
;***********configuraciones**********
#include<p16F877.INC>
__CONFIG
_WDT_OFF&_CP_OFF&_XT_OSC
LIST P=16F877
;***************REGISTRO****************
DATOS1 EQU 20H
DATOS2 EQU 21H
CONT1 EQU 22H
CONT2 EQU 23H
CONT3 EQU 24H
ORG 0H
GOTO INICIO
;********INICIALIZAR PUERTOS***********
ORG 5H
INICIO
BSF STATUS,RP0
BCF STATUS,RP1
CLRF TRISB
CLRF TRISC
MOVLW B'00000011'
MOVWF TRISA
MOVLW B'00000110'
MOVWF ADCON1
BCF STATUS,RP0
CLRF PORTB
CLRF PORTC
;PUERTO B=SALIDA
;PUERTO C=SALIDA
;PUERTO A
;RA0=RA1=entrada
;DESCONECTAR CONV A/D
;PUERTO A ENTRADAS DIGITALES
;SELECCION BANCO 0
;LIMPIA EL PUERTO B
;LIMPIA EL PUERTO C
MOVLW B'00001010'
MOVWF DATOS1
MOVLw B'00000000'
MOVWF DATOS2
BSF PORTA,2
;*************sensado***************
SENSADO
BTFSS PORTA,0
GOTO SALIDA
BTFSS PORTA,1
GOTO ENTRADA
GOTO SENSADO
VACIO
BSF PORTA,2
GOTO SENSADO
LLENO
BSF PORTA,3
GOTO SENSADO
SALIDA
CLRW
IORWF DATOS2
BTFSC STATUS,Z
GOTO VACIO
GOTO RSALIDA
ENTRADA
CLRW
IORWF DATOS1
BTFSC STATUS,Z
GOTO LLENO
GOTO RENTRADA
RSALIDA
BSF PORTA,2
incf DATOS1,1
decf DATOS2,1
GOTO MOTORC
RENTRADA
BSF PORTA,2
DECF DATOS1,1
INCF DATOS2,1
GOTO MOTORB
MOTORB
MOVLW B'00000001'
MOVWF PORTB
CALL RETARDO
MOVLW B'00000010'
MOVWF PORTB
CALL RETARDO
MOVLW B'00000100'
MOVWF PORTB
CALL RETARDO
MOVLW B'00001000'
MOVWF PORTB
CALL RETARDO
MOVLW B'00000001'
MOVWF PORTB
CALL RETARDO2
MOVLW B'00000001'
MOVWF PORTB
CALL RETARDO
MOVLW B'00001000'
MOVWF PORTB
CALL RETARDO
MOVLW B'00000100'
MOVWF PORTB
CALL RETARDO
MOVLW B'00000010'
MOVWF PORTB
CALL RETARDO
MOVLW B'00000001'
MOVWF PORTB
GOTO SENSADO
MOTORC
MOVLW B'00000001'
MOVWF PORTC
CALL RETARDO
MOVLW B'00000010'
MOVWF PORTC
CALL RETARDO
MOVLW B'00000100'
MOVWF PORTC
CALL RETARDO
MOVLW B'00001000'
MOVWF PORTC
CALL RETARDO
MOVLW B'00000001'
MOVWF PORTC
CALL RETARDO
MOVLW B'00000010'
MOVWF PORTC
CALL RETARDO
MOVLW B'00000100'
MOVWF PORTC
CALL RETARDO
MOVLW B'00001000'
MOVWF PORTC
CALL RETARDO
MOVLW B'00000001'
MOVWF PORTC
CALL RETARDO
MOVLW B'00000010'
MOVWF PORTC
CALL RETARDO
MOVLW B'00000100'
MOVWF PORTC
CALL RETARDO
MOVLW B'00001000'
MOVWF PORTC
CALL RETARDO
MOVLW B'00000001'
MOVWF PORTC
CALL RETARDO
MOVLW B'00000010'
MOVWF PORTC
CALL RETARDO2
MOVLW B'00000010'
MOVWF PORTC
CALL RETARDO
MOVLW B'00000001'
MOVWF PORTC
CALL RETARDO
MOVLW B'00001000'
MOVWF PORTC
CALL RETARDO
MOVLW B'00000100'
MOVWF PORTC
CALL RETARDO
MOVLW B'00000010'
MOVWF PORTC
CALL RETARDO
MOVLW B'00000001'
MOVWF PORTC
CALL RETARDO
MOVLW B'00001000'
MOVWF PORTC
CALL RETARDO
MOVLW B'00000100'
MOVWF PORTC
CALL RETARDO
MOVLW B'00000010'
MOVWF PORTC
CALL RETARDO
MOVLW B'00000001'
MOVWF PORTC
CALL RETARDO
MOVLW B'00001000'
MOVWF PORTC
CALL RETARDO
MOVLW B'00000100'
MOVWF PORTC
CALL RETARDO
MOVLW B'00000010'
MOVWF PORTC
CALL RETARDO
MOVLW B'00000001'
MOVWF PORTC
GOTO SENSADO
RETARDO
CLRF
CONT1
CLRF
CONT2
MOVLW 0X03
MOVWF CONT3
DECFSZ CONT1,1
GOTO $-1
DECFSZ CONT2,1
GOTO $-3
DECFSZ CONT3,1
GOTO $-5
RETURN
RETARDO2
CLRF
CONT1
CLRF
CONT2
MOVLW 0X07
MOVWF CONT3
DECFSZ CONT1,1
GOTO $-1
DECFSZ CONT2,1
GOTO $-3
DECFSZ CONT3,1
GOTO $-5
RETURN
END
Resultados
Circuito esquemtico
Simulacin en Proteus
Circuito sin alimentacin
Resumen
En l proceso de programacin el sistema, el resultado se debe proyectar en
terminales de salida del puerto esto se realiza en el programa de MPLAB, al simularlo en
el programa de Proteus.
Para la realizacin de esta prctica se utiliz:
1 Microcontrolador PIC16F877
1 Circuito integrado ULM2803
2 Motores paso a paso
2 Botones Pulsadores.
3 Resistencias de 10 kOhms
2 Leds
Cable para conexiones
1 capacitor tipo Cristal Oscilador
2 capacitores cermicos # 27
1 capacitores cermicos # 1uf
Anexos
Conclusin