Examenes Laboratorio 2014-19
Examenes Laboratorio 2014-19
Examenes Laboratorio 2014-19
Alumno ______________________________________________________________
Utiliza el entorno MPLAB de Microchip para desarrollar el ejercicio descrito más abajo.
Realiza la programación en lenguaje C y el compilador MPLAB XC16. Utiliza los
recursos del entorno de desarrollo para depurar y verificar el funcionamiento del sistema
a nivel de simulación
EJERCICIO
Utiliza el módulo de generación de pulsos (OC1) para generar una señal ajustable
PWM. Usa los botones de la tarjeta Explorer 16 para fijar los valores de frecuencia (f) y
ciclo de trabajo (DC) de la señal PWM. La configuración y el funcionamienot del
sistema deben cumplir:
1. Oscilador y señal de reloj de la CPU: Utiliza el oscilador de alta frecuencia
del PIC24F. Mediante el PLL, consigue que la frecuencia de la señal de
reloj que va a la CPU sea de 16 MHz.
2. El temporizador asociado al módulo OC1 será el TIMER2. Configura el
temporizador para utilizar la señal de reloj de la CPU y fija un factor de
escala 1:256 para reducir la frecuencia del contador TMR2
T2CON = 0x_____________
Frecuencia de TMR2:___________Hz
OC1CON = 0x____________
DEPARTAMENTO DE TECNOLOGÍA ELECTRÓNICA
EJERCICIO
Se trata de utilizar un módulo de generación de pulsos (OC) para generar una señal
PWM de 200Hz. La resolución de la señal PWM debe estar en torno a 1:64 (6 bits).
1. Selecciona el temporizador que asociarás al módulo OC1, y escribe la configuración
del mismo: TyCON y PRy. Para ello también deberás especificar qué frecuencia de reloj
vas a utilizar en el sistema (FCY). Justifica esta configuración.
2. Escribe el valor del registro de configuración del módulo OC1: OC1CON. Justifica la
configuración elegida.
3. Escribe un programa que genere una señal PWM con el módulo OC1, tal que el ciclo
de trabajo de la señal pueda variar entre DC= 0% y DC=100% con las característicaS
arriba mencionadas. El sistema debe funcionar como sigue:
a. A su inicio, la salida PWM debe estar desactivada (DC = 0%).
b. Cuando apretamos el pulsador S5 de la tarjeta, el DC de la señal PWM debe
crecer a un ritmo de un 10% (con la precisión que permita la resolución seleccio-
nada) cada segundo.
c. Si no volvemos a pulsar S5 la señal, tras llegar a su valor máximo (DC =
100%), volverá a cero e iniciará su crecimiento al ritmo prefijado. Una nueva
pulsación en S5 nos lleva al estado inicial con DC = 0 %.
d. Queremos visualizar el valor que tiene el DC de la señal, mediante los LEDs de
la tarjeta. Utiliza el flag de interrupción del módulo OC para generar una interrup-
ción y pasar el valor de visualización a los LEDs de la siguiente forma:
• DC = 0% : todos apagados.
• DC = 10% : LED1
• DC = 20% : LED1 y LED2
•…
• DC = 80% : LED1, LED2, … , LED8
• DC = 90% : LED1, LED8
• DC = 100% : LED1, LED2, LED8
NOTA: Las especificaciones de la señal PWM (f=200HZ, res=1:64) no necesariamente pueden lo-
grarse de forma exacta. Ten en cuenta que tanto la frecuencia de reloj F CY como el preescalado del
temporizador no pueden ajustarse a cualquier valor. Se recomienda ajustar la frecuencia de la
señal PWM a 200 Hz y aproximar la resolución al valor especificado
Sistemas Electrónicos Digitales 6 de junio 2018
Examen práctico. Evaluación final mayo 2018
Nombre y apellidos_______________________________________________________
EJERCICIO
Tenemos un motor eléctrico DC cuya velocidad queremos controlar en el intervalo de
1.000 rpm a 8.000 rpm. El motor lleva incluído un encoder incremental de efecto Hall,
el cual genera tres pulsos por cada vuelta del eje del motor. Queremos utilizar uno de
los módulos IC (Input Capture) del PIC24FJ128GA010 para realizar la medida de la
velocidad del motor. Para ello, hemos conectado la salida del encoder al canal 1 del
módulo IC. Deseamos obtener la máxima resolución y precisión en la medida de
velocidad, ya que usaremos los valores obtenidos en un algorimo de control.
1. Elige la fuente de reloj y su configuración más adecuada (usaremos la tarjeta
Explorer 16). Justifica la elección y configuración realizadas y escribe las
palabras de configuración adecuadas (y los SFR, si fueran necesarios). Es
conveniente tener en cuenta lo siguiente:
a. Queremos conseguir las mayores resolución y precisión.
b. Calcula los valores máximos y mínimos de frecuencia que
tendrás que medir:
Fmáx_________________Hz
Fmín_________________Hz
Configuración del reloj:
TxCON = 0x______________
3. Una vez decidida la frecuencia del reloj y la configuración del temporizador,
calcula cuáles será los valores máximos y mínimos de resolución en la medida
de frecuencia:
Rmáx______________________Hz
Rmín_______________________Hz
4. Decide cuál será el modo de operación más adecuado para el módulo IC en esta
aplicación. Argumenta tu decisión y escribe el valor correspondiente del registro
de configuración:
IC1CON = 0x____________
Tmáx______________________ms
Tmín_______________________ms
5. Decide cómo podemos asegurar que el sistema realice un cálculo del valor de
frecuencia cada 100 ms (ya que ésta será la frecuencia de muestreo del sistema
de control)
Nombre y apellidos_________________________________________________________________________
Utiliza el entorno MPLAB de Microchip para desarrollar el pequeño ejercicio que se propone a continuación.
Realiza la programación en lenguaje C y el compilador XC16. Puedes utilizar todos los recursos del entorno
de desarrollo para depurar y verificar el funcionamiento del sistema a nivel de simulación
NOTA: Comenta todas y cada una de las líneas de código de tu programa, indicando claramente la
utilidad y función de cada una de ellas. No se dará por válido el código que no esté debidamente
comentado. No olvides incluir TODOS los archivos necesarios para la compilación en la carpeta del proyecto.
Finalmente, ¡no olvides escribir tu nombre en los comentarios iniciales del fichero principal!
EJERCICIO
Utilizando la tarjeta de desarrollo Explorer 16, que contiene el PIC24FJ128GA010, queremos implementar
el control en tiempo real de los 8 LEDs de la tarjeta. Sigue las especificaciones siguientes para desarrollar el
sistema:
1. Configura la señal de reloj del sistema para usar el oscilador externo primario (Sin PLL).
2. Utiliza el temporizador Timer 1 para que genere una interrupción con un período de dos segundos.
Configura el temporizador para que tenga la máxima resolución en la medida de esos dos segundos.
Explica con claridad los cálculos realizados:
Cálculos:
T1CON = 0x____________;
Período del contador TMR1 = __________µs;
Nombre y apellidos________________________________________________________________________
Utiliza el entorno MPLAB de Microchip para desarrollar el pequeño ejercicio que se propone a continuación.
Realiza la programación en lenguaje C y el compilador XC16. Puedes utilizar todos los recursos del entorno
de desarrollo para depurar y verificar el funcionamiento del sistema a nivel de simulación
NOTA: Comenta todas y cada una de las líneas de código de tu programa, indicando claramente la
utilidad y función de cada una de ellas. No se dará por válido el código que no esté debidamente
comentado. No olvides incluir TODOS los archivos necesarios para la compilación en la carpeta del proyecto.
Finalmente, ¡no olvides escribir tu nombre en los comentarios iniciales del fichero principal!
EJERCICIO
Utilizando la tarjeta de desarrollo Explorer 16, que contiene el PIC24FJ128GA010, queremos implementar
un sistema que leerá el estado en tiempo real de tres pulsadores de la tarjeta. Sigue las especificaciones
siguientes para desarrollar el sistema:
1. Configura la señal de reloj del sistema para usar el oscilador rápido interno (FRC) con divisor de
frecuencia (postscaler). Asegura que la frecuencia de reloj de la CPU es de 125 kHz.
2. Utiliza el temporizador Timer 1 para que genere una interrupción con un periodo de dos segundos.
Configura el temporizador para que tenga la máxima resolución en la medida de esos dos segundos.
Explica con claridad los cálculos realizados:
Cálculos:
T1CON = 0x____________;
Período del contador TMR1 = __________µs;
Nombre y apellidos
EJERCICIO
Utiliza el módulo de generación de pulsos (OC) para generar una señal PWM de 200 Hz
de frecuencia. La resolución de la señal PWM generada deberá ser aproximadamente
(no menor) 1:64 (6 bit). Sigue los siguientes pasos para la programación:
1. Elige el temporizador que asignarás al módulo OC1 y escribe su configuración.
Anteriormente, tendrás que realizar la configuración del reloj y elegir la
frecuencia de la CPU (Fcy). Justifica mediante cálculos las elecciones y
configuraciones realizadas.
_CONFIG2(0x____________);
FCy = ____________;
TyCON = 0x______________;
PRy = _____________;
ESCUELA DE INGENIERÍA DE BILBAO DEPT. DE TECNOLOGÍA ELECTRÓNICA
OC1CON = 0x____________
NOMBRE________________________________________________________________
EJERCICIO
Tenemos el PIC24F conectado en la tarjeta Explorer 16, y queremos programar un
prototipo que cumpla con las siguientes características:
1. Configura la fuente del reloj de sistema utilizando el oscilador RC interno de
alta frecuencia, y selecciona la opción con “PLL”.
F y (CPU) = __________
TyCON = 0x____________;
Period timer = ____________
NOMBRE________________________________________________________________
EJERCICIO
Tenemos el PIC24F conectado en la tarjeta Explorer 16, y queremos programar un
prototipo que cumpla con las siguientes características:
1. Configura la fuente del reloj de sistema utilizando el oscilador RC interno de
alta frecuencia, y selecciona la opción con “postscaler”.
2. Configura el divisor de frecuencia o “postscaler” para reducir al máximo la
frecuencia de reloj ¿Cuál será la frecuencia en la CPU?
Fy (CPU) = __________
TyCON = 0x____________;
Period timer = ____________
count = 0x______________
ESCUELA DE INGENIERÍA DE BILBAO DEP. TECNOLOGÍA ELECTRÓNICA
NOMBRE________________________________________________________________
EJERCICIO
Tenemos el PIC24F conectado en la tarjeta Explorer 16, y queremos programar un
sistema que muestre un segundero en los LEDs de la tarjeta. El sistema debe funcionar
de la siguiente manera: los 8 LEDs de la tarjeta deben encenderse y apagarse a
intervalos de 1 segundo. Sin embargo, cuando pulsemos el pulsador S3 de la tarjeta, los
LEDs deben permanecer en el mismo estado en el que se encontraban en ese momento
(encendidos o apagados), y deben permanecer así hasta que dejemos de presionar el
mismo, momento en el cual los LEDs deben seguir parpadeando a intervalos de un
segundo. Para la programación de este sistema debes seguir las siguientes indicaciones:
1. Configura el reloj de sistema utilizando el oscilador interno de bajo consumo
¿Cuál será la frecuencia de reloj en la CPU?
TyCON = 0x______________;
Resolución (ms) =
3. El tiempo de encendido y apagado de los LEDs debe ser preciso, por lo que se
exige que este se realice utilizando una interrupción.
SISTEMAS ELECTRÓNICOS DIGITALES DEP. TECNOLOGÍA ELECTRÓNICA
NOMBRE________________________________________________________________
EJERCICIO
Se trata de utilizar un módulo de generación de pulsos (OC) para generar una señal
PWM de 200Hz. La resolución de la señal PWM debe estar en torno a 1:64 (6 bits).
Laboratorio de μP
1. Se escogerá como reloj de sistema el reloj primario (POSC) en modo PLL y XT (XTPLL)
2. Se espera la activación de un pulsador (a elegir).
3. Una vez reconocida la pulsación se activa un led durante 3s.
4. Finalizada la temporización se desactiva este led.
5. Otra pulsación arranca nuevamente el proceso.
Nota Final: Toda la información generada estará en una carpeta, en el escritorio, con vuestro
nombre y apellidos. El programa debe estar comentado.
TIEMPO: 55'.
02 de Junio del 2014
Laboratorio de μP
Nota Final: Toda la información generada estará en una carpeta, en el escritorio, con vuestro
nombre y apellidos. El programa debe estar comentado.
TIEMPO: 55'.
21 de Mayo del 2014
Laboratorio de μP
Nota Final: Toda la información generada estará en una carpeta, en el escritorio, con vuestro
nombre y apellidos. El programa debe estar comentado.
TIEMPO: 55'.
03 de Abril del 2014
Laboratorio de μP
Nota Final: Toda la información generada estará en una carpeta, en el escritorio, con vuestro
nombre y apellidos. El programa debe estar comentado.
TIEMPO: 55'.