Está en la página 1de 3

INFORME DE PRÁCTICA DE LABORATORIO Versión 1.

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

Manejo de pines IN/OUT


Amaya Useche Nicolas, Alarcón Machete Juan David
{u1803463, 1803417}@unimilitar.edu.co
Profesora: Vargas Luisa Fernanda
 Keil uVision: software con entorno de tiempo de ejecución,
para el desarrollo y edición del código fuente, para circuitos
Resumen—Esta práctica se enfoca en el desarrollo de un sistema integrados como microcontroladores y microprocesadores,
embebido en el software Keil uVision, para el manejo de la tarjeta permite el diseño múltiple de programas en lenguaje c, por
de desarrollo programable STM32F746, con el fin de implementar separado o en conjunto.
un contador ascendente y descendente que aumente o disminuya Este software permite comprobar, ejecutar y optimizar el
el conteo en decimal, hexadecimal y octal, visualizado en un código, y visibilidad completa de los periféricos en conexión
display 7 segmentos cátodo común, seleccionando la base del
conteo por un pulsador , además de esto dependiendo si el conteo
con la tarjeta de desarrollo. [3]
aumenta o disminuye, el sentido de rotación de un bit representado Lenguaje C: lenguaje para programadores, con amplia
por 8 leds debe tener una dirección especifica en ambos sentidos. flexibilidad de programación, permite la comprobación de
errores en bajo nivel; es estructurado, pero no por bloques.
Palabras clave—microcontrolador, sistema embebido, Keil Se ubica por funciones, con tareas especificas que se pueden
uVision, programación, C++, conteo. invocar dentro de una función main o principal, donde se
desarrolla todo el programa. [4]

I. INTRODUCCIÓN II. DESARROLLO DE LA PRÁCTICA

E N este laboratorio, se implementan acciones en


programación haciendo uso de Keil, como contadores
ascendentes y descendentes, por medio de ciclos for y
Para el desarrollo de esta práctica, se realizan diferentes
códigos, dependiendo de los numerales establecidos en la guía
de laboratorio;
condicionales if. Se debe tener bases de programación en C, y El primer numeral solicitaba la implementación de un
principios de declaración de pines y asignación de entrada y sistema embebido, el cual pudiera reflejar la rotación de un bit,
salida de los mismos, el conocimiento de conversión d bases y en ambos sentidos, para cambiar el sentido de rotación, se hace
de los conteos en los diferentes tipos e bases. Además de una uso de un pulsador.
percepción espacial completa de la organización de pines En cuanto a la programación en C++, realizada en el software
presente en la tarjeta (microcontrolador) programable. Keil uVision, primero se declararon las variables necesarias
tales como “n”, que llevará el conteo del número de vez que es
A. Marco teórico
oprimido el pulsador, los arreglos para el conteo ascendente y
Sistemas embebidos: son sistemas operativos diseñados descendente de un led, para esto se refleja en binario la
únicamente con el fin de ser utilizados por microcontroladores combinatoria rotacional de un 1 lógico en las salidas que se
y microprocesadores, sistemas completamente sistematizados, conectan a los leds, posteriormente se habilitan los puertos B y
que cumplen con tareas específicas. Este tipo de desarrollos
C, y se configuran estos mismos, dentro de las primeras líneas
usualmente se crean en lenguajes c++.
de main, el puerto B se configura como salidas de uso general
Pueden ser grande desarrollos, que implementan periféricos
como actuadores, motores, sensores y módulos; o pequeños, (10), y el puerto C en el cual se encuentra el pulsador, se define
que realizan acciones específicas. [1] como entrada (00), posteriormente se crea un bucle infinito
Microcontrolador: circuito integrado con CPU interna, donde se realizara toda la secuencia de visualización; por medio
memorias y puertos integrados, interconectados por buses de de if-else, se declaran diferentes opciones dependiendo de si el
datos que relaciona estas diferentes partes bidireccionalmente. pulsador esta presionado, y del numero que este guardado en la
Puede denominarse como unos microcomputadores, que variable que lleva el conteo de numero de veces que se ha
permite ejecutar acciones específicas, pero estos programas presionado dicho pulsador.
deben ser implementados en binario, lenguaje en el cual habla
este microcontrolador. [2] Cuando el pulsador es presionado por primera vez por medio
Las especificaciones de cada microcontrolador varían, de un ciclo for, recorrerá el arreglo de los leds en conteo
dependiendo del fabricante que las realiza. ascendente de lo contrario si es presionado el otro pulsador, el
ciclo for, enviara como salida a los puertos el arreglo
descendente, y se visualizará la rotación en sentido inverso

