TODOPIC
Microcontroladores PIC => Almacén del Assembler => Mensaje iniciado por: austinsantos1992 en 15 de Agosto de 2016, 18:01:48
-
Lo que sucede es que tengo un programa en (asm) que al pulsar un boton va mostrando los numeros del 0 al 9 en un display pero al momento de realizar la simulacion en proteus, tengo que presionar dos veces el pulsante para que vaya mostrando los numeros en el display. En el programa en ensamblador están aplicados los antirrebotes todo y no se porque pueda ser talvez pueda ser proteus no se.
Alguien que me pueda ayudar estoy tratando de hacerlo con el pic18f45k22 dejo adjunto el programa probe haciendo el mismo programa para el PIC16F628A y ahi al simular en proteus no sucede eso.
; ************************************************************
LIST P = 18F45K22
INCLUDE <P18F45K22.INC>
;************************************************************
CONFIG FOSC = XT
CONFIG PWRTEN = OFF
CONFIG BOREN = OFF
CONFIG WDTEN = OFF
CONFIG MCLRE = EXTMCLR
CONFIG PBADEN = OFF
CONFIG LVP = OFF
CONFIG DEBUG = OFF
CONFIG XINST = OFF
CONTADOR EQU 0xF9A
ORG 0x00 ;Iniciar el programa en el registro
GOTO INICIO1
DECODIFICADOR
ADDWF PCL,F
RETLW B'00111111';0
RETLW B'00000110';1
RETLW B'01011011';2
RETLW B'01001111';3
RETLW B'01100110';4
RETLW B'01101101';5
RETLW B'01111101';6
RETLW B'00000111';7
RETLW B'01111111';8
RETLW B'01101111';9
CLRF CONTADOR
RETLW B'00111111';0
RETURN
INICIO1
CLRF TRISD
MOVLW B'00111111'
MOVWF PORTD
CLRF CONTADOR
INICIO
BTFSS PORTB,0
GOTO NEXT
CLRF CONTADOR
MOVLW B'00111111'
MOVWF PORTD
GOTO INICIO
NEXT
BTFSS PORTB,1
GOTO INICIO
INCF CONTADOR,F
ANTIRREBOTE
BTFSC PORTB,1
GOTO ANTIRREBOTE
MOVF CONTADOR,W
CALL DECODIFICADOR
MOVWF PORTD
GOTO INICIO
END
-
El Proteus peude ser MUY lento simulando. Y por eso tal ves necesitas presionar 2 veces, de todas formas podes copiar y pegar el programa aca y vemos si se puede modificar algo o corroborar que el problema no sea del software.
-
las veces que use proteus tuve siempre algo, opte por hacer una placa donde tener el controlador con su fuente y su regulador y puse pines a las salidas, entonces hice otra placa con pulsadores y otra con los display y asi me arme como un probador universal y deje de tener historias, total eso te queda y te sirve para otros proyectos ya que queda universal y conectas lo que quieras a los pines, saludos