Autor Tema: ¿hasta cuantas variables soporta C18?. JAVIER  (Leído 1499 veces)

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

Desconectado JavierPIC18

  • PIC10
  • *
  • Mensajes: 5
¿hasta cuantas variables soporta C18?. JAVIER
« en: 23 de Junio de 2007, 19:46:10 »
Me gustaria saber que cantidad de variables se pueden definir o declarar en lenguaje C, (compilador  c18), ya que estoy desarrollando un programa y al declarar una nueva variable de cualquier tipo me sale el siguiente error:

ERROR-Section 'MATH_DATA' Can not fit the section. section 'MATH-DATA' lenght = 0x00000002

Si alguien sabe o me puede aclarar que significa lo anterior y como hago para que me permita ingresar mas variables. les agradesco.

gracias

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: ¿hasta cuantas variables soporta C18?. JAVIER
« Respuesta #1 en: 23 de Junio de 2007, 19:55:20 »
1) Puede definir tantas variables como cantidad de ram dispongas
2) El error que te da es porque has definido variables en el ACCESBANK de tu PIC18 y por eso te da el error.  El C18 usa la access ram como espacio temporal para los cálculos matemáticos.  Si reubicas algunas variables en el banco1 no debieras tener inconvenientes.

Saludos
- La soberbia de un Einstein es entendible.. la de un salame es intolerable (A.Dolina)
- En teoría no hay diferencia entre la teoría y la práctica. En la práctica... si la hay.
- Lee, Lee, Lee y luego pregunta.(maunix)
- Las que conducen y arrastran al mundo no son las máquinas, sino las ideas (V. Hugo)
- Todos los hombres se parecen por sus palabras; solamente las obras evidencian que no son iguales.(Moliere)
- Todo debería ser hecho tan simple como sea posible pero no mas simple que eso.(A.Einstein)

Desconectado JavierPIC18

  • PIC10
  • *
  • Mensajes: 5
Re: ¿hasta cuantas variables soporta C18?. JAVIER
« Respuesta #2 en: 04 de Julio de 2007, 13:51:29 »
Gracias Maunix, que bien que alguien me contesto, tengo otra duda, resulta que estoy trabajando con interrupciones una por interrupción en el bit 0 del puerto B y otra por desbordamiento en el timer 0, he consultado con micro_cadaver como se manejan las inetrrupciones y me salio un problemita el cual es:
resulta que cuando retorna de la interrupcion el tiene que evaluar si una variabla llamada pulsos es == a 2 si es así desabilita todas las interrupciones para posteriormente hacer un calculo, la instruccion que ejecuto es la sigiente

1.    While(1){
2.    if (pulsos ==2){     //desabilito interrupciones
3.    INTCON = 0X00
4.    }

bueno el espera en este ciclo hasta que ocurra la interrupcion pero digamos que cuando la interrupcion ocurrio el se encontraba