Haz una pregunta
  Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos
Foros Registrarse ¿Olvidaste tu contraseña?

Temas similares

16/02/2013 #1


Problemas en programación con mikroC
Saludos a toda la comunidad.

Mi problema radica que estoy generando una señal por medio de un pic pero cuando programa mis 250 muestras de mi señal, al compilarlo me dice que no hay suficiente espacio en la memoria RAM como puedo
corregir este problema sin reducir mis datos, me había sugerido cambiarme a un banco con espacio suficiente pero no se como. ¿Podrían orientare?

Mi programa es el siguiente:

Código:
void main ()
{
//Variables
 int i;
 int ECGd1[250]={59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,60,60,62,63,65,66,68,70,73,75,77,80,82,84,86,89,91,92,94,95,97,97,98,98,98,97,96,94,92,90,87,84,81,78,76,73,70,67,65,63,61,60,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,58,57,56,54,51,48,46,43,40,37,35,32,31,30,29,31,36,43,53,65,78,93,109,125,142,159,176,191,206,220,232,241,249,253,255,254,252,248,243,236,228,220,210,200,189,177,165,153,140,127,115,102,90,78,66,55,45,35,27,19,12,7,3,1,0,6,21,38,53,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,60,61,62,64,66,68,71,73,76,79,82,85,88,91,93,96,99,101,103,105,106,107,108,108,108,107,106,105,103,101,99,96,93,91,88,85,82,79,76,73,71,68,66,64};

 //Configuracion
 TRISB=0;
 TRISC=0;
 TRISD=0;
 PORTB=0;
 PORTC=0;

//Cuerpo del programa
 while(1)
 {
 for (i=0;i<250;i++)
  {
  PORTD=ECGd1[i];
 // PORTD=Dr[i];
  Delay_us(1000);
  }
 }
}
16/02/2013 #2


¿Qué micro está utilizando?
18/02/2013 #3

Avatar de Saint_

Hola Armando Joaquin.
Como tus datos son constantes, en vez de usar la ram que tal si usas la memoria de programa, asi tendras espacio de sabra.
En MIKROC, la forma de declar costantes, tablas es para en caso tuyo.
const int ECGd1[250]={59,59,59,59,59,...};
29/12/2014 #4


ese es e codigo correcto...!!!
Estimados, estoy realizando ya hace tiempo un programa para controlar unos relés con un PIC16F88 a través de SMS y tengo problemas con los puerto A0, A1 Y A2, debido a que se encienden y luego al recibir cualquier mensaje de texto no se apagan.
No entiendo que podrá ser.



Código:
char Dato[67];
int   i,j;
void main() {

 PORTA=0;
 ANSEL=0x00;
 TRISA=0;
 UART1_Init(9600);
 Delay_ms(500);
 UART1_Write_Text("AT");
 UART1_Write(0x0D);
 Delay_ms(500);
 UART1_Write_Text("AT0");
 UART1_Write(0X0D);
 Delay_ms(500);
 UART1_Write_Text("AT+CMGD=1,1");
 UART1_Write(0X0D);


 
 while (1)
{
 if (UART1_Data_Ready())
 {
 for (i=0;i<=4;i++)
   {
    Dato[i] = UART1_Read();
   }
   if ((Dato[3]==0x54)) //Recibimos "CMTI"?
   {
    UART1_Write_Text("AT+CMGR=1");
    UART1_Write(13);
    delay_ms(100);
   }
 }
 

if (UART1_Data_Ready())
{
 for (i=0;i<=67;i++)
  {
    Dato[i] = UART1_Read();
  }
  if ((Dato[3]==0x47)) //Recibimos "CMGR"?
  {
    UART1_Write_Text("AT+CMGD=1");
    UART1_Write(13);

  }

}
        if (Dato[59]==0x30)                    //Si es 0
         {

            PORTA.F0=0;            //Apagamos el Puerto Verde.

         }
         else if  (Dato[59]==0x31)              //Si es 1
         {

            PORTA.F0=1;            //Encendemos el Puerto Verde.

         }

         if (Dato[61]==0x30)                    //Si es 0
         {

             PORTA.F1=0;            //Apagamos el Puerto Amarillo.

         }
         else if  (Dato[61]==0x31)              //Si es 1
         {

            PORTA.F1=1;             //Encendemos el Puerto Amarillo.

         }

         if (Dato[63]==0x30)                    //Si es 0
         {

           PORTA.F2=0;             //Apagamos el Puerto Rojo.


         }
         else if  (Dato[63]==0x31)              //Si es 1
         {

           PORTA.F2=1;            //Encendemos el Puerto Rojo.

         }


}
}
Respuesta
¿Tienes una mejor respuesta a este tema? ¿Quieres hacerle una pregunta a nuestra comunidad y sus expertos? Registrate

Foros de Electrónica » Diseño digital » Microcontroladores y sistemas embebidos

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO ©2011, Crawlability, Inc.