This page contains a selection of frequently asked questions and respective answers.
You may search with <CTRL> F to find relevant topics.
- When Starting the debugger error messages about setting of breakpoints appear.
- There are no DAVE Apps in the App selection view.
- Network connection error when trying to download or update DAVE Apps, plug ins or example projects?
- Where are Example projects that use DAVE Apps?
- What is the local library store?
- Is it possible to speed up the build time?
- What is the difference between the Import function >Import >Infineon >DAVE Project and >Import >General >Existing Project?
- Build Problems, Build process is aborted immediately with message: in <path> no such file or directory.
- Is there a support contact for DAVE™?
- Is there support for PRO-SIL™?
- Is DAVE generated code MISRA compliant?
- Is it possible to use DAVE™ as plug in other/ existing Eclipse environments?
- Is it possible that DAVE™ generated code can be imported in other tools?
- Is there a I/O Mapping tool?
- Is there a view that shows the used / assigned pins and other chip resources?
- Are there also Example Projects?
- Which Tool providers support the XNMC4500 already today?
- How can the code generated by DAVE be included / combined with existing SW or SW components/ middle ware solutions from other vendors?
- Is the CMSIS Layer for the XMC4500 series also available?
- Will the full data & instruction trace capability be available also in the smaller derivatives/smaller packages?
- Will the DAVE App documentation also available as separated standalone documentation, e.g. pdf file?
- How can external interrupts created?
- Why is in the resource mapping view the resource name of the required slice resource in the PWMSP001 App not indexed; example below should be slice0?
- How can the stack size defined?
- Why is there no warning in case the user doesn’t define an interrupt function with the name defined in the Interrupt App, NVIC002 App?
1. When Starting the debugger error messages about setting of breakpoints appear.
The Cortex M4 in XMC4500 supports 5 HW breakpoints in case more HW Breakpoints are required an error message appears. The number of required HW breakpoints cans artificial increase when the same source file name is used in different projects and in all files breakpoints are set. What to do: remove breakpoints from the other projects; accept error messages then less breakpoints will be set. A license for Flash breakpoints can be obtained from Segger (supported in the next DAVE™ release). In future a breakpoint filter for the active breakpoint will be implemented.
2. There are no DAVE Apps in the App selection view.
please check the following point Download DAVE Apps to the local library store: > Help >Install App Library >DAVE Apps Library Manager Ensure that the active project is upgrade to a DAVE CE project: >DAVE >Upgrade DAVE CE Project If download of DAVE Apps form the internet doesn’t work, download them as zip File from the DAVE support page: www.infineon.com/dave-support.
3. Network connection error when trying to download or update DAVE Apps, plug ins or example projects?
In some networks eclipse will prompt connection problems. In this case disable all kind of VPN connections and change the connection preferences as shown below:
Click “Window” , “Preferences”, >General >Network Connections
Within a network that uses a proxy server to access the internet the following setting is required:
4. Where are Example projects that use DAVE Apps?
Example projects can be downloaded similar to DAVE Apps from the internet:
>Help >Install App Library >DAVE Project Library Manager
For specific example projects the category tree or keywords can be used. The selected example is downloaded into the project and to the local library store. Shortly there will be also an option to load projects from the local library store into the workspace, currently the project has to be re-downloaded when is required again.
5. What is the local library store?
The local library store is a place in the <user folder> to stor downloaded DAVE Apps and Example projects. The default location is defined in.
>Windows >Preferences >Dave >Library Manager
It can be changed to a different location. After changing DAVE™ has to be restarted to make the change effective. If the new Library store is empty, DAVE Apps have to be downloaded again. Working with different library store is a way to keep different DAVE Apps (versions) separated.
6. Is it possible to speed up the build time?
7. What is the difference between the Import function >Import >Infineon >DAVE Project and >Import >General >Existing Project ?
8. Build Problems, Build process is aborted immediately with message: in <path> no such file or directory.
9. Is there a support contact for DAVE™?
There are the following support options:
- A DAVE™ support page: www.infineon.com/dave-support (this page can be directly accessed from DAVE™ This page contains latest information about Tutorials, downloads, release notes, third party support and a FAQ section.
- Email hotline: email@example.com
- A tracking system to file and track problems will go online soon
- Direct contact of Infineon FAEs or Distribution FAEs.
10. Is there support for PRO-SIL™?
11. Is DAVE generated code MISRA compliant?
12. Is it possible to use DAVE™ as plug in other/ existing Eclipse environments?
DAVE™ consist of following Eclipse feature plug ins:
DAVE™ MBS (Builder for the ARM GCC)
DAVE™ Library manager (to download and manage DAVE Apps Library
DAVE™ IDE (new project wizard, project and workspace management)
DAVE™ CE (Code Engine, to generate the code)
For using the autocode generation features only the plugins DAVE™ CE and DAVE™ Library Manager are required. They can be installed from:
Current restrictions: these plugins are currently only tested for DAVE™ and we have not tried them together with other plugins. It is planned to provide a tested plugin version of the Code generation and library management functionality by end of this year.
13. Is it possible that DAVE™ generated code can be imported in other tools?
In general, the generated code is tested for GCC, ARM Realview, IAR and TASKING compiler.
There is currently already a solution form Keil for MDK available: This is a plug in for DAVE™ that provides the option to create µVision project file from of DAVE™ which allows seamlessly using the DAVE™ generated code in µVision MDK: http://www.keil.com/appnotes/docs/apnt_227.asp
The Altium TASKING ARM VX toolset provides a project import function for a DAVE™ project. IAR and Atollic plan to provide a project import function by mid of 2012. Atollic also plans to use the code generation plug directly in their tool chain: Atollic TrueStudio
14. Is there a I/O Mapping tool?
Yes there is the option to do a manual pin assignment. This means the pad signals from the various DAVE Apps can be manually predefined to which I/O Port/pin they should be mapped. The solver uses that as input constraints for the complete resource mapping (assignment of DAVE Apps to peripherals and assignment of not manually mapped I/O signals).
This manual pin mapping is currently available as table view; a graphic view with different optimization options is planned.
15. Is there a view that shows the used / assigned pins and other chip resources?
Yes in DAVE™ tool box bar the is a button “Resource Mapping Information”.
Behind this button there is a table view of the complete pin assignments, the assigned HW resources (in resource group terms), plus the used DAVE Apps and respective version and the connections of virtual HW signals.
All tables can be exported to excel.
16. Are there also Example Projects?
DAVE™ also provides access to an online Example Project Library.
Press: >Help >Install DAVE Apps / Example Library
Then select: DAVE Project Library Manager (screen shot)
Then example projects can be selected and downloaded. This library will contain typical example projects for each DAVE App but also complex examples that cover complete solutions. The number of example projects will continuously increase.
17. Which Tool providers support the XNMC4500 already today?
The complete list can be found at: www.infineon.com/xmc-swt
All listed tool vendors provide already today’s support for the XMC4500 series, The SW vendors provide at least the RTOS and some communication stacks, but can provide their entire suite with a lead time of about 4 to 8 weeks.
18. How can the code generated by DAVE be included / combined with existing SW or SW components/ middle ware solutions from other vendors?
Here we have to distinguish between following cases:
Case 1: The existing SW doesn’t use peripheral or pin resources of the XMC4500 series:
No restrictions, this SW can be combined with the Code generated by DAVE™ without any issues.
Case2: Combine DAVE™ with an RTOS.
Restrictions for DAVE Apps that are designed for RTOS support (e.g. Communication Apps).
These Apps are provided in two modes, RTOS mode and non RTOS mode. In RTOS mode they are designed to use the CMSIS RTOS API, if the used RTOS supports this API then there should be no problem. There will be soon a DAVE RTOS App that provides the ARM RTX (source code) and in a few months a CMSIS RTOS wrapper for FreeRTOS is planned.
If the used RTOS has a different API, the respective DAVE Apps cannot be used in RTOS mode, then most of them can be used in non RTOS mode. The user also has to make sure not to use an App that requires the system timer, as this is often used by the RTOS. App support for other RTOS implementation is planned based on market request.
Case 3: The existing SW uses Peripheral and pin resources.
Normally this SW can be used together with DAVE™ generated without restrictions as long as there is no HW resource conflict (the existing SW uses the same HW resources as the DAVE™ generated code). To avoid this there will be a functionality implemented that allows to reserve specific HW resources for non DAVE™ generated SW. In this case the DAVE™ generated code will not create conflicts. This functionality is planned for July/August 2012.
19. Is the CMSIS Layer for the XMC4500 series also available?
20. Will the full data & instruction trace capability be available also in the smaller derivatives/smaller packages?
21. Will the DAVE App documentation also available as separated standalone documentation, e.g. pdf file?
It is possible to create the App documentation as rtf file; we have done this for a few Apps when we imported the generated code into other tool chains. Once we have achieved a certain stability of the DAVE Apps documentation we plan to create for the major Apps a standalone documentation that will then be provided on the web (www.infineon.com/dave-support).
22. How can external interrupts created?
23. Why is in the resource mapping view the resource name of the required slice resource in the PWMSP001 App not indexed; example below should be slice0?
Correct, following to our conventions, the name of this required resource should be slice0 because conditionally to the required resolution and PWM frequency two CCU slice resources are required, so both should be indexed. However this name has no matter on the functionality. Its purpose is, that the user easily understand what are the required resources. We plan to correct this name to slice0 in a future update.
24. How can the stack size defined?
The stack size is defined in the linker script file. The linker script file is created upon new project creation and has the extension *.ld. Within the linker script file there is a symbol “ stack_size” Tgis is set per default to 2048 Bytes. The uses can change this value in the linker script file.
25. Why is there no warning in case the user doesn’t define an interrupt function with the name defined in the Interrupt App, NVIC002 App?
The mechanism in DAVE when creating an interrupt with the NVIC002 App is as follows.
- The solver assigns an appropriate interrupt note depending to the connected event signal
- The name of the interrupt handler function is defined by the note (vector table in the startup.s file)
- During coded generation in DAVE™ the interrupt handler function name will be mapped to the symbol the user has defined in the UI of the NVIC002 App (because the interrupt node determined by the solver may vary)
#define<usersymbol> <vectornodesymbol> </vectornodesymbol></usersymbol>
There is no build error if the user doesn’t define a function with the user symbol because there is already a weakly definition for each interrupt handler in the startup.s.
Code generation in DAVE™ always creates the required *.c and*.h file freshly therefore it doesn’t make sense to provide a generated function body where the user can add his own code. The user code would be overwritten upon a new generation process is executed.
The only way to find out that the user has forgotten to define his interrupt Service Handler is via debugging, in this cases the CPU goes in an endless loop of the weakly defined interrupt service handler.