ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Informe 1 - Dominio De Pines IN-OUT


Enviado por   •  16 de Agosto de 2021  •  Informes  •  1.758 Palabras (8 Páginas)  •  131 Visitas

Página 1 de 8

INFORME DE PRÁCTICA DE LABORATORIO                                                 Versión 1.0[pic 1]

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

[pic 2]

Dominio de pines IN/OUT

Hernández Jonathan, Ortiz Freddy, y Vergara Kevin

{est.jonathan.herna, est.freddy.ortiz, y est.kevin.vergara}@unimilitar.edu.co
Profesor: Martínez Alejandro

Resumen—En el presente informe, encontraremos el desarrollo de un código para la tarjeta de desarrollo STM32F746ZGT6 para en conteo ascendente y descendente en tres sistemas de numeración; decimal, octal y hexadecimal. Este conteo es posteriormente mostrado en un display 7 segmentos, y a su vez 8 leds se encienden en simultaneo dependiendo de si es ascendente o descendente.

Palabras clave—STM32F746ZGTx, SysTick, Interrupción, display.

  1. Introducción

El presente informe tiene como objetivo mostrar el funcionamiento de la tarjeta de desarrollo, de manera que pueda ejecutar las instrucciones propuestas tales como generar un conteo ascendente y descendente mosteado por una secuencia de leds, y, a su vez, por un display 7 segmentos, de manera que el usuario sea capaz de, por medio de un pulsador, pueda seleccionar el tipo de base en la que desea realizar el conteo y la dirección del mismo.

  1. Marco teórico

Registros

  • Reloj de registros periféricos (AHB1ENR):

Se activa el reloj de los puertos que se necesiten realizando la asignación a través de un código hexadecimal.

[pic 3]

Fig. 1. tabla de registros de periféricos.[1]

Donde las casillas que tienen nombre GPIOxEN se refieren a el encendido del reloj de pines del puerto x. [1]

[pic 4]

Fig. 2. ejemplo habilitación de puerto b.

  • Modo de registro del puerto (MODER):

Este registro nos permite indicar cuales de los pines van a estar en modo de entrada (0 0), salida (0 1), función alternante (1 0) o análogo (1 1); donde cada pin va a tener dos bits para realizar la asignación y en el momento de hacer la asignación en el código de igual forma se separa cada 4 bits. [2]

[pic 5]

Fig. 3. tabla de registro MODER.[2]

[pic 6]

Fig. 4. ejemplo asignación registro MODER.

  • Registro de tipo de salida (OTYPER):

Este registro nos permite activar alguna de las configuraciones que nos ofrece la tarjeta de desarrollo las cuales en el caso de la stm32f746zg nos ofrece configuraciones de push-pull (0) y open-drain (1); y siguiendo la asignación observada en los registros anteriores se separa cada 4 bits. [3]

[pic 7]

Fig. 5. tabla de asignación registro OTYPER.[3]

[pic 8]

Fig. 6. ejemplo asignación de registro OTYPER.

  • Registro de velocidad de pines (OSPEEDR):

Este registro nos permite asignar la velocidad que van a manejar los pines de cada puerto teniendo velocidad baja (0 0), velocidad media (0 1), velocidad alta (1 0) y velocidad muy alta (1 1). [4]

[pic 9]

Fig. 7. tabla de registro OSPEEDR.[4]

[pic 10]

Fig. 8. ejemplo declaracion del registro.

  • Registro de pull-up y pull/down (PUPDR):

Este registro nos permite activar algunas configuraciones de unas resistencias internas que tiene la tarjeta que en el caso de la stm32f746zg seria configuración sin resistencia pull-up ni pull-down (0 0), con resistencia de pull-up (0 1), con resistencia pull-down(1 0) y un caso reservado (1 1); de este último caso no se debería utilizar. [5]

[pic 11]

Fig. 9. Tabla de registro PUPDR.[5]

[pic 12]

Fig. 10. Ejemplo declaración del registro.

  • Registro de datos de entrada (IDR):

Es un registro que guarda los datos que se reciben en cada pin de entrada; este pin solo puede ser leído.

[pic 13]

Fig. 11. Ejemplo lectura el registro IDR

  • Registro de datos de salida (ODR):

Es un registro que guarda los datos que se van a enviar de salida de algún pin, este registro puede ser escrito y leído.

[pic 14]

Fig. 12. Ejemplo asignación de registro ODR.

  1. COMPETENCIAS A DESARROLLAR

  • Obtener habilidades en el uso de la tarjeta de desarrollo STM32F746ZGT6 y el uso de sus puertos y pines en configuración de entrada o salida
  • Desarrollar habilidades de programación de software orientado a una implementación física.
  • Mejorar la comprensión de los registros encargados de controlar los puertos, y sus respectivas configuraciones para obtener así la respuesta deseada.
  1. Desarrollo de la práctica

En esta práctica utilizamos los puertos A, B, C y D, el puerto A como salida del arreglo de leds, el puerto B como entrada del pulsador externo, el puerto C como entrada del pulsador de usuario de la tarjeta, y por último el puerto D como salidas para encender el display 7 segmentos. Adicionalmente un pin de tierra y un pin de 5V. El montaje lo podemos ver en Fig. 13.

[pic 15]

Fig. 13. Montaje físico del laboratorio

En el programa Keil µVison 5, se declararon las librerías stdio.h para programar en lenguaje C++, y la STM32Fxx.h para poder programar la tarjeta de desarrollo STM32F746ZGT6. Después las variables globales que permitirán una facilidad a la hora de desarrollar el código, entre ellas, la visualización que es la que nos permite elegir entre ascendente y descendente o el vector display que nos permite encender los segmentos del display dependiendo del número o letra a mostrar. Esto lo podemos ver en Fig. 14.

...

Descargar como (para miembros actualizados)  txt (10 Kb)   pdf (2 Mb)   docx (2 Mb)  
Leer 7 páginas más »
Disponible sólo en Clubensayos.com