AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

C-Header-Dateien einbinden

Ein Thema von Elko · begonnen am 17. Sep 2008 · letzter Beitrag vom 18. Sep 2008
 
Elko

Registriert seit: 2. Feb 2008
52 Beiträge
 
Delphi 7 Personal
 
#1

C-Header-Dateien einbinden

  Alt 17. Sep 2008, 23:39
Hallo Leute!
Ich habe ein (für mich) irgendwie unlösbares Problem: Eigentlich will ich ein funktionierendes C-Programm, in dem einige Funktionen stehen, drastisch "kürzen", indem ich die Funktionen in eine andere C-Datei auslagere und dann in das Hauptproramm einbinde. Jedoch klappt das bei mir irgenwie nicht: Ich habe das nach folgendem Schema gemacht:

Code:
// Main.c

#include <REGAN21.H> /* Register des AN21xx   */
#include <EZREGS.H> /* Externe Register des AN21xx */
#include "onewireHEAD.h"
...
Code:
// onewireHEAD.h

#ifndef onewire_H
#define onewire_H

extern xdata unsigned char scratchpad[9] _at_ 0x0122; // 0x0122 bis 0x012A
extern xdata unsigned char temperature[2] _at_ 0x012B; // 0x012B und 0x012C
...
extern unsigned char CalcCRC(unsigned char bytes[], unsigned char groesse);
extern void ReadTemp(unsigned char RomCode[8]);
#endif
Code:
// onewire.c

#include <REGAN21.H> /* Register des AN21xx   */
#include <EZREGS.H> /* Externe Register des AN21xx */
#include "onewireHEAD.h"


int myfunc(void){
return 0xAA;
}


unsigned char CalcCRC(unsigned char bytes[], unsigned char groesse){
...
    return crc;
}

void ReadTemp(unsigned char RomCode[8]){
...
}
Soweit so gut, aber jetzt kommt beim Linken bei allen Variablen, die in den Include-Dateien <REGAN21.H> und <EZREGS.H> enthalten sind, die Fehlermeldung "MULTIPLE PUBLIC DEFINITIONS"
Das Problem sehe ich darin, dass ich die darin enthaltenen Variablen sowohl in main.c, als auch in onewire.c brauche (sonst kommt die Meldung "undefined identifier"). Hat dafür jemand eine Lösung? :confused:

Damit es keine Missverständnisse gibt, hier hab ich diese Frage auch gepostet (es hat aber leider noch keiner geantwortet...).

Viele Grüße,
Stefan
Keyboard not found. Press any key to continue.
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:52 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz