Benutzer-Werkzeuge

Webseiten-Werkzeuge


contiki:minimal-net-linux

Dies ist eine alte Version des Dokuments!


Contiki als Linux Prozess

Project Configuration File

Verwendung einer projektspezifischen Grundkonfiguration in Contiki

Die Reihenfolge mit der die Definitionen bei der Compilierung eingebunden werden ist die folgende:

  1. Definitionen in contiki-x.x/core/contiki-default-conf.h
  2. Definitionen in contiki-x.x/platform/xy/contiki-conf.h
  3. Definitionen in contiki-x.x/examples/your_working_folder/project-conf.h

Es ist meistens sinnvoll projektspezifische Änderungen über eine projektspezifische Konfigurationsdatei hinzuzufügen, statt Änderungen direkt in core oder platform vorzunehmen.

Ein Contiki Projekt kann dazu die optionale Konfigurationsdatei project-conf.h verwenden. Die Benutzung dieser Datei ist allerdings nicht voreingestellt sonder muss noch aktiviert werden. Zur Aktivierung sind die folgenden Schritte notwendig:

Schritt 1: Füge die project-conf.h Datei zum Makefile hinzu

Dazu muss die folgende Zeile zum Makefile des Projekts hinzugefügt werden:

 CFLAGS += -DPROJECT_CONF_H=\"project-conf.h\"

Weiterhin ist es sinnvoll einen Default-Wert für das Make-Target anzugeben.
Zum Beispiel so:

# Project specific compile target - start
ifndef TARGET
TARGET = minimal-net
endif
# Project specific compile target - end
 
CONTIKI = ../..
# Project specific config file - start
CFLAGS += -DPROJECT_CONF_H=\"project-conf.h\"
# Project specific config file - end
 
CONTIKI_WITH_IPV6 = 1

Schritt 2: Mache die project-conf.h Datei in Plattform bekannt

Um die projektspezifischen Einstellungen wirksam werden zu lassen muss in den allermeisten Fällen die Datei contiki/platform/minimal-net/contiki-conf.h angepasst werden. Nur in wenigen Fällen werden hier bereits projektspezifische Einstellungen korrekt geladen.

In den meisten Fällen werden projektspezifische Einstellungen gar nicht, oder erst am Ende der Plattformkonfiguration geladen. Wir müssen diese aber bereits am Anfang hinzufügen, damit die Abhängigkeiten korrekt aufgelöst werden.

...
 
#ifndef CONTIKI_CONF_H
#define CONTIKI_CONF_H
 
/*---------------------------------------------------------------------------*/
/* Include project specific config */
/* PROJECT_CONF_H might be defined in the project Makefile */
#ifdef PROJECT_CONF_H
#include PROJECT_CONF_H
#endif /* PROJECT_CONF_H */
/*---------------------------------------------------------------------------*/

Schritt 3: Anpassen der Datei project-conf.h

contiki-x.x/examples/your_working_folder/project-conf.h

/* 
*     My project-conf.h file 
*     for TARGET=minimal-net
*/
 
#ifndef PROJECT_CONF_H_
#define PROJECT_CONF_H_
 
#ifdef UIP_CONF_IPV6_RPL
#undef UIP_CONF_IPV6_RPL
#define UIP_CONF_IPV6_RPL           0
#endif /*UIP_CONF_IPV6_RPL*/
 
#ifdef RPL_BORDER_ROUTER
#undef RPL_BORDER_ROUTER
#define RPL_BORDER_ROUTER           0
#endif /*RPL_BORDER_ROUTER*/
 
#endif /* PROJECT_CONF_H_ */

Schritt 4: Recompile

  make clean
  make TARGET=xyz
Diese Website verwendet Cookies. Durch die Nutzung der Website stimmen Sie dem Speichern von Cookies auf Ihrem Computer zu. Außerdem bestätigen Sie, dass Sie unsere Datenschutzbestimmungen gelesen und verstanden haben. Wenn Sie nicht einverstanden sind, verlassen Sie die Website.Weitere Information
contiki/minimal-net-linux.1481282662.txt.gz · Zuletzt geändert: 2017/01/24 18:49 (Externe Bearbeitung)