El presente documento corresponde a un informe de práctica de laboratorio


de Electrónica presentado en la Universidad Militar Nueva Granada durante el
periodo 2019-2.
INFORME DE PRÁCTICA DE LABORATORIO Versión 1.0
PROGRAMA DE INGENIERÍA MECATRÓNICA
Periodo 2020-1

microcontrolador. (ver figura 1)

Para el segundo numeral se solicitaba el desarrollo de un IV-A. Presentación de figuras


sistema embebido que cada vez que un pulsador fuera
presionado, el conteo visualizado en un display cambiara de
base, para este numeral, primero se declaran variables como n
que actuara como contador del número de veces presionado una
un pulsador, los arreglos de la codificación de unos y ceros para
encender cada segmento del display y formar cada número y la
variable de time para el delay de cada transición. Un arreglo por
cada base. Posteriormente se declaran y se activa el clock de la
salida del puerto D y el C, y se configuran como entradas de uso
general (10) y salidas (00) respectivamente.
Por medio de varias condiciones if-else se representa cada
caso posible dependiendo de si el pulsador este presionado, y
que numero de veces este ha sido presionado.

Cuando el pulsador es presionado por primera vez por medio


de un ciclo for, recorrerá el arreglo de los números en
hexadecimal, y los enviará a los puertos de salida en D,
consecuente a cada número mostrado por medio de otro ciclo
for, se agrega un delay con el valor especificado en la variable
time, cuando se cumple el ciclo for, la variable n aumenta en 1.

Del mismo modo cuando se presiona de nuevo el pulsador,


el ciclo for ahora recorre el arreglo de los números en base octal,
y cuando se vuelve a presiona el pulsador se recorre el arreglo
de los números en base decimal, y en este caso el contador de Figura 1. Montaje primer numeral.
veces pulsadas, se resetea en 0. Con el fin que al volver a ser
presionado repita el primer ciclo y cuente de nuevo en
hexadecimal.

Y el ultimo numeral solicitaba un contador en una base


específica, que cambiara de sentido de conteo cada vez que un
pulsador era presionado, para esto, se declara el arreglo de
numero en base decimal, una variable denominada time, que se
usara en los delay y una variable que llevara el conteo de veces
que ha sido presionado el pulsador.

Se declaran los puertos que se van a habilitar, en este caso c


y D, y se asignan como entrada y salida respectivamente.

Por medio de condiciones if-else se realizan los diferentes


casos dependiendo si el pulsado esta presionado y que número
de veces ha sido presionado, si se presiona por primera vez, el
ciclo for dentro de esta condición, recorrerá el arreglo de
izquierda a derecha y se visualizara en el display como un
conteo ascendente; de los contrario cuando se presiona de
nuevo, el arreglo será recorrido en el otro sentido y se
visualizara en el display como un conteo descendente.

Para la implementación se hace uso adicional, de resistencias Figura 2. Montaje segundo numeral.
antes de cada les, y antes de cada pin del display, para evitar un
consumo de corriente elevado. Y que afecte al
INFORME DE PRÁCTICA DE LABORATORIO Versión 1.0
PROGRAMA DE INGENIERÍA MECATRÓNICA
Periodo 2020-1

varios conflictos, tanto en el hardware, como en


el desarrollo del software.

Figura 2. Montaje tercer numeral.

IV-B. Referencias bibliográficas

[1 azulweb, «sistemas embebidos,» 2015 8 24. [En línea].


] Available: https://www.azulweb.net/que-son-los-sistemas-
embebidos/. [Último acceso: 2020 02 9].
[2 Electronica Estudio, «Electronica Estudio,» [En línea].
] Available: https://www.electronicaestudio.com/que-es-un-
microcontrolador/. [Último acceso: 2020 02 9].
[3 ARM Keil, «Keil,» [En línea]. Available:
] http://www2.keil.com/mdk5/uvision/. [Último acceso:
2020 02 9].
[4 E. V. Bonet, «Lenguaje C,» [En línea]. Available:
] https://informatica.uv.es/estguia/ATD/apuntes/laboratorio/
Lenguaje-C.pdf. [Último acceso: 2020 02 9].

III. CONCLUSIONES

 El desarrollo de cada numeral fue exitoso, cada


desarrollo cumple con las especificaciones y no
presenta errores ni de programación ni de
implementación.
 Por medio de ciclos con un numero determinado
de veces recorridas se pueden leer arreglos en
ambos sentidos, todo depende si la variable que
realiza el for, aumenta o disminuye y que rango
de valores permite leer.
 El desarrollo tomo relativamente mas del tiempo
esperado puesto que la implementación sufrió

También podría gustarte