Está en la página 1de 2

1

INFORME DE PRÁCTICA DE LABORATORIO Versión 1.0


PROGRAMA DE INGENIERÍA MECATRÓNICA Periodo 2020-1

VISUALIZACIÓN DINÁMICA
Martínez Alejandro, Tamayo Vanesa
{u1803178, u1803301}@unimilitar.edu.co

numero a la vez, también se hizo uso de una interrupción


A lo largo de esta práctica se busca ejecutar un algoritmo en externa EXTICR[3] para la activación de un teclado
el sistema embebido STM32F esto sirve para el aprendizaje matricial, controlando los números y las operaciones
del estudiante que pretende reforzar y mejorar tanto el básicas, así como el igual, adicionalmente se configuraron
dominio de la configuración de registros básicos como las tres botones externos y tres leds, para identificar las
interrupciones básicas Systick y EXTI en el funciones trigonométricas.
microcontrolador STM. Para llevar a cabo estos objetivos se MÉTODO Y MATERIALES
pretende implementar un código que permita usar un teclado
matricial y displays dinámicos, para ser usados como una En esta práctica se realiza un algoritmo que busca usar dos
calculadora, con funciones básicas y algunas funciones tipos de interrupciones Systick y EXTIC, Esta usa conceptos
trigonométricas. vistos en la práctica anterior, los cuales se usan para poder
definir partes del programa.
INTRODUCCIÓN El algoritmo busca que se muestren en 12 displays de 7
segmentos cátodo común multiplexados, distintos números
Muchas aplicaciones en distintos sistemas, necesitan el referentes al elegido por el usuario por medio del teclado
desarrollo de tareas periódicas, tales como generar señales matricial, y además que se utilicen las interrupciones de
con una temporización exacta. Las interrupciones se pueden tiempo Systick que serán usadas para la visualización
dividir en externas (EXTI) e internas (Systick), estas hacen dinámica.
posible liberar espacio de la cpu ya que realizan
determinadas tareas solo cuando necesitan ser atendidas

Figura 1. Funcionamiento interrupción.

Este laboratorio tenía como objetivo el aprendizaje


relacionado con la visualización dinámica, por medio de
interrupciones, como el manejo de interrupciones externas
de manera matricial.

Las interrupciones pueden estar en 3 estados: inactiva,


pendiente y ejecutándose. Inactiva refiere a que no se tiene
registros del evento; pendiente refiere a que el evento
asociado no se ha producido, y finalmente ejecutándose,
hace referencia a que la rutina esta activa.

En esta práctica se realizó la visualización dinámica


haciendo uso de una interrupción interna de tipo systick,
activando y desactivando secuencialmente los habilitadores
de cada uno de los displays, para poder visualizar un
2
INFORME DE PRÁCTICA DE LABORATORIO Versión 1.0
PROGRAMA DE INGENIERÍA MECATRÓNICA Periodo 2020-1
entero, después en tipo flotante para obtener decimales, y por
ultimo operar y convertir nuevamente en un vector para ser
visualizado.
En esta práctica se logró entender la sincronización entre los
habilitadores y los datos de los segmentos, ya que en cuanto
los habilitadores se activarán de cero a doce, el numero
mostrado estaría al revés, por lo que fue necesario invertir la
sincronización empezando en doce y restando.
Si bien el teclado matricial se podría usar un polling
controlado por el systick y después compararlo en el exti con
un switch dentro de otro, esto nos generaría un tiempo mayor
de máquina, imperceptible para el ojo humano, pero en un
caso de necesitar toda la capacidad del microcontrolador no
es el método mas optimo, por lo cual se opto por recorrer el
teclado matricial solamente en el exti, es decir en cuanto el
usuario lo active, como ventaja de este proceso se recorrerá
a la velocidad configurada del microprocesador , ya que el
ciclo que se usa es controlado por los ciclos de maquina del
mismo.

CONCLUSIONES
● La optimización de un código nos ayuda a liberar
memoria del procesador, teniendo la posibilidad de
hacer procesos necesarios en otra parte del código.

● La visualización dinámica con displays


multiplexados, nos reduce el hardware, pero a su
vez aumenta el desarrollo de software, de igual
forma ocurre con el teclado matricial.

REFERENCIAS
[1]. Zhang Xiaodong, Zhang Jie, "Diseño e
implementación del sistema de control inteligente del
hogar basado en STM32", Conferencia China de Control
y Decisión (CCDC) 2018 , pp. 3023-3027, 2018.

[2]. C. Zheng, M. Dai, Z. Zhang and Y. Hu, "Intelligent


control system of medical shadowless lamps based on
STM32," 2016 23rd International Conference on
Figura 2. Diagrama de Flujo Mechatronics and Machine Vision in Practice (M2VIP),
Nanjing, 2016, pp. 1-4.
En la Fig.2 se muestra el Diagrama de flujo del programa, doi: 10.1109/M2VIP.2016.7827327
donde se puede apreciar que el programa hecho se divide en http://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnum
tres partes, la interrupción interna(systick), la interrupción ber=7827327&isnumber=7827253
externa(EXTI) y diversas funciones para el funcionamiento
optimo del programa, siendo cada una de esta para el manejo [3]. Universidad politécnica de Valencia.
de datos desde el ingreso por el usuario, mostrando, https://riunet.upv.es/bitstream/handle/10251/52758/Art
convirtiendo, operando. %C3%ADculo%20docente%20interrupciones%20AR
M%20Cortex-M.pdf?sequence=1
ANÁLISIS DE RESULTADOS

En el desarrollo de esta práctica se debieron realizar


diferentes pruebas, ya que al trabajar con visualización
dinámica, el numero ingresado estaba vectorizado, y las
operaciones matemáticas no son las mismas para vectores
que para numero enteros, por lo que en un principio fue
necesario hacer un tratamiento de datos, para convertir en

También podría gustarte