miércoles, 3 de marzo de 2021

Microcontroladores AVR (Microchip) – Programando en ASM (PART003)

Hola nuevamente a Artes Electrónicas Pachani, acá iré explicando mis experiencias con el microcontrolador Atmega32A en el entorno AvrStudio4 y Proteus v8.2, el objetivo sera aprender a programar en lenguaje ensamblador.

Manejo de bits retardos .




Manejo de 7 segmentos

En el anterior articulo aprendimos acerca de unas instrucciones de salto condicionando el concepto basico de como realizar los tiempos de retardo, ahora veremos otras aplicaciones para poder realizar las

aplicaciones de como usar los bits para manejar leds luego dispositivos como 7 segmentos los cuales son de gran utilidad.

7 Segmentos 


Es un conjunto de leds de modo que bien organizados puede mostrar caracteres que nosotros interpretamos como texto e información.

Programa 05. Realizar un programa que muestre caracteres desde 0 a F por el puerto B del microcontrolador Atmega32 introducido por el puertoA con la ayuda de switchs.

Solución: Para este programa vamos a aprender de manera segura y concreta como tratar los datos para manejar e interpretarlos de modo que podamos visualizar mensajes por medio de 7 Segmentos.

La siguiente tabla ira describiendo la osicion de encendido de un led para conformar el caracter:


Tengamos en mente que para conformar el caracter F por ejemplo debemos de energisar los led: a, e, f, g, es decir a nuestros ojos el carácter F es básicamente un grupo de leds encendidos de manera organizada, con esa logiaca podemos organizar otro tipo de caracteres de manera similar.

Una vez tenemos la tabla de organización de los led podemos generar los caracteres de manera secuenciada y con ello podemos enviar mensajes visuales de modo que podemos aplicarlos a contadores incluso tableros de visualización de mensajes para un semáforo, un banco y otros donde visualicemos estos mensajes.

Trabajando en Proteus


Partimos desde el circuito necesario para poder realizar la simulación correspondiente:


Ahora nos vamos a la parte de edición de código fuente para poder iniciar la programación de nuestro programa.


Partimos de nuestra plantilla e iremos  colocando los datos mas importantes como ser los datos del autor o en mi caso la información recopilada para el presente ejercicio, luego nos dedicamos a relizar la configuracion de los puertos como entrada o bien salida de datos según sea necesario.


Luego viene la parte de cargar un puntero para poder hacer uso de tablas para poder mandar la información de los caracteres que queremos mostrar 


El puntero Z nos sera de gran utilidad para mostrar los caracteres por medio del puerto B,  primero cargamos la tabla al puntero Z, ahora nos toca recuperar un dato del puerto A y luego enmascaro el valor recuperado por el puerto A para poder trabajar con ese dato cargandolo al nible bajo del puntero Z y cargamos adicionalmente hacemos con ZH nible alto, recordemos que el dato recuperado por R17 representa un valor de la tabla de Display7seg, y gracias a ello veremos en el display de 7 segmento la representacion de cada caracter que cargamos previamente antes por medio del puerto A.

  

Acá vemos la representación del carácter 2 y su representación en binario, notemos que un bit puede manipular un dato de tal manera que podemos manejar información representada y operar con dichos valores, mas adelante realizar operaciones y otro tipo de cálculos los cuales nos puede ser de gran utilidad.

 Algunas observaciones

Tenemos que tener en mente lo siguientes: 

  1.- En esta entrega hemos trabajado básicamente a programar dentro del IDE Proteus para poder realizar el manejo de 7 segmentos y con ello  tener la posibilidad de representar caracteres e información para un contador por ejemplo.

 2.- La utilidad de manejar este tipo de dispositivos como es el 7 segmentos es de gran utilidad por su tamaño y también porque son de las primeras herramientas para mas adelante para mandar información a la distancia .

Al final

 Todo el material que aquí se encuentra es de mi autoría, ademas de una recopilación de información de Internet de recursos que se pueden descargar como libros en pdf los cuales son usados como referencia para los ejercicios y los ejemplos los cuales se encuentran a disposición en Internet. Cualquier consulta la puedes realizar en la parte de comentarios.

Bibliografia

1.- AVR Microcontroller and Embedded Systems using assembly ; Publicado el año 2011;[Fecha de consulta 1 de enero de 2021], pagina de donde puedes descargar (https://docs.google.com/file/d/0B5_mAdKvdKTlQlBPS2pwbE9ONFE/edit).


Software utilizados:

1.- AvrStudio4 descargado de la pagina oficial de Microchip. Ahi puedes descargar (https://www.microchip.com/mplab/avr-support/avr-and-sam-downloads-archive)

2.- Proteus v 8.2 , simulado en linuxMint 19,4 por medio del programa WinePero en versiones soporta todas las versiones Guindows.

3.- Editor de texto libre, se puede descargar de Internet, es un editor GNU Linux.

4.- OpenProg, programador de microcontroladores PIC-AVR. Ahi puedes econtrar el instaldor disponible tanto para Linux y Windos (https://sourceforge.net/projects/openprogrammer/)


Hardware utilizados:

1.- Placa de Programación basado en los esquemas de OpenProg.

2.- Placa entrenadora desarrollado en base al microcontrolador Pic 18F4550.

3.- Placas modulo de leds , botoneras e interruptores.




No hay comentarios.:

Publicar un comentario

Hola, con tu comentario puedes aportar para mejorar la calidad de mi trabajo

Microcontroladores PIC – Curso de Programación en MikroC (Parte 6 )

Microcontroladores PIC – Curso de Programación en MikroC Bienvenido nuevamente a los tutoriales de Artes Electrónicas Pachani , con...