Simulacion 16F84A

Hola compañeros, estoy simulando un circuito para controlar un motor con el 16F84A y lo tengo el programa hecho (aunque no terminado para todo el proyecto).

El problema está en que al ejecutar la simulación PROTEUS si que me cambia de color rojo a azul las salidas/entradas pero el motor no hace nada. Alguien podría decirme cuál es el problema? Yo no consigo solucionarlo

PD: Les adjunto el código
Código:
;---- EMPIEZA EL PROGRAMA---

	list p=16f84a	;pic 16f8a
	#include	P16F84A.inc

;---- ASIGNACIÓN DE NOMBRES--------

estat	equ	0x03	;nombre para el registro de estado
trisa	equ	0x05
trisb	equ	0x06
porta	equ	0x05
portb	equ	0x06

;--- CONFIGURACIÓN DE LOS PUERTOS-----

reset	org	0x00	;origen del programa, empieza aquí siempre que se resetee
	goto	inici	;va a inicio
	org	0x05	;origen del codigo de programa

inici	bsf	estat,5	;pone RP0 a 1 (banco1) para configurar los puertos
	movlw	b'11111'	;carga el valor 11111 a W
	movwf	trisa	;pasa el el valor a TRISA
	movlw	b'00000000'	;carga el valor 00000000 a W
	movwf	trisb	;pasa el valor a TRISB
	bcf	estat,5	;sale del banco 1, pasa al 0 y continua con el programa

;--- PROGRAMACiÓN DEL PIC ----

back	btfsc	porta,0	;si RA0 és 0 salta a la segunda acción
	goto	enc	;si és 1 va a enc
	bcf	portb,0	;si es 0 pone RB0 a 0
	bcf	portb,3	;Y rb3 también
	goto	back	;vuelve al principio

enc	bsf	portb,0	;enciende RB0
	bsf	portb,3	;enciendeRB3
	goto	back
	
	end

Os adjunto las capturas de la simulación. Cambian las entradas del driver controlador de los motores y las salidas del 16f84a (así como su entrada también)

Saludos
 

Adjuntos

  • proteus_1.png
    proteus_1.png
    20.6 KB · Visitas: 21
  • proteus_2.png
    proteus_2.png
    19.3 KB · Visitas: 12
Hola!, ya checaste los parametros de configuracion del pic, es que veo que estas usando en el diagrama un cristal y pues yo he hecho algunas simulaciones antes en proteus y no es necesario ponerselo siempre y cuando hagas la configuracion previa del pic
 
Aunque le quite el cristal, sigue sin funcionar :S. Pero no creo que sea problema del cristal... o algo está mal en la programación, o en el montaje... pero no sé.
 
Debo comentar que he probado cambiando el circuito, es decir, en lugar de controlar el driver completamente con el 16F84A la entrada enable1 la controlo con un estado lógico del proteus. En este caso, sí que me funciona el motor. Alguien podría decirme donde está el error? Yo no lo sé encontrar...

Saludos!

Vale, creo que ya he detectado el problema. Tengo mal programado el pic porque las salidas habilitadas están en estado alto y deberían estar en estado bajo. Voy a revisar el código a ver si lo consigo arreglar.
 
Última edición:
Atrás
Arriba