Академический Документы
Профессиональный Документы
Культура Документы
INGENIERIA ELECTRÓNICA
SISTEMAS MICROPROCESADOS I
INTEGRANTE
BERENICE ARGUERO
TEMA:
Utilizació n de declaraciones con el microcontrolador pic
OBETIVO:
Utilizar las declaraciones if, select case, do, for,while con el micrcontroaldor
pic.
DATASHEET
PIC 16F877A
DESARROLLO DE LA PRÁCTICA
Ejercicio Propuesto
Problema
Prender todos los leds de los 3 puerto de del microcontrolador, con un pulsador
RB0 hace que cuente ascedentemente los del puerto C (0-255 ) ; con un pulsador
RB1 hace que descienda los del puerto D(255-0).
Algoritmo
Entrada
Fundamentos que se encuentran guardados en el microcontrolador
Proceso
Configuramos el puerto B como entrada
Configuramos el puerto A como salida
Configuramos el puerto C como salida
Configuramos el puerto D como salida
Comparamos el valor de entra del pin RBO
Realizamos la acció n de incremento
Comparamos si dentro del lazo el valor RB1 = 1
Interrumpe la acció n de incremento
Realiza la acció n de decremento
Regresa a comparar el valor de RB0
Salida
Salida desde el puerto A,C,D hacia las resitencia con su correspondientes
leds
Flujograma Inicio
A
Configurar variable
a,b,como byte como
porta=%11111111 portd=%11111111
portc=%11111111 porta=%11111111
Puerto B =
entrada
Puerto A = salida
Puerto C = salida
A
If portb.0=1
si
portc=%00000000
a=0 end
If portb.1=1
no no
a>255
si end
a=a+1
portc=a
Break
delay_ms(500
)
If portb.1=1
portd=%11111111
b=255
If portb.0=1
255=>b
end
b=b-1
Break portd=b
delay_ms(500
)
end
Código
program Contador
dim a,b as byte
main:
trisc=0
trisd=0
trisb=$ff
portb=0
trisa=0
porta=0
porta=255
while true
porta=%11111111
portd=%11111111
portc=%11111111
'porta=%11111111
if portb.0=1 then
portc=%00000000
a=0
if portb.1=1 then
break
end if
if portb.1=0 then
while a<255
a=a+1
portc=a
delay_ms(500)
if portb.1=1 then
break
end if
wend
end if
if portb.1=1 then
portd=%11111111
b=255
if portb.0=1 then
break
end if
if portb.0=0 then
while 255>=b
b=b-1
portd=b
delay_ms(500)
if portb.0=1 then
break
end if
wend
end if
end if
end if
wend
end.
Esquema
Fotos
fig(1)
Fig(2)
CONCLUSIONES
2. La estructura de repetición while es un ciclo de los mas usados para repetir una
secuencia de instrucciones, sobre todo cuando conocemos el inicio y el fin es
indeterminado, esta arreglo fue utilizado en el contador ascendente como
descendente .
BILBLIOGRAFIA
DATASHEET PIC 16F877A :
http://ww1.microchip.com/downloads/en/devicedoc/39582b.pdf