Documentos de Académico
Documentos de Profesional
Documentos de Cultura
INFORME 3
EDISON RIOFRIO
FRANCISCO REYES
PRACTICA 3 MICROCHIP
1. Control de Relé.
a. Controlar un foco a 110v, mientras se de un pulso se prendera por 3 segundos, se
apagará 1 segundo y se volverá a prender por otros 3 segundos.
Entradas
o Pulso para activación del foco.
Salidas
o Arreglo de bytes en el puerto de salida.
Procesos
o Establecer los pines de salida
o Establecer pines de entrada
o Si el puerto C es 1 se pondrá un 1 en la salida del portC.0 por 3 segundos
o Se pondrá el portC.0 en 0 por 1 segundo
o Se pondrá el portC.0 en 1 por 3 segundos
o Si el puerto C es 0 se pondrá un 0 en la salida del portC.0 y no se activará el relé.
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint 5.0 now.
Algoritmo.
INICIO
Especificar Puerto B
como salida y Puerto C
como entrada
If Falso
portc.0=1
Portc.0=1 Portc.0=0
delay 3seg
Portc.0=0
delay 1seg
Portc.0=1
delay 3seg
Lenguaje de Programación.
program Pratica2_1
trisc=$ff
trisb=$0
lazo:
if portc.0=1 then
portb.0=1
delay_ms(3000)
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint 5.0 now.
portb.0=0
delay_ms(1000)
portb.0=1
delay_ms(3000)
else
portb.0=1
end if
goto lazo
end.
Diseño en Proteus.
Gráficas:
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint 5.0 now.
Conclusiones:
El manejo de 110 lo hemos hecho gracias al relé, pero se podría utilizar un moc3020 y un triac,
con un uC podemos manejar voltajes TTL pero gracias a etapas de aislamiento se podría manejar
voltajes como el de esta practica
2. Display de 7 segmentos
b. Escribir en un Display los números del 0 al 9 de manera ascendente
Entradas:
o Secuencia desde el 0 al 9 en formato binario
Salidas:
o Arreglo de bits en los pines del puerto B
Procesos:
o Configuración del puerto B como puerto de salida de datos.
o Declaro una variable a incrementar.
o Usamos la sentencia for para realizar el incremento de nuestra variable desde 1 a 10.
o Comparamos si el incremento es igual a 10.
o Por verdad reiniciamos la cuenta.
Algoritmo:
INICIO
i=1; a=0
For i =1 to 10
a=a+1
portb=a
If a=10 falso
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint 5.0 now.
Lenguaje de Programación:
program Practica2_2
dim i,a as byte
main:
trisb=0
i=1
a=0
for i=1 to 10
portb=a
a = a+1
delay_ms(1000)
next i
if a=10 then
a=0
else
delay_ms(500)
end if
goto main
end.
Diseño en Proteus:
Graficas:
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint 5.0 now.
Conclusiones:
El uso de un for y un if combinados nos asegura de que la cuenta será consecutiva, es decir si llega al
límite fijado podremos tranquilamente volver a reiniciar la cuenta
3. Contador de 0 a 99
Entradas
o Datos del 0 al 99
Salidas
o Arreglo de bytes en los pines del puerto B donde estará el arreglo del contador
o Arreglo de bytes en el puerto C que será utilizado como el puerto que realizara el
barrido.
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint 5.0 now.
Procesos
o Configurar el puerto B como salidas.
o Configuración del puerto C como salidas.
o Hacemos uso de la instrucción INC() que incrementa en 1.
o Una variable para el conteo de unidades.
o Una variable para el conteo de decenas.
o Realizaremos un incremento desde 1 a 10 en la variable de unidades.
o Comparamos si el incremento es igual a 10
o Por falso seguimos incrementando
o Por verdad enceramos las unidades y empezamos a realizar los incrementos en la
variable de decenas.
o Comparamos si el incremento es igual a 10.
o Por verdad enceramos las decenas y reiniciamos el proceso
o lgoritmo: INICIO
Var unidades = a
Var decenas = b
portC = 1
portB = a
Delay 20miliseg
portC=2
portB = b
Delay 20miliseg
Inc (i)
If i=10
Verdad
Inc (b)
If b=10 If a=10
Verdad
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint 5.0 now.
b=0 a=0
i=0
Lenguaje de programación:
program Pratica2_3
dim a,b as byte
dim i as word
main:
a=0
b=0
i=0
trisb=0
trisc=0
while true
portc=1
portb=a
delay_ms(20)
portc=2
portb=b
delay_ms(20)
inc(i)
if i = 1 then
inc(b)
if b = 10 then
b=0
inc(a)
else
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint 5.0 now.
if a =10 then
a=0
end if
end if
i=0
else
end if
wend
end.
Esquema en proteus:
Graficos:
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint 5.0 now.
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint 5.0 now.
Conclusiones:
Para poder contar desde el 0 al 99 tenemos que realizar un barrido, el cual lo controlamos con el puerto
C, este activa los transistores que a la vez energizan al Display.
Evaluation notes were added to the output document. To get rid of these notes, please order your copy of ePrint 5.0 now.