DAvE
DAvE is a free tool by Infineon, which helps you to work with
Infineons' range of 8-, 16- and 32-Bit microcontrollers. It offering
intelligent wizards, that help you configure the chip to work the way
you need it and automatically generate C-level templates with
appropriate driver functions for all of the on-chip peripherals and
interrupt controls.

DAvE is a free tool. For more information, please visit www.infineon.com/dave
If you add or enable a A/D converter in DAvE for example, DAvE will
generate C sources to initialize this component, and insert a call in
the source which contains the function main(). You can add the DAvE
generated sources to your µVision project. The file which includes
main() must replace the standard WST_RXF_Main.c and you must merge some calls into your new 'DAvE' main source.
If you want to create a new DAvE project from scratch, you must:
- specify the source file in the form of <your product>MainDAVE.c
since this documentation section refers to that name as well as the Migration Guide.

Select the compiler used - Keil or Tasking, and verify if the Memory
Model matches the model you are using in your µVision project.
- open this generated file and insert just below "@Project
Includes" in the generated <your product>MainDAVE.c between
// USER CODE BEGIN and // USER CODE END the code fragment:
#ifdef USE_WST_RXF
#iinclude "WST.h"
#endif
- insert in the function main() between // USER CODE BEGIN
and // USER CODE END
the code fragment:
#ifdef USE_WST_RXF
#ifndef WST_COMPILER_INIT_AS_EMPTY_MACRO
WSTCompiler_Init();
#endif
WSTTarget_Init();
WSTRTOS_Init();
return WST_RXF_Main( 0, NULL );
#endif
- test your DAvE project; first without using the RXF and then with
using the RXF. Use the compiler define USE_WST_RXF in µVision to
enable the RXF. Your DAvE project should compile and work before you
start using the RXF with DAvE !
See also below on how to prevent the deployer from deployoing WST_RXF_Main.c
Different 'Main' Source
Because you are using a <your
product>MainDAVE.c you must no longer deploy the file WST_RXF_Main.c
so you must instruct the Deployer to skip this file. There are two ways to do this:
- the Deployer uses
two exception lists - one for in case you are using RXF libraries and
one for in case you are compiling the RXF files with your application.
Please add WST_RXF_Main.c to
- Rhapsody\Share\WST_RXF_V5\<your product>\Tools\WSTDeployer\WSTDeployerExcludedFilesLib.txt
- Rhapsody\Share\WST_RXF_V5\<your product>\Tools\WSTDeployer\WSTDeployerExcludedFilesNoLib.txt
- use the IDE project specific exception list WSTDeployerExcludedFiles.txt to specify all files which should not be deployed.
If you use multiple files which include main(), the result will be an error mesage like
Linking and locating to blinkyd.out
E 243: module kimbergermaindave.obj (KIMBERGERMAINDAVE_C): symbol '_main':
multiply defined
total errors: 1, warnings: 0
wmk: *** action exited with value 1.
Copyright (c) Willert
Software Tools GmbH. All rights reserved.