Autor Tema: memoria ROM insuficiente  (Leído 17838 veces)

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

Desconectado vasconinicolas

  • PIC16
  • ***
  • Mensajes: 124
Re: memoria ROM insuficiente
« Respuesta #45 en: 08 de Julio de 2008, 16:20:56 »
Me tira:

A #DEVICE required before this line

Cuando trato de complilar.. Aclaro que los archivos .c fueron todos Add al proyecto incluso los .h en la carpeta Headers... Se que es una tontera pero no se como definir eso..
vasco

EDITO: lo solucione poniendo #device PIC16F877 en cada libreria .c Ahora el problema es que no me reconoce instrucciones del CCS como lcd_putc.. me tira:
Undefined identifier  -- lcd_putc
Salute
« Última modificación: 08 de Julio de 2008, 17:08:35 por vasconinicolas »
"No hacen ciencia los países ricos,
Son ricos los países por hacer ciencia"

Desconectado firepic

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1130
    • JC Servicios
Re: memoria ROM insuficiente
« Respuesta #46 en: 08 de Julio de 2008, 17:43:18 »
Fíjate en "Configure>Select Device" a ver si el micro que aparece allí es el mismo que tú estás usando, si no es igual elige el correcto, o te dará errores.
Tienes que colocar en "Headers files" el archivo .h del micro, 16f877.h... y si tienes otro archivo de cabecera .h también añadelo ahí.
Luego en "Source Files" colocas el .c principal.
Muy importante: recuerda crear el proyecto en la misma carpeta de PICC\projects... y allí en esa misma carpeta coloca los .c que estás usando... luego cuando coloques los #include, debes tener cuidado con saber dónde está el archivo. Si, por ejemplo, estás usando la librería LCD.C que se encuentra en PICC\Drivers, entonces debes colocar:

Código: C
  1. #include <lcd.c>

Ahora bien, si vas a incluir otro archivo que está dentro de la misma carpeta PICC\projects, debes colocar:
Código: C
  1. #include "archivo.c"

Y además, si por ejemplo, estás definiendo alguna cosa que es necesaria para alguno de los archivos incluidos, las definiciones deben estar antes del #include. Por ejemplo, yo ahora estoy usando la librería flex_lcd.c, y estoy definiendo los pines a usar con el lcd en el programa principal, entonces coloco:

Código: C
  1. #include <16f877.h>      
  2. #include <float.h>              
  3. #device ADC=10
  4. #fuses HS,NOWDT,NOPROTECT,NOLVP,PUT,NOBROWNOUT
  5. #define LCD_DB4   PIN_B4
  6. #define LCD_DB5   PIN_B5
  7. #define LCD_DB6   PIN_B6
  8. #define LCD_DB7   PIN_B7
  9. #define LCD_RS    PIN_B1
  10. #define LCD_E     PIN_B2
  11. #define led                     PIN_B3
  12. #define Rg                      PIN_C3
  13. #use fast_io(A)
  14. #use fast_io(B)
  15. #use fast_io(C)
  16. #use fast_io(D)
  17. #use fast_io(E)
  18. #use delay(CLOCK=20000000)
  19. #use rs232 (BAUD=4800,RCV=Rg,FORCE_SW,STREAM=GPS)
  20. #use rs232 (BAUD=19200,UART,STREAM=PC)
  21. #include <flex_lcd.c>

Nota que la directiva para incluir flex_lcd.c está después de todos los define. También debe estar después del #use delay, pues ese archivo usa retardos. Vasco se paciente y no te desanimes, trabajar con CCS desde mplab para mí es lo mejor, te ayuda a mantener más ordenado el programa y como te he dicho ya varias veces puedes evaluar mejor cómo está trabajando el micro y cómo ejecuta las instrucciones.

Para saber si están todos los archivos incluidos correctamente, dale: "View>Project" y te saldrá el árbol del proyecto, con los .h y .c que están añadidos. Desde allí también los puedes añadir dandole click derecho del mouse sobre las carpetas.

Espero que puedas pronto resolver tu problema. Cualquier cosa la puedes postear.
Saludos, nos leemos!  :mrgreen:
"Por la presunción solo se ocasiona una lucha, pero con los que consultan juntos hay sabiduría" (Proverbios 13:10).
Visita Mi Sitio Web

