Autor Tema: necesito ayuda con este pekeño proyecto  (Leído 18333 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado jachy

  • PIC10
  • *
  • Mensajes: 26
necesito ayuda con este pekeño proyecto
« en: 01 de Mayo de 2003, 04:34:00 »
Bueno pues lo que quiero hacer es utilizar el puerto paralelo del pc y comunicarlo con el pic de forma binaria utilizando 4 pines de salida y pasandolos a las entradas del pic porta1,2,3,4 y que convinando en esa entrada que me active una u otra salida portB.

Entrada salida
0001 rele1 on
0011 rele1 off
esto es mas o menos la idea.

Me puede alguien hechar una mano ,no se k es lo k estoy haciendo mal (soy novato en asm)

list p=16f84
include "p16f84.inc"
__CONFIG 3FF5H
org 0x00
goto INICIO
org 0x05

INICIO clrf PORTB
bsf STATUS,RP0
clrf TRISB
movlw b"00001111"
movwf TRISA

bcf STATUS,RP0

CASO1 clrwdt

BIN1 btfsc PORTA,0
goto CASO2
btfsc PORTA,1
goto CASO2
btfsc PORTA,2
goto CASO2
btfsc PORTA,3
goto RELE1
goto CASO2

RELE1 bsf PORTB,1

CASO2 goto BIN2

BIN2 clrwdt
btfsc PORTA,0
goto CASO3
btfsc PORTA,1
goto CASO3
btfsc PORTA,2
goto BIN21
goto CASO3
BIN21 btfsc PORTA,3
goto RELE2
goto CASO3

RELE2 bcf PORTB,1

CASO3 goto BIN3

BIN3 clrwdt
btfsc PORTA,0
goto CASO4
btfsc PORTA,1
goto BIN31
goto CASO4
BIN31 btfsc PORTA,2
goto BIN32
goto CASO4
BIN32 btfsc PORTA,3
goto RELE3
RELE3 bsf PORTB,2
CASO4 goto BIN4

BIN4 clrwdt
btfsc PORTA,0
goto CASO5
btfsc PORTA,1
goto CASO5
btfsc PORTA,2
goto BIN41
goto CASO5
BIN41 btfsc PORTA,3
goto CASO5
goto RELE4

RELE4 bcf PORTB,2

CASO5 goto BIN1

end


CASO5 CONTINUARIA PERO LO CORTE HAY PARA VER EL FUNCIONAMIENTO EN LA PLACA

Desconectado franda

  • PIC10
  • *
  • Mensajes: 32
RE: necesito ayuda con este pekeño proyecto
« Respuesta #1 en: 01 de Mayo de 2003, 05:45:00 »
jachy me interesaría saber como se programa el puerto paralelo del PC. ¿Podrías incluir el programa? Voy a intentar averiguar que le pasa a tu programa en ensamblador.

Salu2

Desconectado jachy

  • PIC10
  • *
  • Mensajes: 26
RE: necesito ayuda con este pekeño proyecto
« Respuesta #2 en: 01 de Mayo de 2003, 06:10:00 »
el programa lo estoy haciendo en VisualBasic en cuanto lo termine lo cuelgo pero de todas formas pasame tu mail y te lo mando en cuanto lo termite pero el problema ahora era hacerlo funcionar el pic para ver si rula el prog. bien con el pic.


Salu2 Jachy

Desconectado franda

  • PIC10
  • *
  • Mensajes: 32
RE: necesito ayuda con este pekeño proyecto
« Respuesta #3 en: 01 de Mayo de 2003, 14:48:00 »
En tu programa si PORTA0=1 lo mandas a CASO2 con lo cual el RELE1 no se activará nunca.

De VisualBasic no tengo ni idea, mala suerte.

Desconectado Eduagra

  • PIC16
  • ***
  • Mensajes: 116
RE: necesito ayuda con este pekeño proyecto
« Respuesta #4 en: 01 de Mayo de 2003, 14:50:00 »
Bueno, no soy un experto, pero creo que el problema lo tienes en que cuando escribes un dato en el puerto paralelo desde visual basic, este permanece en él por un corto periodo de tiempo, y el pic quizá no le de tiempo a leerlo.

o hice algo parecido, pero en mi caso sólo se trataba de encender unos led, para ello necesité una librería para poder acceder diréctamente al puerto paralelo, tanto para leer como para escribir.

Te adjunto la librería que he estado usando yo.

Si por el contrario estas usando un S.O. que viene de WindowsNT, tendrás problemas, visita esta web http://www.pablin.com.ar/computer/programa/vb/iodll.htm esta muy bien y te dará la solución.

Salu2

Desconectado jachy

  • PIC10
  • *
  • Mensajes: 26
RE: necesito ayuda con este pekeño proyecto
« Respuesta #5 en: 01 de Mayo de 2003, 17:19:00 »
los puerto buncionan bien el pic lo estoy provando con una placa lo alimento con sus 5v , sus condensadores su cristal de cuarzo 4Mhz y a las salidas de pic tengo diodos led con sus respectivas relistencias y a las entradas mediante pulsadores le ataco con 5v(al pulsar).


Lo que necesito es que por ejm. la RA0=0 RA1=1 RA2=0 RA3=1 CON ESTA COMBINACION SE ACTIVE RB0=1,
LA IDEA ES QUE DEPENDIENDO DE LA COMBINACION ENTRE RA0-------RA3 FUNCIONE UNA U OTRA SALIDA RBx.


Salu2 Jachy

Desconectado franda

  • PIC10
  • *
  • Mensajes: 32
RE: necesito ayuda con este pekeño proyecto
« Respuesta #6 en: 02 de Mayo de 2003, 00:21:00 »
Hola jachy, ¿crees que está mal lo que te he dicho? Me costó un poquillo averiguarlo a partir de tus datos ya que tomé 0001 como RA0=1 y por lo que parece es RA3=1 ¿no tienes nada en C para el control del puerto paralelo?

Salu2

Desconectado franda

  • PIC10
  • *
  • Mensajes: 32
RE: necesito ayuda con este pekeño proyecto
« Respuesta #7 en: 02 de Mayo de 2003, 01:41:00 »
¿Cual es exactamente la secuencia? Creo que es esta:

RA3=RA2=RA1=RA0=0 ------ > RB2=RB1=0
RA3=1;RA2=0;RA1=0;RA0=0 ----- > RB2=0;RB1=1
RA3=1;RA2=1;RA1=0;RA0=0 ----- > RB2=0;RB1=0
RA3=1;RA2=1;RA1=1;RA0=0 ----- > RB2=1;RB1=0
RA3=1;RA2=1;RA1=1;RA0=1 ----- > RB2=0;RB1=0
Para cualquier otra combinación debe de mantenerse el estado anterior

Si la secuencia es la que acabo de escribir, en la etiqueta de tu programa BIN32:

BIN32    btfsc PORTA,3
             goto RELE3
RELE3   bsf PORTB,2

valga lo que valga RA3 se conecta RB2 y RB2 solo se tendría que conectar si RA3=RA2=RA1=1; RA0=0

Si no pones cual es la secuencia exacta que debe seguir es imposible averiguar donde está el fallo

Salu2

Desconectado jachy

  • PIC10
  • *
  • Mensajes: 26
RE: necesito ayuda con este pekeño proyecto
« Respuesta #8 en: 02 de Mayo de 2003, 10:55:00 »
Guenas ta estoy por aka.

Bueno te explico la chuletilla que tengo con la idea

SI PORTA0=0, PORTA1=0,PORTA2=0 Y PORTA3=1 ENTONCES PORTB1 SE PONE A 1 ACTIBANDO UN RELE

SI PORTA0=0, PORTA1=0,PORTA2=1 Y PORTA3=1 ENTONCES PORTB1 SE PONE A 0 ACTIBANDO UN RELE

SI PORTA0=0, PORTA1=1,PORTA2=1 Y PORTA3=1 ENTONCES PORTB2 SE PONE A 1 ACTIBANDO UN RELE

SI PORTA0=0, PORTA1=0,PORTA2=1 Y PORTA3=0 ENTONCES PORTB2 SE PONE A 0 ACTIBANDO UN RELE

CON LO K KEDARIA LAS SIGIENTES CONBINACIONES

0100 = PORTB3 ON
1000 = PORTB3 OFF

0110 = PORTB4 ON
1110 = PORTB4 OFF

1100 = PORTB5 ON
1001 = PORTB5 OFF

1101 = PORTB6 ON
1011 = PORTB6 OFF

Y CON ESTO ESTARIA TERMINADO.
EL PROBLEMA NO ES DE EL PUERTO POR K LO ESTOY PROBANDO EN PLACA CON FUENTE ALIMENTACION  PULSADORES Y LED´S

SALUDOS A TODOS
JACHY

Desconectado franda

  • PIC10
  • *
  • Mensajes: 32
RE: necesito ayuda con este pekeño proyecto
« Respuesta #9 en: 02 de Mayo de 2003, 11:48:00 »
¿A que las tres primeras combinaciones (1000, 1100, 1110) te van bien? y cuando llegas a la cuarta (0110) y esperas que RB2=0 no te pasa a 0. La explicación te la dí más arriba (haciendo de adivino de combinaciones) y me dá la impresión de que no lo has comprobado.

Dime exactamente hasta donde llega funcionando bien.

Desconectado jachy

  • PIC10
  • *
  • Mensajes: 26
RE: necesito ayuda con este pekeño proyecto
« Respuesta #10 en: 02 de Mayo de 2003, 12:35:00 »
pues lo k me hace es k de primeras rb2 se keda encendido continuamente y segundo es como si el pic cogiese ruido pones el dedo encima del pic y se enciende rb1 unas cosas muy raras y claro ya no se si es del prog.asm o del circuito. no tendras algun esquema de la configuracion electronica del 16f84.

Por ke ahora k lo dices cuando ponia el  dedo encima del pic y cogia ruido RB1 si funcionaba pero claro no terminaba de apagarse el led.

Voy a terminar se pasar el ASM entero y lo cuelgo aky para k lo veas completo, a ver si va a ser el circuito......

Desconectado cucaracha

  • PIC24H
  • ******
  • Mensajes: 1409
    • CUCAWEB
RE: necesito ayuda con este pekeño proyecto
« Respuesta #11 en: 02 de Mayo de 2003, 13:17:00 »
Si pones el esquemático y el programa (o la parte que tengas hecha) te podremos intentar ayudar. Estuve mirando el programa y... claro no se si hay cosas que pueden fallar porque no se exactamente el funcionamiento. Cuantos relés vas a conectar, como, etc...
Un saludo
Saludos desde Huelva (ESPAÑA)

Desconectado jachy

  • PIC10
  • *
  • Mensajes: 26
RE: necesito ayuda con este pekeño proyecto
« Respuesta #12 en: 02 de Mayo de 2003, 15:13:00 »
ahy cuelgo el esquema en formato eagle k es en el editor el cual utilizo y en formato bmp , el programa lo tengo sin compilar pero ya te digo k esta sin terminar seguire con prog y le cuelgo pero es eso un simple programa para controlar una cierta cantidad de reles atraves de puerto paralelo utilizando 4 salidas del puerto paralelo aciendolas funcionar en una especie de sistema binario para tener posibilidad de manejar mas de 4 salidas y el pic se tiene que encargar de hacer esa traduccion de binario atraves de ra0 ra1 ra2 ra3 como entradas conectadas a puerto paralelo y traduzca decidiendo esa conbinacion a k rele coresponde. pero por ahora lo quiero hacer funcionar con esa especie de entrenador k he hecho para posterior mente cuando lo vea funcionar conectarlo al puerto paralelo y manejarlo con el programa.

Salu2 Jachy

Desconectado franda

  • PIC10
  • *
  • Mensajes: 32
RE: necesito ayuda con este pekeño proyecto
« Respuesta #13 en: 03 de Mayo de 2003, 01:51:00 »
me equivoqué al copiar la 4ª combinación. En lugar de ser 0110 es 0100 (me lo podías haber dicho) y con esta combinación el programa que enviaste funciona bien.

¿Alguno de vosotros tiene un programa en C que controle desde el teclado los pines del puerto paralelo?

Un saludo

Desconectado todopic

  • Administrador
  • DsPIC30
  • *******
  • Mensajes: 3495
    • http://www.todopicelectronica.com.ar
RE: necesito ayuda con este pekeño proyecto
« Respuesta #14 en: 03 de Mayo de 2003, 14:30:00 »
Hola Jachy, que te parece esta idea
 X0000001  es el uno para ON, si X=1 seria OFF

X0000010  es el dos para ON, si X=1 seria OFF

X0000011  es el tres para ON, si X=1 seria OFF

y basi seguimos para la cuenta en binario, y obtendras que X vale 128, si a tu valor le sumas 128,lo apagas, se entiende?

luego, la seleccion en el pic, seria muy simple... solamente testeas el bit 7

btfss mmmm,7  es decir el que llame X

si es uno, iria a la rutina de apagado, sino a la de encendido


estas serian tablas, es decir , ingresas con el valor leido en porta, lo guardas por ejemplo en ENTRADA

movf entrada,w  " coloco en lalor ENTRADA en W
bcf entrada,7      "borro el bit X
addwf PCL,F      " sumo el valor entrada al contador de programa, y este salta

goto cero
goto uno
goto dos

etc


uno   bsf portb,0
goto mmmmmm

dos  bsf portb,1




etc


se entiende?

un abrazo
Norberto



Firmat - Santa Fe - Argentina

www.TodoPic.net

Solo se tiran piedras, al arbol que tiene frutos...


 

anything