hsk_libs-dev  163:b63ae088cc97
High Speed Karlsruhe XC878 library collection
 All Data Structures Files Functions Variables Typedefs Macros Groups Pages
HSK XC878 µC Library Developers' Manual


Welcome to the High Speed Karlsruhe (HSK) XC878 microcontroller (µC) developers' manual. This document is intended for those who want to perform library development.

This document contains all the library header and code documentation.

About This Document

This document is work in progress, so far the documentation for the libraries is mostly complete. Documentation of implemented applications is less so and like the applications still subject to a lot of change.

Project Layout

  • .hgeol
    • Line ending rules for version control
  • .hgignore
    • Regular expressions excepting files from version control
    • Distribution license
  • Makefile
    • Makefile to invoke the SDCC and doxygen toolchain
  • Makefile.local
    • Local non-revisioned Makefile for overriding default parameters
  • uVisionupdate.sh
    • Updates the µVision project's overlaying instructions
  • bin.c51/
    • C51 toolchain output produced by Keil µVision (safe to delete)
  • bin.sdcc/
    • SDCC compiler output (safe to delete)
  • conf/
    • Project configuration files
  • conf/doxygen.private
    • Doxygen setting changes to create the developer documentation
  • conf/doxygen.public
    • Basic doxygen settings, generates the user documentation
  • conf/doxygen.dbc
    • Doxygen settings to create documentation from DBC headers
  • conf/sdcc
    • SDCC configuration, contains basic CFLAGS and invokes version specific platform hacks
  • contrib/
    • This directory contains 3rd party documentation
  • contrib/ICM7228.pdf
    • Intersil ICM7228 8-Digit, LED Display Decoder Driver data sheet
  • contrib/Microcontroller-XC87x-Data-Sheet-V15-infineon.pdf
    • Data sheet for the Infineon XC87x series
  • contrib/XC878_um_v1_1.pdf
    • Infineon XC878 User Manual Version 1.1
  • contrib/sdccman.pdf
    • Small Device C Compiler Manual
  • doc/
    • Temporary Users' Manual build directory (safe to delete)
  • doc-dbc/
    • Temporary DBC C headers' documentation build directory (safe to delete)
  • doc-private/
    • Temporary Developers' Manual build directory (safe to delete)
  • gen/
    • Generated code e.g. the .mk files with build instructions
  • gen/dbc/
    • C headers generated from Vector DBCs (via scripts/dbc2c.awk)
  • hacks/
    • Storage directory for hacks that are pulled in depending on platform parameters like the SDCC version
  • html/
    • Contains the HTML version of these manuals
  • img/
    • Pictures included in this documentation
  • inc/
    • 3rd party headers
  • pdf/
    • Contains the PDF version of these manuals
  • scripts/
    • Contains build scripts used by the Makefile
  • scripts/build.sh
    • Generates the gen/build.mk file
  • scripts/cstrip.awk
    • Performs reformatting of C code for other scripts
  • scripts/dbc.sh
    • Generates the gen/dbc.mk file
  • scripts/dbc2c.awk
    • Generates C headers from Vector DBC files
  • scripts/filter.sugar.awk
    • Filters inline defines from the code for the doxygen toolchain
  • scripts/includes.awk
    • Used by scripts/build.sh to get the includes of a source file
  • scripts/overlays.awk
    • Used by uVisionupdate.sh to produce a list of ISR callbacks for LX51 Misc
  • scripts/sanity.awk
    • Performs prototype/function matching and complains about bad style issues like multiple prototypes for 1 function, or prototypes following a function definition
  • scripts/sdcc.sh
    • Generates the gen/sdcc.mk file from conf/sdcc
  • scripts/testver.sh
    • Used by scripts/sdcc.sh to make version comparisons
  • scripts/xml.awk
    • A command line XML parser/editor used by uVisionupdate.sh to update the µVision settings
  • scripts/templates.dbc2c/
    • Contains templates for scripts/dbc2c.awk output
  • src/
    • The project source code
  • src/hsk_.../
    • Directories with this prefix contain library code
  • src/doc/
    • This directory contains general documentation that is not specific to a library, application or a file, i.e. this chapter of the documentation
  • uVision/
    • ARM Keil µVision project files