Desconectado vasconinicolas

  • PIC16
  • ***
  • Mensajes: 124
Re: memoria ROM insuficiente
« Respuesta #47 en: 08 de Julio de 2008, 17:57:14 »
Fire, que mano que me estás dando, te lo agradezco muchisimo. Yo antes trabajaba con mplab en asm y me parecia lo mejor, pues simulo paso a paso.. luego podemos verlo en proteus claro está. De modo que en un ratito me pongo a revisar tus sugerencias y les cuento...  Repito, cuando trabajé en mplab me parecio de lo mejor solo que ahora recien me avivo que puedo combinarlo con el ccs..
Un abrazo!
vasco
"No hacen ciencia los países ricos,
Son ricos los países por hacer ciencia"

Desconectado firepic

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1130
    • JC Servicios
Re: memoria ROM insuficiente
« Respuesta #48 en: 08 de Julio de 2008, 18:10:28 »
Tranquilo viejo, para eso estamos. Bueno ya por hoy es todo lo que podré ayudarte porque tengo que salir...
Si llego temprano reviso a ver si has posteado algo, si no tendrá que ser para mañana en la mañan que me vuelva a conectar.
Te deseo éxito con tu proyecto! Y es cierto, o por lo menos también es mi opinión: lo mejor es el mplab. Espero puedas resolver los inconvenientes y empieces a divertirte programando C en mplab con el CCS... ya verás que es una gozada!
Saludos, nos leemos!  :mrgreen:
"Por la presunción solo se ocasiona una lucha, pero con los que consultan juntos hay sabiduría" (Proverbios 13:10).
Visita Mi Sitio Web

Desconectado vasconinicolas

  • PIC16
  • ***
  • Mensajes: 124
Re: memoria ROM insuficiente
« Respuesta #49 en: 08 de Julio de 2008, 20:38:01 »
Un éxito Fire, una maraviliaa, incluso ya voy encontrando errorcitos que estaban ocultos jejej. Gracias viejo, nos leemos en el próximo post.
Ta luegoooo
vasco
"No hacen ciencia los países ricos,
Son ricos los países por hacer ciencia"

Desconectado firepic

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1130
    • JC Servicios
Re: memoria ROM insuficiente
« Respuesta #50 en: 09 de Julio de 2008, 10:08:45 »
Felicitaciones Vasco!  :-/  :-/  :-/
Avisa cuando tu programa funcione ya correctamente. Con el mplab te será todo más fácil.
Saludos, nos leemos!  :mrgreen:
"Por la presunción solo se ocasiona una lucha, pero con los que consultan juntos hay sabiduría" (Proverbios 13:10).
Visita Mi Sitio Web

Desconectado Simon21

  • PIC18
  • ****
  • Mensajes: 302
Re: memoria ROM insuficiente
« Respuesta #51 en: 15 de Enero de 2013, 19:46:06 »
Hola a todos, tengo un problema con que me quedo sin lugar en la ROM.
Estuve leyendo este hilo y me fije en el call tree de ccs, alguien me puede explicar
como leer esto ??

Se ven todas las funciones e interrupciones y tengo varias columnas: Item, Page, Rom, Ram

Como debo leer dicha información para darme cuenta donde tengo el error en el programa
y poder optimizar el codigo en dicha zona ??

Saludos a todos, muy interesante todo lo que escribieron antes !
INGENIERIA ELECTRONICA
UNIVERSIDAD TECNOLOGICA NACIONAL

Desconectado ppyote

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 929
Re: memoria ROM insuficiente
« Respuesta #52 en: 15 de Enero de 2013, 20:02:52 »
Simon21... dale a donde pone rom y te ordenara de mayor a menor o de mensor a mayor todas las funciones que tengas, ordenadas respecto a la relacion de rom consumida por estas
lo mismo puedes hacer con la ramy demas...
PPyote... siempre estareis en mi corazon.... Te quiero Hermano...

Desconectado Simon21

  • PIC18
  • ****
  • Mensajes: 302
Re: memoria ROM insuficiente
« Respuesta #53 en: 15 de Enero de 2013, 20:06:16 »
Pero como interpreto esos numeros ??

Que sucede con las que dice "inline" ??
INGENIERIA ELECTRONICA
UNIVERSIDAD TECNOLOGICA NACIONAL


 

anything