Sunteți pe pagina 1din 5

PROGRAMA PARA DETERMINAR EL CORRECTO FUNCIONAMIENTO DE LAS CUATRO COMPUERTAS DE DOS ENTRADAS, CONTENIDAS EN LOS CIRCUITOS INTEGRADOS: SN74LS00

(NANDs), SN74LS08 (ANDs), SN74LS32 (ORs) Y SN74LS86 (ORs EXCLUSIVOS) ENUNCIADO Comprobar las cuatro de dos entradas de los circuitos integrado 74LS00, 74LS08, 74LS32 o 74LS86; conectando las salidas de las compuertas a los cuatro bits intermedios del Prtico A y las dos entradas de las cuatro compuertas a los bits 6 y 7 del mismo Prtico. El resultado se obtiene en dos LEDs: rojo y verde, conectados a los bits 0 y 1, tambin del Prtico A: el rojo se enciende cuando alguna de las compuertas est mal, mientras que el verde cuanto todas estn bien. El programa se ejecuta una sola vez al pulsar "START", pulsante normalmente abierto conectado al bit 7 de Prtico C. Para escoger cual de los circuitos va a ser comprobado se utilizan dos interruptores "SW1" y "SW2" conectados a los bits 5 y 6 del Prtico C, para que las cuatro combinaciones determinen la tabla de datos que se utiliza para comparar con los resultados que se obtienen desde las compuertas, de la siguiente forma: SW2 SW1 CERRADO CERRADO CERRADO ABIERTO ABIERTO CERRADO ABIERTO ABIERTO PORTC5 0 0 1 1 PORTC6 0 1 0 1 TABLA 74LS00 74LS08 74LS32 74LS86

CIRCUITO PARA LA COMPROBACIN DEL PROGRAMA

LEDs indicadores

Interruptores para escoger el tipo de compuerta que se comprueba

Pulsante para iniciar las comprobaciones

CDIGO FUENTE DEL PROGRAMA


.NOLIST .INCLUDE "m164pdef.inc" .LIST ; ASIGNACIN DE ETIQUETAS A REGISTROS Y DE VALORES .DEF AUX1 = R16 ; REGISTRO AUXILIAR 1 .DEF AUX2 = R17 ; REGISTRO AUXILIAR 2 .DEF AUX3 = R18 ; REGISTRO AUXILIAR 3 ; .EQU ROJO = PA0 ; LED ROJO - INDICACIN MAL .EQU VERDE = PA1 ; LED VERDE - INDICACIN BIEN .EQU START = PC7 ; PULSANTE DE ARRANQUE ; SEGMENTO DE CDIGO o MEMORIA FLASH .CSEG ; CONFIGURACIN DE LOS PRTICOS LDI AUX1,0b11000011 ; 2 SALIDAS, 4 ENTRADAS y 2 SALIDAS OUT DDRA,AUX1 ; EN EL PRTICO A LDI AUX1,0xFF ; PARA HABILITAR PULL-UP OUT PORTC,AUX1 ; EN EL PRTICO C ; APAGAR LOS LEDS DE INDICACIN REPITA: CBI PORTA,ROJO CBI PORTA,VERDE ; LECTURA DEL TIPO DE COMPUERTA IN AUX1,PINC ANDI AUX1,0b01100000 ; SOLO ESTADO DE LOS INTERRUPTORES ; PUNTERO Z SEGN EL TIPO DE COMPUERTA TIPO0: CPI AUX1,0b00000000 ; SON COMPUERTAS NAND BRNE TIPO1 LDI ZL,LOW(TBL00<<1) LDI ZH,HIGH(TBL00<<1) RJMP CHECK TIPO1: CPI AUX1,0b00100000 ; SON COMPUERTAS AND BRNE TIPO2 LDI ZL,LOW(TBL08<<1) LDI ZH,HIGH(TBL08<<1) RJMP CHECK TIPO2: CPI AUX1,0b01000000 ; SON COMPUERTAS OR BRNE TIPO3 LDI ZL,LOW(TBL32<<1) LDI ZH,HIGH(TBL32<<1) RJMP CHECK TIPO3: LDI ZL,LOW(TBL86<<1) ; SON COMPUERTAS OR EXCLUSIVO LDI ZH,HIGH(TBL86<<1) ; COMPROBACIN DE LAS COMPUERTAS CHECK: LDI AUX2,4 CHECK1: LPM AUX1,Z+ OUT PORTA,AUX1 NOP IN AUX3,PINA CP AUX1,AUX3 BRNE MAL DEC AUX2 BRNE CHECK1 ; INDICACIN DE BIEN ENCIENDE LED VERDE BIEN: SBI PORTA,VERDE RJMP WAIT1 ; INDICACIN DE MAL ENCIENDE LED ROJO MAL: SBI PORTA,ROJO ; ESPERA POR EL ARRANQUE WAIT1: SBIC PINC,START RJMP WAIT1

WAIT2:

SBIS PINC,START RJMP WAIT2 RJMP REPITA ; TABLAS PARA LAS COMPUERTAS TBL00: .DB 0b00111100, 0b01111100, 0b10111100, TBL08: .DB 0b00000000, 0b01000000, 0b10000000, TBL32: .DB 0b00000000, 0b01111100, 0b10111100, TBL86: .DB 0b00000000, 0b01111100, 0b10111100, ; .EXIT ; FIN DEL MODULO FUENTE

0b11000000 0b11111100 0b11111100 0b11000000

; ; ; ;

PARA PARA PARA PARA

LAS LAS LAS LAS

COMPERTAS COMPERTAS COMPERTAS COMPERTAS

NAND AND OR EXOR

COMPROBACIN DE LAS COMPUERTAS DEL SN74LS00 (BIEN)

COMPROBACIN DE LAS COMPUERTAS DEL SN74LS86, COMO SI FUERAN DEL SN74LS00 (MAL)

COMPROBACIN DE LAS COMPUERTAS DEL SN74LS08 (BIEN)

COMPROBACIN DE LAS COMPUERTAS DEL SN74LS32 (BIEN)

COMPROBACIN DE LAS COMPUERTAS DEL SN74LS86 (BIEN)

S-ar putea să vă placă și