Autor Tema: Primera vez  (Leído 1789 veces)

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

Desconectado Pastor

  • PIC10
  • *
  • Mensajes: 2
Primera vez
« en: 02 de Enero de 2008, 14:57:51 »
Hola muy buenas foreros!!

Es mi primera incursion en este foro, aunque llevo unas hroas leyendo y leyendo vuestras aportaciones.

Al final me he decidido a registrarme y a exponer mi caso, que bueno, antes de nada, decir que es mucho mas principiante que los que comentais por aqui.

Os cuento y a ver lo que me aconsejais.

La movida es que quiero programar un pic, en lenguaje C, el cual hace años que no he tocado pero ha sido el unico.

Por depronto ya he hecho algo de codigo, pero muy rancio... ademas creo que no voy por buen camino pero bueno... aqui os lo expongo tb.

lo que quiero hacer es que al pulsar un pulsador, gire un motor en un sentido hasta que se accione el final de carrera. Si volveria a pulsarlo pues el motor de nuevo se pondria en marcha, pero esta vez en sentido contrario hasta activar otro final de carrera. Tambien me gustaria introducir un temporizador, para que, si por lo que sea el motor esta en marcha y no acciona el final de carrera correspondiente, por que se ha atascado o lo que sea... pues que se pare dicho motor y asi no se queme.

Como veis es muy facil, en un principio y para vosotros, pero yo.... jaja estoy mas atascado que la moto del willi en un lodazal jaja.

Aqui os dejo el codigo fuente, que no esta todo correcto pero bueno... algo es algo:

VAR
   P:char;
   FC:integer;

BEGIN

     writeln('activado fc1 o fc2?poner 1 o 2');
     readln(FC);

     writeln('Pulsar "p" para arrancar');
     readln(P);

     if P:= 'p' and FC:=1 then
        writeln('Gira M1');

     UNTIL FC:=2;

     if P:='p' and FC:=2 then
         writeln('Gira M2');

     UNTIL FC:=1;

     writeln('El motor se ha parado');
END.



El caso es que tengo un problema en los if's ya que me dice que no son booleanos... pero es que me estado devanando los sesos y no se como ponerlo.

Ademas el temporizador no he sabido como meterlo.

Bueno en teoria.... si consigo que en C funcione, que debo hacer para que en el pic funcione? debo de utilizar otro tipo de sintaxis para otro compilador, o si copio y pego y compilo funciona?

Como hago para cambiar lo que es la variable P en realmente el pulsador? y FC para que sea realmente los finales de carrera?

Como veis son "pocas" las dudas que me asolan...

En fin espero que me podais echar una mano (al cuello no vale xD)

Un saludo para todos!!

Desconectado Menta

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 611
Re: Primera vez
« Respuesta #1 en: 02 de Enero de 2008, 15:25:40 »
Hola Bienvenido al foro... 

El código que ponés no es código C, más bien me recuerda a mi viejo Turbo Pascal 6.0  jejeje

Asumo que quieres pasar ese código a lenguaje C. Por eso te pregunto qué compilador piensas usar???
Además: Qué PIC piensas usar???  Esto es fundamental para poder ayudarte.

También quiero preguntarte por los writeln... En dónde piensas mostrar esos textos?? o es que son sólo para dar una idea de lo que quieres hacer? Pues, el funcionamiento es sencillo y se entiende muy bien como lo has explicado, pero querría que me dijeras como será el hardware, es decir, lo que se entiende es que el pic usará 2 pines como entrada desde los FC y 2 salidas para que el motor gire en un sentido, en otro o permanezca detenido. a propósito, que tipo de motor es?

Si usas PIC C de CCS te voy a poder ayudar, ya que es el único compilador que he usado, de todos modos el código debe ser muy parecido y por lo tanto facilmente portable.

1 salu2
Feliz año nuevo!!!

     

Desconectado Pastor

  • PIC10
  • *
  • Mensajes: 2
Re: Primera vez
« Respuesta #2 en: 02 de Enero de 2008, 22:20:51 »
Hola de nuevo!

Antes de nada muchas gracias por la contestacion tan rapida, y por la bienvenida al foro y que, igualmente, feliz año jeje!

Tienes razon en lo del codigo, jaja, te puedes creer que llevo años pensando que eso era lenguaje C?? me he enterado esta tarde, una vez ya habia escrito el post, por medio de una pagina de internet... si ves la cara que se me ha quedado al leer un tutorial sobre inicio a C y no entender nada.... en fin la ignorancia es muy atrevida.

Hombre, ahora me doy cuenta de que de lenguaje C no se nada, y de turbo pascal lo justo... y lo cierto es que no me quiero complicar para nada la vida y para ello espero que me puedas ayudar jeje.

Sobre lo del compilador a utilizas pues estaba mirando que hablais mucho del CCS pero claro, es de C entonces para lo que yo he hecho no me vale, es mas empiezo a creer que el codigo ese no me vale para nada pero bueno...

En teoria queria programar en C y compilarlo para generar el archivo en HEX y luego pasarlo al Pic, pero claro eso en la teoria que se ha ido al garete por completo jeje.

Sobre lo del pic pues... el mas usado, PIC16F84 o PIC16F84A, en teoria, es que esto es en conjunto entre otra persona y yo, yo hago el trabajo sucio el se lleva los galardones jeje es coña.

Mira si te soy sincero... es la primera vez que intento hacer algo de esto asi que es que no se ni por donde me da el aire, creo que se me va un poco de las manos y a veces me desanimo pero digo.. joder que no tiene que ser muy dificil... pero llego a cosas que ni por mi mismo logro entender..

Bueno a lo que voy, sobre lo de los writeln era para hacerme una idea, hacer como una pequeña simulacion en TurboPascal y despues substituir eso por las verdaderas entradas y salidas del circuito, pero creo que no es tan facil como creia, no?

Sobre lo siguiente, el Pic usara 3 entradas, las dos de los FC y la del pulsador, el cual inicia la secuencia, y como bien dices, dos salidas correspondientes a los dos sentidos de giro. Ademas quiero incluir lo del temporizador de corte general (llamemosle asi) para la proteccion del motor.

El motor pues... me han dicho que tp tiene mucho que ver, ya que la salida de mando la conectare a un rele el cual gobernara la fuerza del motor, me imagino que no habra problema en eso no?

Si te soy sincero, uso lo que quieras que use, jeje, estoy en tus manos, si tu me comentas que usando pic C es mejor y mas rapido pues adelante, busco donde sea ese pic C.

Bueno creo que eso es mas o menos lo que tengo.... Como ves yo creo que para ser mi primer trabajo no es complicado, o bueno asi lo veo yo, creo que es dominar un motor mediante una pequeña programacion, pero a veces las pequeñas cuestas se hacen interminables, jeje, esperemos que esta no lo sea.

Y eso, que lo dicho, muchas gracias por escribir

Un saludo!

PD: siento la chapa :)


 

anything