Programación Específica > Microcontroladores

 Rutinas En Ensamblador

<< < (2/3) > >>

lalo_soft:
Eso es facil

EJ:

Lib1.h // aqui colocas los prototipos,otros includes,variables y constantes que maneja la
lib.

Lib1.c // aqui el primer include sera #include "lib1.h", luego el desarrollo de cada funcion especificada en el lib1.h


Por ultimo tenemos la app que usara la libreria.


ejemplo app.c:


#include "path\lib1.h" //path sera nesesario si la lib esta en un directorio distinto al de la app.

// aqui otros include que vallas a ocupar


void main (void)
{
  bla..bla
 

}

sspiegel:
Hola lalo_soft,

He provado de hacerlo como dices, pero esta vez me marca un error en el fichero .h sobre la palabra "void" diciendo "Expecting a (".

los ficheros que tengo son estos:

cpp.c :

#include "rut1.h"

extern void Inicio();

void main (void)
{
   Inicio();
}
---------------------------
rut1.h :

#include <16f877.h>
#device *=16;

public void Inicio();
---------------------------

rut1.c :

#include "rut1.h"

int valor=5;

public void Inicio(){
 //codigo
}
---------------------------

No se si sera del compilador de C o si todavia hago algo mal. Saludos,
Fran

lalo_soft:
¿por que tienes  definida la misma funcion en el *.h y *.c?

sspiegel:
Hola,

tengo definida la misma funcion en .h i en .c porque en el ejemplo que pusiste dentro del .c dice: "luego el desarrollo de cada funcion especificada en el lib1.h"
yo entiendo esto como que se ponen las cabeceras de las funciones en .h y el codigo de las funciones en el .c, que es como se suele hacer en otros compiladores de C. Saludos,
Fran

lalo_soft:
No es nesesario  colocarla en cpp.c ya que con eso esas dando una nueva definicion a lo que fue definido en el *.h, tampoco te aconsejo usar los pre public,extern ya que eso te
provocara confusion cuando migres a C++ que es el paso siguiente, por que varios compiladores ya soportan C++ para micros como el pic

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

[*] Página Anterior

Ir a la versión completa