# como hacer una tabla de verdad para una eprom 27c512



## axl ska (Sep 24, 2012)

necesito saber como hacer una tabla de verdad para la eprom 27512


----------



## Melghost (Sep 24, 2012)

Pues... en el momento que programes la tabla en la EPROM, ya será de verdad. Hasta entonces, sólo será imaginaria... 

¿A qué te refieres exactamente con hacer una tabla de verdad?


----------



## Fogonazo (Sep 24, 2012)

axl ska dijo:


> necesito saber como hacer una tabla de verdad para la eprom 27512



  

La parte de datos será el producto de tu programación, así que puede contener "Cualquier cosa"

Y la parte direcciones es una secuencia de cuenta binaria.


----------



## Scooter (Sep 24, 2012)

Si quieres implementar una función lógica en una memoria basta con programar directamente la salida de la función sin mas.


----------



## Meta (Sep 25, 2012)

axl ska dijo:


> necesito saber como hacer una tabla de verdad para la eprom 27512



Ejemplo 1:

```
;************************************* Tablas_03.asm ************************************
;
;    ===================================================================
;      Del libro "MICROCONTROLADOR PIC16F84. DESARROLLO DE PROYECTOS"
;      E. Palacios, F. Remiro y L. López.        www.pic16f84a.com
;       Editorial Ra-Ma.  www.ra-ma.es
;    ===================================================================
;
; Implementar una tabla de la verdad mediante el manejo de tablas grabadas en ROM. Por
; ejemplo, la tabla será de 3 entradas y 6 salidas:
; 
;         C  B  A  | S5  S4  S3  S2  S1  S0
;         -----------|---------------------------
;         0   0   0   |   0    0    1    0    1    0    ; (Configuración 0).
;         0   0   1   |   0    0    1    0    0    1    ; (Configuración 1).
;         0   1   0   |   1    0    0    0    1    1    ; (Configuración 2).
;         0   1   1   |   0    0    1    1    1    1    ; (Configuración 3).
;         1   0   0   |   1    0    0    0    0    0    ; (Configuración 4).
;         1   0   1   |   0    0    0    1    1    1    ; (Configuración 5).
;         1   1   0   |   0    1    0    1    1    1    ; (Configuración 6).
;         1   1   1   |   1    1    1    1    1    1    ; (Configuración 7).
;
; Las entradas C, B, A se conectarán a las líneas del puerto A: RA2 (C), RA1 (B) y RA0 (A).
; Las salidas se obtendrán del puerto B: RB5 (S5), RB4 (S4), RB3 (S3), RB2 (S2), RB1 (S1)
; y RB0 (S0).
;
; ZONA DE DATOS **********************************************************************

    LIST        P=16F84A
    INCLUDE        <P16F84A.INC>
    __CONFIG    _CP_OFF &  _WDT_OFF & _PWRTE_ON & _XT_OSC

; ZONA DE CÓDIGOS ********************************************************************

    ORG     0                        ; El programa comienza en la dirección 0.
Inicio
    bsf        STATUS,RP0                ; Acceso al Banco 1.
    clrf    TRISB                    ; Las líneas del Puerto B se configuran como salida.
    movlw    b'00011111'                ; Las 5 líneas del Puerto A se configuran como entrada.
    movwf    TRISA
    bcf        STATUS,RP0                ; Acceso al Banco 0.
Principal
    movf    PORTA,W                    ; Lee el valor de las variables de entrada.
    andlw    b'00000111'                ; Se queda con los tres bits bajos de entrada.
    call    TablaVerdad             ; Obtiene la configuración de salida.
    movwf    PORTB                    ; Se visualiza por el puerto de salida.
    goto     Principal

; Subrutina "TablaVerdad" ---------------------------------------------------------------
;
TablaVerdad
    addwf    PCL,F
    retlw     b'00001010'                ; (Configuración 0).
    retlw     b'00001001'                ; (Configuración 1).
    retlw     b'00100011'                ; (Configuración 2).
    retlw     b'00001111'                ; (Configuración 3).
    retlw     b'00100000'                ; (Configuración 4).
    retlw     b'00000111'                ; (Configuración 5).
    retlw     b'00010111'                ; (Configuración 6).
    retlw     b'00111111'                ; (Configuración 7).

    END
```
Ejemplo 2:

```
;************************************* Tablas_04.asm ************************************
;
;    ===================================================================
;      Del libro "MICROCONTROLADOR PIC16F84. DESARROLLO DE PROYECTOS"
;      E. Palacios, F. Remiro y L. López.        www.pic16f84a.com
;       Editorial Ra-Ma.  www.ra-ma.es
;    ===================================================================
;
; Repetir ejercicio Tablas_03.asm utilizando la directiva DT.
;
; ZONA DE DATOS **********************************************************************

    LIST        P=16F84A
    INCLUDE        <P16F84A.INC>
    __CONFIG    _CP_OFF &  _WDT_OFF & _PWRTE_ON & _XT_OSC

; ZONA DE CÓDIGOS ********************************************************************

    ORG     0
Inicio
    bsf        STATUS,RP0
    clrf    PORTB
    movlw    b'00011111'
    movwf    PORTA
    bcf        STATUS,RP0
Principal
    movf    PORTA,W                    ; Lee el valor de las variables de entrada.
    andlw    b'00000111'                ; Se queda con los tres bits de entrada.
    call    TablaVerdad             ; Obtiene la configuración de salida.
    movwf    PORTB                    ; Se visualiza por el puerto de salida.
    goto     Principal

; Subrutina "TablaVerdad" ---------------------------------------------------------------
;
TablaVerdad
    addwf    PCL,F
    DT    0x0A, 0x09, 0x23, 0x0F, 0x20, 0x07, 0x17, 0x03F ; Configuraciones
                                                        ; de salida.
    END
```

El tema de guardar los datos a la EEPROM, no se que decirte. No te entiendo que me quieres decir.

¿Puedes expresarte de otra manera?

Un saludo.


----------



## axl ska (Sep 27, 2012)

gracias esto sirvio en parte pero ya resolvi mi duda asi k gracias por las respuestas


----------



## Gudino Roberto duberlin (Sep 27, 2012)

Melghost dijo:


> Pues... en el momento que programes la tabla en la EPROM, ya será de verdad. Hasta entonces, sólo será imaginaria...
> 
> ¿A qué te refieres exactamente con hacer una tabla de verdad?


----------



## Meta (Sep 27, 2012)

axl ska dijo:


> gracias esto sirvio en parte pero ya resolvi mi duda asi k gracias por las respuestas



Hola:

¿Nos muestra como hiciste lo de guardar en la EEPROM la tabla de la verdad?

Siento curiosidad.

Un cordial saludo.


----------



## Scooter (Sep 27, 2012)

Las variables de entrada las pones en los bits de direcciones y el bus de datos lo usas como salida habiendo programado la eprom según te interese.


----------



## BKAR (Sep 27, 2012)

las 27cxxx se programan en paralelo...
lo que menciono el amigo meta es un ejemplo para eeprom y un "tabla" en el pic..

buscas como "programarlo"quemarlo en la 27c512?


----------

