Autor Tema: ayuda urgente  (Leído 7021 veces)

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

Desconectado akelaver

  • PIC10
  • *
  • Mensajes: 21
ayuda urgente
« en: 21 de Septiembre de 2006, 22:42:27 »
 hola
necesito ayuda ya que no he podido ni siquiera hacer parpadear un led jaja y como creo q varios de ustedes ya lo han hecho quisiera saber como lo han logrado. ya he grabado el dspic30f2010 y lo he conectado pero casi estoy seguro de que me faltan elementos q conectar o pines y en verdadsa q no tengo idea

por su ayuda gracias
y saludos desde mexico

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: ayuda urgente
« Respuesta #1 en: 22 de Septiembre de 2006, 02:25:43 »
Dinos cómo lo tienes conectado o pon aquí el dibujo de tu esquema y pega el programa que estás usando, a ver si podemos ayudarte.

Desconectado akelaver

  • PIC10
  • *
  • Mensajes: 21
Re: ayuda urgente
« Respuesta #2 en: 22 de Septiembre de 2006, 16:35:01 »
aqui esta un comprimido con el esquematico y encuanto al codigo es el mismo q publicara sispic hace tiempo

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: ayuda urgente
« Respuesta #3 en: 23 de Septiembre de 2006, 04:06:58 »
Veo que utilizas oscilador externo en vez de cristal de cuarzo y que no tienes tensión en MCLR, por lo que habrá que comprobar si los fuses que utilizas tienen en cuenta esas consideraciones.
A ver ese código, pégalo por aquí.

Desconectado akelaver

  • PIC10
  • *
  • Mensajes: 21
Re: ayuda urgente
« Respuesta #4 en: 25 de Septiembre de 2006, 17:33:37 »
he aqui el codigo

 #define __dsPIC30F2010__
 #include <p30fxxxx.h>
_FOSC(CSW_FSCM_OFF & HS);


 int main ()
  {unsigned char a,x,y;

  TRISB=0;

  uno:

   
   PORTB=0x1; 
   retardo(x); 
   PORTB=0x0;
   retardo(x); x++;
   goto uno;
 
 }

   int retardo (int x)
  {unsigned char a,b,c;

         for(a=0; a< x; a++){
         
                          for (b=0 ; b <  255 ; b++){  for (c=0 ; c <  10 ; c++){}   }
          }

  }

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: ayuda urgente
« Respuesta #5 en: 26 de Septiembre de 2006, 02:48:28 »
No tengo claro que la línea en la que configuras el oscilador sea la correcta, pero prueba a añadir esta línea también:
 _FBORPOR(PBOR_ON  & PWRT_OFF & MCLR_DIS);

Por otra parte, yo haría un retardo conocido en mis primeras pruebas. No sabemos si con el retardo que has implementado, el led parpadea tan rápido que ni lo ves parpadear.

Ya nos cuentas.

Desconectado psmemo

  • PIC10
  • *
  • Mensajes: 9
Re: ayuda urgente Aqui mi problema
« Respuesta #6 en: 27 de Septiembre de 2006, 16:47:38 »
Saludos yo tampoco puedo encender un led !!! estoy usando el 30f4013, con cristal de 10MHZ, los tres pines de VDD conectados, asi como las VSS conecte tambien las Avdd y Avss probe con la resistencia de 100 entre VDD y AVdd, y tampoco funciono, uso el programa publicado por SISPIC, y la modificacion que recomendo Nocturno, ademas de desabilitar el WDT, el C30 lo compila al 100% sin warnings ni errores, logre programar con un JDM y el WINPIC800.

La configuracion que pongo para el cristal es HS

Cuando programo con el WINPIC800.

SI reconoce el dsPic30f4013
Si lo borra
Si lo programa al 100%, al menos eso aparece en el WINPIC800

despues de grabarlo.

Si lo LEE al 100%
Al verificar al 100% marca todo en OK

Esto significa que si esta grabado cierto?

