TODOPIC
Microcontroladores PIC => Almacén del Assembler => Mensaje iniciado por: alogic.on en 22 de Mayo de 2007, 12:31:46
-
holas a todos y gracias de antemano
esta duda, muy de principiante , me ha surgido al simular el circuito :? :?
cuando salta una interrupcion de la rb0 ,si escribo:
bcf status,5
movlw b'01100000'
movwf portb me enciende los led conectados a las patillas 5y6 de la puerta b
continua el prog.........
pero si.....
bcf status,5
bsf portb,6
bsf portb,5 puuuues no hace nada .....de nada de nada.................y que no los pone a uno
ya se que parece lo mismo y creo que debería funcionar, no habia usado esos nemonicos para modificar el estado de las puertas de salida solo para otros registros
se hace de forma diferente para las puertas de salida
gracias y un saludet
P.D. os dejo el programita por si quereis echarle un ojuel, que es largo como para pegarlo aquí
-
'parecen' lo mismo pero no lo son...
¿Cómo es el circuito de afuera?
-
la mamma si estas vigilando haber que cae ,que rapidez. eres un monstruo :mrgreen:
estoy haciendo pruebas y cuando muevo de un registro a otro si funciona,otra cosa, me apaga los led cuando entra la interrupcion de rp0 no tiene ninguna orden de apagarlos dentro de la rutina de rp0 , si los apaga cuando pulsas stop antes de que salte rp0 y los enciende mientras.pero si no te los apaga el solito.(grgrgrgrg) si se pone un registro a uno se debería de quedar a uno hasta que se le ordene ponerse a cero de una u otra manera ,no??
muchas gracias
-
la mamma si estas vigilando haber que cae ,que rapidez. eres un monstruo :mrgreen:
La verdad acababa de ingresar y leí tu mensaje. Ha sido casualidad. No estoy todo el tiempo por aquí ;)
.... si se pone un registro a uno se debería de quedar a uno hasta que se le ordene ponerse a cero de una u otra manera ,no??
Un registro si, un puerto no.
A ver si lees estos posts (solo el mensaje indicado no hace falta que leas todo el hilo). si no lo entiendes vuelve a preguntar
http://www.todopic.com.ar/foros/index.php?topic=11553.msg64871#msg64871
http://www.todopic.com.ar/foros/index.php?topic=14020.msg84078#msg84078
http://www.todopic.com.ar/foros/index.php?topic=12181.msg68498#msg68498
Saludos
-
aaaaaaaaaaaaaaaaaa , pero si el pic que estoy usando no tiene registro latx , no puedo configurar un puerto con bsf para que se quede como salida continuamente ,hasta que ponga la orden bcf portx,x
he probado queriendo forzarlo a hacerlo escribiendo (antes de leer tus posts)
pb5 bcf status, 5
ilogico bsf porta,3
btfss porta,3
goto ilogico
ilogico2 bsf porta,5
btfss porta,5
goto ilogico2 y aqui se queda pillao dando vueltas
goto mas2 no pasa ,porque nunca llega a encender el segundo led :? :? :?
ya veia que algo asi iba a pasar jejej
voy a usar un registro interno para apuntar si esta andando o se paró en vez del rb1, estos no se borran :mrgreen: y supongo que podría usar ra4 como salida usando los pulsos para encender y apagar el motorencoder el tiempo que necesite , pero seria mas sencillo si pudiese bloquear una patilla de salida a uno ,bfbfbfbffbfbfbf para hacerlo así tendre que investigar ,como pej. si cuando desborda y se ha quitado la interrupcion del tmr0 se vuelve a poner a contar desde 0 o se para ,si asi fuese ,creo que tendria que migrar de pic. pocas soluciones le veo sin usar el registro latx ,no??
un saludo y muchissisisismas gracias
-
aaaaps , sorpresa ya esta he asignado otro bit como si fuera el de portb2 y el de portb,1 lo he pasado al porta,3 supongo que mientras que no escriba sobre otro puerto de salida pues no variara el de porta3 , :mrgreen: :mrgreen: :mrgreen:
muchas gracias por las indicaciones
-
pero si el pic que estoy usando no tiene registro latx , no puedo configurar un puerto con bsf para que se quede como salida continuamente ,hasta que ponga la orden bcf portx,x
Ya sé que no tiene LATx, la idea no era que leas esa parte sino de porqué hacer un bsf PORTx,pin en un puerto e inmediatamente otro debajo, no significa que eso se refleje en forma inmediata en el hardware.
El hacer un "bsf" implica leer, modificar y grabar. En ese esquema si cuando 'lee' la 2da linea el hardware aún no se estabilizó entonces nunca se actualizará
Si necesitas sacar 2 pines juntos por un puerto en un pic16f, te sugiero usar el movlw y luego el movwf.
Saludos