0% encontró este documento útil (0 votos)
4 vistas6 páginas

Ejercicios de Programación PIC 16F84

Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
4 vistas6 páginas

Ejercicios de Programación PIC 16F84

Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

ENUNCIADOS DE LOS EJERCICIOS A REALIZAR EN CLASE

LECCIÓN 9

EJERCICIO 9.1

Escribir un programa que realice un parpadeo de 200 ms en el encendido/apagado


de ocho LEDs conectados en cátodo común al Puerto B de un microcontrolador
PIC 16F84 operando en modo XT con un oscilador de 4 MHz.

EJERCICIO 9.2

Debido a un accidente de circulación se han colocado cuatro señales luminosas a


cada lado de la calzada para que sirvan de advertencia a los conductores que
circulan por esa ruta (ver figura). El control del encendido/apagado se realiza
mediante un microcontrolador PIC 16F84 y unos drivers conectados a los
terminales del puerto B, como indica la figura.

El sistema debe arrancar con todas las lámparas apagadas. Al apretar el pulsador
conectado a RA4, debe comenzar la siguiente secuencia de luces: L0, L2, L4, L6,
L1, L3, L5 y L7, es decir, primero las de la derecha y luego las de la izquierda. Al
finalizar la secuencia, el ciclo debe repetirse indefinidamente. El oscilador es XT de
4 MHz y el ciclo completo debe durar (más o menos) 1 segundo.

No es necesario refrescar el WDT (perro guardián) y, si se utilizan interrupciones,


no es necesario salvar registros mientras se atienden.

EJERCICIO 9.3

Una variedad del ejercicio anterior consiste en hacer que las luces se enciendan
por parejas y en secuencia, es decir, L0 y L1, después L2 y L3 apagándose L0 y L1,
después L4 y L5 apagándose L2 y L3, y finalmente L6 y L7 apagándose L4 y L5,
para posteriormente repetirse el ciclo. Para dar tiempo a ser observadas, el ciclo
de encendido desde que se enciende la pareja L0 - L1 hasta que vuelve a
encenderse debe ser de (aproximadamente) 0,5 seg.
2

Escribir un programa en ensamblador que realice dicho control sabiendo que el


oscilador es XT de 4 Mhz.

EJERCICIO 9.4.-

Una variedad del ejercicio 9.3 es la siguiente: que cuando cada pareja de lámparas
se encienda no se apague la anterior. Cuando finalice la temporización de L6/L7
(con las otras 6 lámparas también encendidas), deben apagarse todas un tiempo y
comenzar de nuevo el ciclo.

No es necesario refrescar el WDT (perro guardián) y, si se utilizan interrupciones,


no es necesario salvar registros mientras se atienden.

EJERCICIO 9.5

Mediante un microcontrolador PIC 16F84 operando en modo RC con un oscilador


de 4 MHz, se desea controlar una máquina taladradora con las siguientes
especificaciones:

- Al apretar el pulsador de arranque conectado al terminal RA0 se inicia el


ciclo de funcionamiento con un descenso rápido del taladro.

- Cuando la parte inferior del portabrocas activa el sensor conectado al


terminal RA2 (pone RA2 a "0"), se activa un relé que hace que la broca
gire. Simultáneamente el descenso del taladro debe ser lento.

- Cuando la parte inferior del portabrocas activa el sensor conectado al


terminal RA3 (pone RA3 a "0"), se considera que la pieza está taladrada y
el taladro debe subir con rapidez manteniendo el giro de la broca.
3

- Cuando el taladro en su regreso alcanza el final de carrera que está


conectado al terminal RA1 (pone RA1 a "0") debe detenerse la subida del
taladro y desactivarse el relé del giro de la broca. Además, debe activarse
una señal acústica que avise del fin de la operación.

- El nuevo ciclo comienza al apretarse de nuevo el pulsador de arranque

EJERCICIO 9.6

Para una determinada aplicación se necesita que los 7 segmentos de un display


parpadeen simultáneamente con una frecuencia de 1 Hz, es decir, 0,5 segundos
encendidos y 0,5 segundos apagados. El display debe iniciarse apagado y el
parpadeo debe comenzar al apretar un pulsador conectado al terminal RA4, como
indica la figura. El parpadeo debe detenerse al apretar otro pulsador conectado al
terminal RA1 (ver figura). La inicialización del sistema se consigue mediante otro
pulsador conectado a la patilla MCLR (que no se analizará).

Escribir un programa en ensamblador que cumpla las especificaciones sabiendo


que el oscilador es de tipo RC de frecuencia 32,768 kHz y que los dos pulsadores no
pueden apretarse a la vez. No es necesario refrescar el perro guardián y, si se
utilizan interrupciones, no es necesario salvar registros mientras se atienden.

EJERCICIO 9.7
4

Se necesita que al apretar un pulsador conectado al terminal RA1 de un


microcontrolador PIC 16F84 un diodo LED conectado al terminal RB0 parpadee
con una frecuencia de 0,1 seg, es decir, 0,1 seg encendido y 0,1 seg apagado. El
parpadeo debe detenerse al apretar otro pulsador conectado a RA4. El oscilador es
de cristal de cuarzo de 4 MHz.

Se pide: escribir un programa fuente que realice dicha función.

EJERCICIO 9.8

Para una determinada aplicación se necesita un cronómetro que debe medir 3


segundos y que debe operar de la siguiente forma: inicialmente, en el display debe
verse el número "3". Al apretar el pulsador conectado a RA4, y transcurrido 1
segundo, debe aparecer el número "2". Transcurrido otro segundo, debe aparecer
el número "1" y transcurrido otro segundo el número "0". Cuando debería verse
un hipotético "-1", el display debe apagarse y permanecer así hasta que se apriete
de nuevo el pulsador conectado a RA4.

Para realizarlo se utilizará un microcontrolador PIC 16F84 con un oscilador de


tipo RC de frecuencia 34 kHz. El display es de cátodo común, es decir, los
segmentos a, b, c,....g se encienden con "1" en los respectivos terminales RB.

EJERCICIO 9.9
5

Para el circuito de la figura, inicialmente el display debe aparecer apagado. Al


apretar el pulsador conectado a RA4 deben ir apareciendo sucesivamente las
letras: "H", "O", "L", "A" de forma que cada una de ellas se vea durante un
cuarto de segundo (aproximadamente). Tras aparecer la A, debe repetirse el ciclo.

Se dispone de un PIC 16F84, con un oscilador tipo RC de frecuencia 34 kHz. El


display es de cátodo común (los segmentos a, b, c,....g se encienden con "1" en los
terminales RB). Se pide: escribir un programa fuente que cumpla con las
especificaciones indicadas.

EJERCICIO 9.10

Se desea gobernar con un microcontrolador PIC 16F84 las luces situadas sobre el
techo de una UVI móvil (L0, L1, ... L7). Estas luces están conectadas a través de
sendos drivers a los terminales del PORT B de forma que L0 está conectada a
RB0, L1 está conectada a RB1 y así sucesivamente hasta L7 que está conectada a
RB7, como indica la figura. Se pretende que al accionar el pulsador conectado a la
patilla RA4 del microcontrolador (ver figura), las luces se activen iluminándose en
primer lugar L0 y L4 y una vez transcurridos aproximadamente 0,2 segundos L0 y
L4 se apaguen y se iluminen L1 y L5 para que, transcurridos otros 0,2 seg, se
apague L1 y L5 y se enciendan L2 y L6. Tras otros 0,2 seg. deben apagarse L2 y L6
y encenderse L3 y L7 de forma que, tras estar otros 0,2 seg. encendidas, el ciclo
finaliza y deben encenderse de nuevo L0 y L4. De esa forma se obtiene, mirando
desde encima, un efecto visual de movimiento de luz de izquierda a derecha en las
luces delanteras y de derecha a izquierda en las traseras. El oscilador es de cristal
de cuarzo de 4 MHz.

Se pide: escribir un programa fuente (.asm) que realice dicho control.


6

EJERCICIO 9.11

Se desean controlar con un microcontrolador PIC 16F84 los intermitentes de un


automóvil (los dos de la derecha conectados a RB0 y RB6 y los dos de la izquierda
conectados a RB1 y RB7 a través de sendos buffers) de forma que el ciclo completo
dure 0,5 seg., es decir, aproximadamente 0,25 seg. encendidos y 0,25 seg. apagados.
La pareja de intermitentes que está parpadeando en cada momento viene
determinada por una señal digital exterior al microcontrolador que está conectada
a RA4 de forma que si esa señal es un "1" funcionan los intermitentes de la
izquierda y si es "0" los de la derecha. El oscilador es de cristal de cuarzo de 4
MHz.

Se pide: escribir un programa fuente (.asm) que realice dicho control escogiendo el
método de temporización y los terminales de entrada y/o salida que considere
oportunos.

EJERCICIO 9.12

Se desean controlar con un microcontrolador PIC 16F84 las luces de avería de un


automóvil (los cuatro intermitentes parpadeando simultáneamente) de forma que
el ciclo completo dure 1 seg., es decir, aproximadamente 0,5 seg encendidos y 0,5
seg apagados. El parpadeo debe comenzar cuando se apriete un determinado
pulsador. El oscilador es de cristal de cuarzo de 4 MHz.

Se pide: escribir un programa fuente (.asm) que realice dicho control escogiendo el
método de temporización y los terminales de entrada y/o salida que considere
oportunos.

También podría gustarte