Por favor amigos del foro ayudenme con este ejercicio... ya lo tengo resuelto.. corre bien en proteus pero en
multisim no me vale...
Se trata de un programa hecho en el 16f84a... que transforma de binario a hexadesimal y lo despliega en un
display aca les dejo el programa.... en asm
;EJER4 : VISUALIZA EL NÚMERO HEXADECIMAL EN DISPLAY AL CONMUTAR ENTRADAS DE SWITCH
List p=16F84A
INCLUDE <P16F84A.INC>
ORG 0 ; El programa comienza en la dirección 0
AUXILIAR EQU 0X0C
Inicio
bsf STATUS,RP0 ; Acceso al Banco 1
clrf PORTB ; 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 PORTA
clrf TRISB ; Las líneas del Puerto B se configuran como salida
bcf STATUS,RP0 ; Acceso al Banco 0
Principal
movf PORTA,0
andlw b'00001111' ; Máscara para quedarse con el valor de las
; entradas correspondientes al nibble bajo
MOVWF AUXILIAR
COMF AUXILIAR,W
ANDLW b'00001111'
MOVWF AUXILIAR
call Binario_a_7Segmentos ; Convierte código binario a a 7 segmentos del display
movwf PORTB ; Resultado se visualiza por el puerto de salida
goto Principal
;Subrutina "Binario_7segemntos" -----------------------------------------------------------
Binario_a_7Segmentos ; Tabla para display de 7 segmentos
addwf PCL,1
Tabla retlw 3Fh ; El código de 7 segmentos para el "0"
retlw 06h ; El código de 7 segmentos para el "1"
retlw 5Bh ; El código de 7 segmentos para el "2"
retlw 4Fh ; El código de 7 segmentos para el "3"
retlw 66h ; El código de 7 segmentos para el "4"
retlw 6Dh ; El código de 7 segmentos para el "5"
retlw 7Dh ; El código de 7 segmentos para el "6"
retlw 07h ; El código de 7 segmentos para el "7"
retlw 7Fh ; El código de 7 segmentos para el "8"
retlw 67h ; El código de 7 segmentos para el "9"
retlw 77h ; El código de 7 segmentos para el "A"
retlw 7Ch ; El código de 7 segmentos para el "B"
retlw 39h ; El código de 7 segmentos para el "C"
retlw 5Eh ; El código de 7 segmentos para el "D"
retlw 79h ; El código de 7 segmentos para el "E"
retlw 71h ; El código de 7 segmentos para el "F"
END ; Fin del programa
Les dejo ademas las simulaciones en proteus y multisim... y compile en MPLAB v8.83 q es la ultima version
por cierto Ocupo Proteus 7.5 y NI Multisim 10
Por descargense y ayudenme verificando donde esta el error para multisim