Está en la página 1de 8

Manual de Prácticas

Microprocesadores y Microcontroladores

Práctica 5

Puertos E/S en lenguaje


ensamblador

Nombre completo del alumno Firma


González Méndez Luis Enrique

N° de brigada: Fecha de elaboración: 13/10/23 Grupo: 9


Manual de Prácticas
Microprocesadores y Microcontroladores

Objetivos de aprendizaje
• Que el estudiante aprenda a utilizar el lenguaje ensamblador y las características
básicas del ensamblador propio de la plataforma de desarrollo.
• Que el estudiante implemente un algoritmo matemático simple en lenguaje
ensamblador
Material y equipo

Tarjeta de desarrollo, computadora con ambiente Code Composer Studio, set de


instrucciones (Cortex-M3/M4F Instruction Set TECHNICAL USER'S MANUAL) y hojas
de especificaciones del microcontrolador (Tiva™ TM4C1294NCPDT Microcontroller
DATA SHEET)
Trabajo previo

Estudiar el apartado 2.8 de las hojas de especificaciones del microcontrolador (Tiva™


TM4C1294NCPDT Microcontroller DATA SHEET).
A partir de la declaración de un problema especificado por el profesor, elaborar un
diagrama de flujo.
Desarrollo

Desarrollar el programa correspondiente, ensamblarlo, cargarlo y verificar su


funcionamiento en la tarjeta de desarrollo.

Conclusiones
El estudiante debe generar, con carácter obligatorio, sus propias conclusiones,
haciendo énfasis en los objetivos planteados al inicio de la práctica.
Manual de Prácticas
Microprocesadores y Microcontroladores

PRACTICA 5

PUERTOS DE E/S EN LENGUAJE ENSAMBLADOR


Objetivo
Que el alumno se familiarice con la programación interna al Microcontrolador
mediante dos programas, parte 5A y parte 5B, ambos contribuyen al desarrollo de
habilidades para el manejo y entendimiento del lenguaje ensamblador.

TRABAJO PREVIO
Estudiaron Apuntadores, modos de direccionamiento y diagramas de flujo

TRABAJO DE LABORATORIO PARTE 5A

Desarrolle un programa que señalice en código binario la cuenta 0,1,2,3,0,1,2,3,etc,


en los LEDS D2 yD1 del puerto "N" con la operación consecutiva del int. SW1 del
puerto "J" en un ciclo infinito y en lenguaje ensamblador.

Para ver los resultados, no deben correr el programa paso a paso, se debe correr
plenamente (ver símbolo en la barra superior) y aplicar los comandos, en este caso, el
cierre del interruptor y ver la señalización

Para el reporte favor de incluir las capturas en pantalla de los resultados obtenidos

No olviden primero el "ritual" de siempre, lo que no cambia, después, declarar puerto


y relojes, definir tiempos, habilitar relojes y programar puertos.

Recuerden que una cosa es declarar y otra es habilitar (ver apuntes enviados)
Manual de Prácticas
Microprocesadores y Microcontroladores

Figura1; Código
Manual de Prácticas
Microprocesadores y Microcontroladores

Figura 2; resultado de la secuencia


CUESTIONARIO
¿Qué es procesamiento en tiempo real?
El procesamiento de datos en tiempo real es la ejecución de datos en un período de
tiempo corto, que proporciona una salida casi instantánea. El procesamiento se
realiza a medida que se ingresan los datos, por lo que necesita un flujo continuo de
datos de entrada para proporcionar una salida continua. Buenos ejemplos de
sistemas de procesamiento de datos en tiempo real son los cajeros automáticos
bancarios, los sistemas de control de tráfico y los sistemas informáticos modernos,
como la PC y los dispositivos móviles. Por el contrario, un sistema de procesamiento
de datos por lotes recopila datos y luego procesa todos los datos en masa en un
momento posterior, lo que también significa que la salida se recibe en un momento
posterior.

¿Qué problema se presenta al cierre y apertura de SW1?


Debido a que es un mecanismo que abre/cierra el circuito de l tarjeta cada vez que
hagamos esta operación ocurre un rebote de los datos siendo procesados, esto
puede verse cuando la secuencia tiene momentos en que sale otra codificación
binaria fuera de su tiempo descrito de la cuenta.

¿Este programa trabaja en tiempo real?


En mi caso sí, porque le puse un tiempo de 800000 lo que la lactancia es muy
pequeña y por eso puedo decir que trabaja en tiempo real.

TRABAJO DE LABORATORIO PARTE 51B


Desarrolle un programa que cambie el estado del LED D2 del puerto "N" en modo
Toggle cada vez que se cierra el int. SW1 del puerto "J"

"toggle" significa que se alterna el estado de la señalización cada vez que se cierra el
int. SW1, de modo que al cierre se prende, al segundo cierre se apaga y así
sucesivamente.

"Cada vez que se cierra el interruptor" significa que el cambio de estado es al cierre,
es decir, se tiene que verificar si el int. SW1 sigue cerrado, y hasta que se abra,
esperar el próximo cierre para dar el cambio de estado.

Una instrucción útil para la alternancia es la operación "OR" exclusiva en el DATA de


puerto.
Manual de Prácticas
Microprocesadores y Microcontroladores

Para ver los resultados, no deben correr el programa paso a paso, se debe correr
plenamente (ver símbolo en la barra superior) y aplicar los comandos, en este caso, el
cierre del interruptor y ver la señalización.
Para el reporte favor de incluir las capturas en pantalla de los resultados obtenidos

Figura 1; programa
Manual de Prácticas
Microprocesadores y Microcontroladores

Figura 2; resultados

CUESTIONARIO
Modifique el programa para que cambie el estado de los dos LED'S D1 y D2 del
puerto "N", es decir los dos se prendan y apaguen a la vez en lugar de sólo el LED D2
Mencione una aplicación real para el programa;
Puede aplicarse esto en la industria automotriz, por ejemplo, cuando se ocupa contar
los procedimientos que lleva un carro para pitarse, y cuando ya esta listo que prendan
los dos leds, los cuales muestran que ya se acabo el proceso y que puede seguir con
lo demás
CONCLUSIONES; pude concluir que esta actividad fue muy útil para entender de
mejor manera como funciona un puerto y los SW, también me quedo mas claro como
se trabaja en lenguaje ensamblador la inicialización d ellos puertos y como se puede
aplicar en los proyectos que conlleva un microprocesador, también me pareció
bastante importante, que al momento de cambiar el valor de tiempo se puede ver que
es un procesamiento en tiempo real, cuando sabiendo que aun así hay lactancia en el
procesamiento.
Manual de Prácticas
Microprocesadores y Microcontroladores

También podría gustarte