Autor Tema: PC FAN Controller con TFT 1,8" EDITADO 16-4-13  (Leído 14354 veces)

0 Usuarios y 4 Visitantes están viendo este tema.

Desconectado ppyote

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 929
Re: PC FAN Controller con TFT 1,8" EDITADO 16-4-13
« Respuesta #45 en: 08 de Octubre de 2013, 10:45:32 »
El pin que conectes a la entrada AO de la TFT no es necesario que lo actives y desactives a no ser que sea menester
sí no vas a trasmitir nada, dejarlo en alto o bajo es lo mismo

el pín enable del que hablas es el pin de cable select? Ósea el CS del puesto spi?
PPyote... siempre estareis en mi corazon.... Te quiero Hermano...

Desconectado proaudio

  • PIC10
  • *
  • Mensajes: 16
Re: PC FAN Controller con TFT 1,8" EDITADO 16-4-13
« Respuesta #46 en: 08 de Octubre de 2013, 13:55:49 »
Si, el enable sería el CS (es que cada uno lo llama a su manera... en el manual del PIC24 es SSx). Pero bueno, es lógico que si no voy a usar otro dispositivo en el mismo SPI, puedo dejarlo en 0 y así un problema menos.
Con respecto al AO (que sería el data_command) se comporta de forma extraña, ya que cuando le cambio el estado antes de una transmisión, éste dura un instante y se vuelve a como estaba... me tiene loco, pero hay otro problema mas importante que también me tiene loco y es:

en mi programa tengo:

while(1){

     SPI1BUF=0x11;
     while(!SPI1STATbits.SPITBF);
     SPI1BUF=0xAA;

delay(100000);
}

con lo cual debería transmitir 0x11, y cuando se desocupe el buffer, transmitir 0xAA... luego del delay, repetir el proceso. Pero no! transmite solo el 0x11 de forma indefinida. Con el UART se hace así y funciona de lujo!


Desconectado proaudio

  • PIC10
  • *
  • Mensajes: 16
Re: PC FAN Controller con TFT 1,8" EDITADO 16-4-13
« Respuesta #47 en: 08 de Octubre de 2013, 20:43:47 »
Bueno... esto lo resolví con un ejemplo que encontré por ahí... es un artilugio para hacer que una vez que se transmita el dato, se borre del buffer y permita la entrada de otro dato. El código es el siguiente:

       while (SPI1STATbits.SPITBF);           // Check to see whether the buffer is clear, means empty
            SPI1BUF = dato;                            // Write to buffer for tx          
            while (!SPI1STATbits.SPIRBF);         // Wait for the transfer to complete
            READ_DATA = SPI1BUF;                  // Dummy read of SPI1BUF to clear SPIRBF flag

PERO... (siempre quedan peros...) veo que la pata SDO cuando no transmite nada está en 0V, y debería estar en +3.3V (como en el PIC18F2550 que queda en +5V)... esto jode todo el tinglado? Podría ser por eso que aún sigue la pantalla en blanco?
Estamos mas cerca que antes... no se que tanto, pero mucho mas que ayer :D

Gracias Ppyote!
« Última modificación: 09 de Octubre de 2013, 07:10:06 por proaudio »

Desconectado martin12as

  • PIC10
  • *
  • Mensajes: 36
Re: PC FAN Controller con TFT 1,8" EDITADO 16-4-13
« Respuesta #48 en: 09 de Octubre de 2013, 15:24:50 »
disculpa que te moleste de nuevo, es posible con 1 pic como el 16f886 manejar 5 pwm, medir 5 sensores de rpm y trasmitir o recibir datos por el puerto serie al mismo tiempo? o me convendría usar mas de 1 pic?

Desconectado MGLSOFT

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 7912
Re: PC FAN Controller con TFT 1,8" EDITADO 16-4-13
« Respuesta #49 en: 09 de Octubre de 2013, 16:05:15 »
No conozco los recursos de ese PIC, pero en un PIC24 yo uso 4 PWM y leo 4 sensores de rpm por interrupciones, y uso el puerto serie a 115200 Baudios sin problema.
Ahh, tambien leo 3 sensores de distancia por eco...Por interrupcion por supuesto!! :mrgreen: :mrgreen:
Todos los dias aprendo algo nuevo, el ultimo día de mi vida aprenderé a morir....
Mi Abuelo.

Desconectado martin12as

  • PIC10
  • *
  • Mensajes: 36
