Autor Tema: Mi primer programa en C30 + simulación en Proteus  (Leído 4071 veces)

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

Desconectado ElVale

  • PIC10
  • *
  • Mensajes: 31
Mi primer programa en C30 + simulación en Proteus
« en: 18 de Diciembre de 2008, 07:22:14 »
El Hello World de los microcontroladores: encender y apagar un pin.

Código: [Seleccionar]
#include <p33FJ32GP202.h> /* DSPIC a utilizar */
#include <libpic30.h> /* Librería necesaria para __delay32() */

/* Bits de configuración (Ver Datasheet pag 209 y ver también el contenido de p33FJ32GP202.h)
   Estos bits también se pueden configurar dentro de MPLAB IDE en el menú Configure -> Configuration Bits */

_FOSCSEL(FNOSC_PRI);     /* Seleccionamos el Primary Oscillator*/
_FOSC(POSCMD_HS); /* Configuramos el Primary Oscillator como HS (High Speed) crystal */
_FWDT(FWDTEN_OFF);       /* Watch dog Timer OFF */

long Fcy = 16000000;     /* Frecuencia del cristal */

/* Función de retardo en milisegundos (Creada por mi :))*/
void delay_ms(long ms)
{
__delay32(ms*(Fcy*0.0005));
}

int main(void)
{

/* Configuración de puertos */
AD1PCFGL=0xFFFF;        /* Puertos análogos configurados como digitales (ver Datasheet pag 207) */
TRISB=0x0000;           /* Port B como salida */

 /* Main Program Loop */

 while(1)
 {
  PORTB=0;
  delay_ms(500);
  PORTB=1;
  delay_ms(500);
 }
 return(0);
}

Les adjunto la simulación en Proteus v7.4 SP3

Desconectado electronando

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 427
Re: Mi primer programa en C30 + simulación en Proteus
« Respuesta #1 en: 21 de Diciembre de 2008, 14:30:42 »
Funciona a la perfeccion la simulacion , que malo que no se pueda simular  :-/ los dspics 30f

Desconectado micro_cadaver

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 2102
    • blog microembebidos
Re: Mi primer programa en C30 + simulación en Proteus
« Respuesta #2 en: 26 de Diciembre de 2008, 13:25:52 »
podria utilizarlo salvo algunas opciones y recordando que la frecuencia en los 30f es Fosc/4 y en los 33f es Fosc/2

una observacion al amigo ElVale quien gustoso nos proporciono su programa:
#include <libpic30.h>      /* Librería necesaria para __delay32() */
en el help del dspic33f menciona que no es necesario un include para utilizar el __delay32, y lo he comprobado.
pero si es necesario para utilizar tus formulas de delay_ms

otra observacion es el uso de la palabra Fcy
en el datasheet encontraras esto:
Fcy = Fosc/2
donde Fcy es la frecuencia de operacion del pic,
el Fosc es la frecuencia del oscilador, en tu caso del cristal externo

por esto, cuando pones:
long Fcy = 16000000;     /* Frecuencia del cristal */

la palabra Fcy deberia ser Fosc. solo te lo digo para aclararte los terminos.

finalmente gracias por tu formula de uso del __delay32, me ayudo a superar un problema que tenía. saludos
« Última modificación: 26 de Diciembre de 2008, 15:13:09 por micro_cadaver »
a cosechar!!!... :P
pic32... ahi voy....
aguante el micro 16f84  !!!!

visita mi pagina: http://www.microembebidos.wordpress.com

Desconectado ROBERTOXX6

  • PIC10
  • *
  • Mensajes: 1
Re: Mi primer programa en C30 + simulación en Proteus
« Respuesta #3 en: 25 de Febrero de 2009, 02:50:59 »
Muchas gracias por el dato!!!!


Desconectado pampateam

  • PIC10
  • *
  • Mensajes: 2
Re: Mi primer programa en C30 + simulación en Proteus
« Respuesta #4 en: 31 de Marzo de 2009, 12:11:51 »
Funciona a la perfeccion la simulacion , que malo que no se pueda simular  :-/ los dspics 30f
hola, soy nuevo en los dsp, queria saber como hiciste para que te compile con el mplab.

tengo la version 8.20 del mplab, con el c30 instalado, y el proteus 7.4
pero el problema es que no tengo el gld ni el .h del 33fj32gp202.
lo reemplazaste por algun otro? o te hiciste uno vos
gracias