Haz una pregunta
  Foros de Electrónica » Diseño digital » Circuitos lógicos combinacionales y secuenciales
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

05/07/2013 #1


Mostrar salida binaria (0 a 512) en display de 7 segmentos
Hola como estan.

Tengo un dipswich con el cula genero un numero binario de 0 a 512, tengo ganas de que el resultado me lo muestre en en 3 diplays de 7 segementos, Mi preguntas son las siguientes: Hay algun integrado que se pueda poner entre el dipswich y los display ? o son tantas las posiciones que tengo que mostrar que no me alcanza ningun integrado...?

Si no la otra seria programar algun micro no?...

Saludos..

Muchas gracias a todos... ...
05/07/2013 #2

Avatar de Gudino Roberto duberlin

Amigo, la ultima opcion que propones, parece ser la mas simple.
05/07/2013 #3


Hola djkerman

También se podría con unas memorias.
Normalmente son de 8 BIT’s de salida así que para 3 Cifras se requerirían 2 memorias.
Los DIPSWITCH’s apuntarían a una dirección y por el BUS de datos sacas los 12 BIT’s, 4 para cada Cifra, lo decodificas y mandas a lo Display’s

saludos
a sus ordenes
06/07/2013 #4

Avatar de Scooter

Con una sola memoria , un contador y alguna cosilla mas se puede multiplexar
06/07/2013 #5

Avatar de palurdo

La solución de Scooter no está nada mal. Por ejemplo una memoria eprom tipo 27C16 grabada convenientemente con los códigos de los 7 segmentos por cada dígito + el punto, un 4017 que cuente 3 cuentas antes de resetearse, que Q0 active A8 de la eprom y display1, Q1 active A9 y display 2, y Q2 active display 3 (Q3 a reset del 4017). la entrada de reloj del 4017 conectada a un 555 de tren de impulsos al menos a 200Hz.

De todas formas, si al final tiras por la solución fácil y buscas implementarlo con un microcontrolador, aquí tienes un trozo de código que implementa una conversión 9 bits a 3 dígitos BCD.

Código:
CONVERTIR
		MOVLW	0x08
		MOVWF 	CONTADOR
BUCLE
		MOVF	BCD_0,W
		ANDLW	0x0F
		SUBLW	0x04
		MOVLW   0x03
		BTFSS	STATUS,C
		ADDWF	BCD_0,F
		MOVF	BCD_0,W
		ANDLW	0xF0
		SUBLW	0x40
		MOVLW   0x30
		BTFSS STATUS,C
		ADDWF	BCD_0,F
		RLF	  BIN_0,F
		RLF	  BCD_0,F
		RLF	  BCD_1,F
		DECFSZ CONTADOR,F
		GOTO 	BUCLE
		RETURN
Como entrada a la función debe de ir, el bit MSB del número en el bit 0 de BCD_0, el resto de bits de BCD_0 tiene que estar a 0, y los ocho bits restantes en BIN_0. BCD_1 tiene que estar a 0.

La salida es BCD_0 contiene los dos dígitos bajos del número en BCD, y BCD_1 contiene 0N donde N es el dígito del número convertido en la parte alta (que sólo puede valer de 0 a 5). BIN_0 se destruye.

Así pues, unos ejemplos:

Numero 0x1FF:
Entrada: BIN_0=0xFF, BCD_0=0x1, BCD_1=0
Salida: BCD_0=0x11, BCD_1=0x05

Numero 0x0FF:
Entrada: BIN_0=0xFF, BCD_0=0x0, BCD_1=0
Salida: BCD_0=0x55, BCD_1=0x02

Numero 0x100:
Entrada: BIN_0=0x00, BCD_0=0x1, BCD_1=0
Salida: BCD_0=0x56, BCD_1=0x02

Numero 0x050:
Entrada: BIN_0=0x50, BCD_0=0x0, BCD_1=0
Salida: BCD_0=0x80, BCD_1=0x00

El convertidor es muy sencillo ya que hace en un bucle de 8 pasos el algoritmo double dabble de conversión.
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Buscar más temas sobre:
Lupa Circuitos lógicos combinacionales y secuenciales

Compuertas, flips flops, registros, PLDs, codificadores, contadores, multiplexores, ...

Cerrar
Foros de Electrónica » Diseño digital » Circuitos lógicos combinacionales y secuenciales

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.