Este proyecto tambin puede ser desarrollado con los PIC: Ttulo Descripcin Contador de 0 a 99.
Desarrollar un contador desde 0 hasta 99 visualizando el estado de la cuenta en 2 displays de 7 segmentos mediante un codificado CD4511 .
Objetivo
Mostrar como utilizar registros, convertir datos a BCD y la manera de visualizar datos en displays de 7 segmen tos.
Procedimiento
Mdulos utilizados
Configuracin de puerto. Asignacin d e registro Evaluacin de registro Conversin a BCD Visualizacin en display de 7 segmentos con codificador
Para eso debemos ir al men Declaraci n/R egistros como se muestra en la imagen a la derecha.
Pgina 1/14
Para declarar un registro haga doble clic sobre uno de los registros de Usuario (de color verde). Estos registros son los que Ud. puede utilizar para guardar los datos que se requieran en el proyecto. Declare un registro llamado contador . A continuacin vamos a configurar el pue rto B. Para esto ingrese al rbol de herramientas como se muestra en la siguiente imagen.
Se presenta la pantalla de configuracin del puerto B. El puerto B lo utilizaremos para conectar los displays de 7 segmentos, por esto lo configuramos como sali da.
Pgina 2/14
Luego iniciamos el registro contador a 0. De esta manera nos aseguramos que al reiniciarse el microcontrolador, el contador siempre comi enza la cuenta desde 0. Para esto i ngres e al rbol de herramientas como lo muestra imagen de la derecha.
Se presenta la pantalla Asignar un valor a un Registro. Primero seleccione el registro al cual se le asignar un valor. Dado que queremos que el registro contador siempre inicie la cuenta en 0, seleccione la opcin un valor literal, que corresponde a un valor fijo. Luego seleccion e el formato del numero a ingresar, en este caso Decimal y por ltimo ingres e el valor que desea asignar al registro, en este caso 0. Por ltimo, si lo desea puede ingresar un comentario. En la siguiente imagen se muestran los datos ingresados .
Pgina 3/14
El siguiente paso consiste en visualizar el estado de la cuenta en los displays de 7 segmentos. Para esto, es necesario primero convertir el valor del contador a form ato BCD, es decir, que debemos descomponer el valor de la cuenta en Unidades y Decenas para luego mostrar cada valor en el display c orrespon diente. Para mayor informacin sobre visualizacin de datos en displays de 7 segmentos consulte el Anexo1Visualizacin de datos en displays de 7 segmentos. Para convertir un valor a BCD ingrese al men como se muestra en la imagen de la derecha : Se presenta la pantalla convertir registro a BCD. Primero seleccione el registro que desea convertir a BCD. En este caso, el registro Contador. Luego debe seleccionar los registros donde guardar el resultado de la conversin. Como an no hemos declarado los regis tros, presione el bot n nuevo correspondiente a las unidades. Se presenta la pantalla de declaracin de registros y declare el registro Unidad.
Al volver de la pantalla de declaracin de registros, el registro recin declarado ha sido seleccionado en la lista automticamente. Proceda de la misma manera para el registro Decena.
Pgina 4/14
Una vez que ya ha realizado la conversin a BCD, esta en condiciones de visualizar los datos en los displays de 7 segmentos. Vamos a utilizar un codificador CD4511 para ocupar menos cantidad de pines del microcontrolador.
Para esto ingrese al rbol de herramientas como se muestra en la imagen de la derecha: Se presenta la pantalla de visualizacin de displays de 7 segmentos con codificador CD4511.
Pgina 5/14
Luego debe seleccionar la cantidad de dgitos a utilizar, en este caso seleccione 2 dgitos. Al seleccionar la cantidad de d gitos a utilizar, se muestra un mensaje que le indica como seleccionar los valores de mostrar en cada display.
El proceso de visualizacin de datos en los displays consiste en enviar el valor de las unidades, habilitar el display correspondiente a las unidades y apagar el display de las decenas, mantener el display de las unidades encendido durante un breve periodo de tiempo (algunos microsegundos), luego se apaga el display correspondiente a las unidades y se enva el dato correspondiente a la decenas, se habilita el display de las decenas y se mantiene encendido durante algunos microsegundos.
Este proceso debe repetirse muchas veces y se produce a gran velocidad. De esta manera se genera la ilusin ptica de estar visualizando el valor representado por los 2 dgitos. El campo repeticiones contiene la cantidad de veces que el proceso de multiplexado se repite. El valor por defecto es de 1000 repeticiones. Si el valor de las repeticiones aumenta, mayor ser el tiempo que el micro permanecer mostrando el dato antes de seguir con la ejecucin del resto del programa.
En este caso, si modifica el valor de las repeticiones, se vara la velocidad del conteo.
Pgina 6/14
Observe que Niple slo presenta en la lista los pines que estn configurados como Salida. De esta mane ra se evitan los errores por seleccionar pines configurados como Entrada o no configurados. Seleccione los pines B3 y B2 para las unidades y las decenas respectivamente.
Por ltimo, debe seleccionar los pines correspondientes al bus de datos por el cual se enva el dato a v isuali zar al codificador CD4511. Para este ejemplo seleccione los pines B4 al B7 como lo muestra la siguiente imagen.
Pgina 7/14
Por ltimo puede consultar e imprimir el esquema de conexin de la configuracin que ha seleccionado.
Pgina 8/14
Por ltimo debe sumarle 1 al registro Contador. Para esto ingrese al rbol de herramientas como se muestra en la imagen de la de recha. Se presenta la pantalla Matemticas Adicin - 8 Bis. El campo sintaxis presenta la manera de interpretar los datos solicitados.
En el campo Sumando 1 seleccione el registro contador y en el campo Sumando 2 seleccione la opcin un literal, formato decimal, valor 1.
Por ltimo, seleccione el registro donde des ea guardar el resultado del c lculo, en este caso, seleccione la opcin en otro registro, registro Contador. Esto significa que el registro Contador ser sobrescrito con el resultado del clculo. La siguiente imagen muestra como debera quedar la pan talla.
Pgina 9/14
Al presionar el botn Ingresar, se inserta el bloque en el diagrama de flujo el cual debera quedar como lo muestra la siguiente imagen.
Dado que el presente proyecto slo cuenta hasta 99, una vez realizado el incremento del registro contador, debemos controlar que el valor del mismo no supere el nmero 99.
Pgina 10/1 4
El bloque que acabamos de insertar puede interpretase como la formulacin de la siguiente pregunta: El registro Co ntador , es mayor que el valor decimal 99?
Pgina 11/1 4
Continuando con el bloque de evaluacin de registro, si el valor no es mayor a 99, entonces no se debe reiniciar la cuenta, sino que debe volver al bloque de conversin a BCD para c omenzar el ciclo nuevamente. Para esto genere un vnculo Fl echa desde el bloque de evaluacin hacia el bloque de conversin a BCD como se muestra en la siguiente imagen.
Para terminar con este proyecto debemos cerrar el ciclo por medio de un vnculo (flecha) desde el bloque de asignacin del registro contador a 0 hacia el bloque de conversin a BCD. De esta manera, el microcontrolador ejecuta todo el proceso nuevame nte con el nuevo valor de la cue nta.
Pgina 12/1 4
Por ltimo genere el cdigo Assembler, compile el cdigo Assembler y grabe el microcontrolador.
Esquema electrnico
Pgina 13/1 4
Pgina 14/1 4