A que acreditan que no funcione........ :(

**************************************
     #define _dsPIC30F4013_
     #include <p30fxxxx.h>
    _FOSC(CSW_FSCM_OFF & HS);
    _FWDT(WDT_OFF);
***************************************
 
El resto es el programa de SISPIC

No tengo idea que este pasando.

Gracias por su ayuda!!!

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: ayuda urgente
« Respuesta #7 en: 27 de Septiembre de 2006, 17:08:48 »
¿Tienes una resistencia a Vdd desde MCLR?

Desconectado akelaver

  • PIC10
  • *
  • Mensajes: 21
Re: ayuda urgente
« Respuesta #8 en: 27 de Septiembre de 2006, 18:00:03 »
pues yo aun no he conseguido hechar andar lo del led y sigo creyendo que me faltan pines que conectar
a y otra pregunta los comandos y directvas de c para pics y dspics sopn las mismas?
de ser asi donde las puedo conseguir

nocturno si me pudieras mandar un esquematico cde como conectar el dspic te lo agradeceria muchisimo


gracias y saludos desde mexico

Desconectado psmemo

  • PIC10
  • *
  • Mensajes: 9
Re: ayuda urgente
« Respuesta #9 en: 28 de Septiembre de 2006, 02:58:11 »
Asi es NOCTURNO, olvide mencionarlo, si, la resistencia esta bien puesta, y me he asegurado que tenga los 5V, se te ocurre alguna otra cosa?

Al igual que akelaver, me uno a su peticion, si tuvieras un diagrama el mas sencillo pero que este funcionando, de verdad te lo agradeceria.

Por cierto, sobre la grabacion con el WINPIC800, lo que te comento indicaria que el dsPIC fue programado con exito?

Muchas gracias por tu ayuda !

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: ayuda urgente
« Respuesta #10 en: 28 de Septiembre de 2006, 03:06:52 »
Es igual de simple que conectar un PIC. De todas formas, ya que insistís, os pongo el esquema básico:


Y sí psmemo, tu dsp está bien grabado.

Desconectado psmemo

  • PIC10
  • *
  • Mensajes: 9
Re: ayuda urgente
« Respuesta #11 en: 29 de Septiembre de 2006, 02:58:27 »
Gracias por tu ayuda Nocturno, pero sigo sin lograr encender el led, crees que pueda estar configurando mal el puerto? estoy usando el puerto B, tal cual el programa de SISPIC ?

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: ayuda urgente
« Respuesta #12 en: 29 de Septiembre de 2006, 03:31:33 »
No veo nada raro en tu programa. Debo tener en el disco duro de casa el primer programa que hice para dsPIC que tamibén era de parpadeo de led. A ver si cuando llegue lo busco y te lo pego aquí.

Desconectado psmemo

  • PIC10
  • *
  • Mensajes: 9
Re: ayuda urgente
« Respuesta #13 en: 29 de Septiembre de 2006, 04:58:11 »
Nocturno, de verdad muchas gracias por las atenciones, por aqui estare esperando el codigo muchas gracias de verdad !!!

Saludos !!!

Desconectado akelaver

  • PIC10
  • *
  • Mensajes: 21
Re: ayuda urgente
« Respuesta #14 en: 02 de Octubre de 2006, 18:57:52 »
 perdon por la ausencia, pero gracias a tu ayuda nocturno ya he logrado hacer parpadear el led y otro programita q hace la luces del auto fantastico aunque en el solo pude configurar el puerto b y cuando lo quise hacer para 12 led junto con el puerto e no lo he conseguido aqui pego el codigo yo digo q la configuracion del PORTE es la q tengo mal

#include <p30f2010.h>
_FOSC(CSW_FSCM_OFF & XT);
_FBORPOR(PBOR_ON  & PWRT_OFF & MCLR_DIS);

int main()   
   {   
   unsigned char x=10;
   TRISB=0;     
   TRISE=0;
ciclo:      
       PORTB=1; 
       retardo(x);   
        PORTB=2;
       retardo(x);
       PORTB=4;
       retardo(x);   
         PORTB=8;
       retardo(x); 
       PORTB=16;
       retardo(x); 
       PORTB=32;
       retardo(x);
      PORTE=1; 
       retardo(x);   
        PORTE=2;
       retardo(x);
       PORTE=4;
       retardo(x);   
         PORTE=8;
       retardo(x); 
       PORTE=16;
       retardo(x); 
       PORTE=32;
       retardo(x);
      PORTE=16;
       retardo(x);
       PORTE=8;
       retardo(x); 
       PORTE=4;
       retardo(x);
       PORTE=2;
       retardo(x);
      PORTE=1;
      retardo(x);
      PORTB=32;
      retardo(x);
      PORTB=16;
       retardo(x);
       PORTB=8;
       retardo(x); 
       PORTB=4;
       retardo(x);
       PORTB=2;
       retardo(x);     
       goto ciclo;
   }

int retardo(int x)
  {
   unsigned char a,b;

         for(a=0; a< x; a++)
           {
                 for (b=0 ; b <  100 ; b++){}
            }

  }

disculpen lo largo del codigo pero no logre hacerlo funcionar con corrimientos jeje

encuanto al codigo del parpadeo aqui lo pongo es el q me dio resultado

 #include <p30f2010.h>
_FOSC(CSW_FSCM_OFF & HS);
_FBORPOR(PBOR_ON  & PWRT_OFF & MCLR_DIS);

int main ()
  {unsigned char a,x,y;

  TRISB=0;

uno:

   PORTB=0x1; 
   retardo(x); 
   PORTB=0x0;
   retardo(x+1); x++;
   goto uno;
 
 }

int retardo (int x)
  {
   unsigned char a,b,c;

         for(a=0; a< x; a++)
           {
                 for (b=0 ; b <  100 ; b++){}
            }

  }

saludos desde mexico