Re: PC FAN Controller con TFT 1,8" EDITADO 16-4-13
« Respuesta #50 en: 09 de Octubre de 2013, 18:59:16 »
No conozco los recursos de ese PIC, pero en un PIC24 yo uso 4 PWM y leo 4 sensores de rpm por interrupciones, y uso el puerto serie a 115200 Baudios sin problema.
Ahh, tambien leo 3 sensores de distancia por eco...Por interrupción por supuesto!! :mrgreen: :mrgreen:

el pwm creo que no esta usando muchos recursos, no necesito mucha frecuencia ni resolución, lo estoy generando de esta forma

Código: [Seleccionar]
for(;;) //comienzo ciclo infinito
   {
         cont0=0;   //se inician los contadores en 0 por cada ciclo nuevo
               
         while(cont0<20)       //comienzo ciclo pwm
         {
            if(pwm0<cont0)
               output_low (PIN_c0); //pwm1 en alto
            else
               output_high (PIN_c0);  //pwm1 en bajo
           
            cont0=cont0+1;           //aumenta en 1 el contador del ciclo

         }
}

que interrupción usas para los sensores? las formas que estuve viendo me hicieron dar miedo de que gaste muchos recursos, encima también tengo que enviar a la pc los datos esos
     

Desconectado proaudio

  • PIC10
  • *
  • Mensajes: 16
Re: PC FAN Controller con TFT 1,8" EDITADO 16-4-13
« Respuesta #51 en: 09 de Octubre de 2013, 22:54:44 »
@Ppyote.... Lo tengo!  :-/ ha costado, pero finalmente me comunico con el display por hardware con el PIC24 y en C30 compiler :P

Hay un problema con los caracteres, que los "estira" a lo ancho, o mejor dicho que intercala un espacio entre lineas verticales... o sea algo así con una M

    debería verse               y se ve

     *        *                    *
     * *  * *                    *   *
     *   *   *                    *       *
     *        *                    *
     *        *                    *

Estoy analizando cómo funciona la función, a ver si puedo solucionarlo.... De todas formas, lo que veo que falta en la librería y no se me ocurre cómo hacerlo, es la función para imprimir valores. La función de tu fan controller está muy buena... me echas un cable con eso?
Ahora si estamos cerca de hacer que este currazo haga algo!! ja, ja, ja.
 
Un saludo y gracias!!

Desconectado MGLSOFT

  • Moderador Local
  • DsPIC33
  • *****
  • Mensajes: 7912
Re: PC FAN Controller con TFT 1,8" EDITADO 16-4-13
« Respuesta #52 en: 09 de Octubre de 2013, 22:57:36 »
Uso los módulos Input Capture que tiene el PIC24 para los conteos.
Todos los dias aprendo algo nuevo, el ultimo día de mi vida aprenderé a morir....
Mi Abuelo.

Desconectado ppyote

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 929
Re: PC FAN Controller con TFT 1,8" EDITADO 16-4-13
« Respuesta #53 en: 21 de Noviembre de 2013, 03:23:40 »
@Ppyote.... Lo tengo!  :-/ ha costado, pero finalmente me comunico con el display por hardware con el PIC24 y en C30 compiler :P

Hay un problema con los caracteres, que los "estira" a lo ancho, o mejor dicho que intercala un espacio entre lineas verticales... o sea algo así con una M

    debería verse               y se ve

     *        *                    *
     * *  * *                    *   *
     *   *   *                    *       *
     *        *                    *
     *        *                    *

Estoy analizando cómo funciona la función, a ver si puedo solucionarlo.... De todas formas, lo que veo que falta en la librería y no se me ocurre cómo hacerlo, es la función para imprimir valores. La función de tu fan controller está muy buena... me echas un cable con eso?
Ahora si estamos cerca de hacer que este currazo haga algo!! ja, ja, ja.
 
Un saludo y gracias!!

que orientación tiene la tft? horizontal o vertical?
para imprimir números, uso la función printf para convertir los valores en caracteres, como hacemos con un lcd normal y corriente, después sólo tienes que escribir los caracteres con la función  asignada a ello
en el video se puede ver perfectamente los valores

por cierto, no me por que, pero aún estando subscrito al post, no me lo notifica. por eso te pido perdón, no me había dado cuenta
PPyote... siempre estareis en mi corazon.... Te quiero Hermano...