With the brand new version of its Digital Application Virtual Engineer (DAVE) software, Infineon Technologies has focused on improving data models, methodology and user-friendliness in order to allow much quicker software development for its XMC microcontrollers (MCU).
Version 4 of the embedded development environment is available as a free download at www.infineon.com/dave. The Eclipse-based development platform guides and supports users during software development, from evaluation to the end product. For this, Infineon is providing, among other things, an extensive peripheral- and application-oriented, component-based code repository. In addition, DAVE generates the necessary code for the peripherals of Infineon’s XMC microcontrollers.
This complementary approach allows the user to employ available commercial third-party tools for ARM to translate the C source code configured and generated in DAVE, link it, and load it to the MCU. The main components of this modular, abstracted approach are:
• DAVE: Eclipse-based integrated development environment (IDE), including GNU C compiler, debugger, resource solver and code generation.
• XMC Lib: Static device driver layer in accordance with CMSIS and MISRA-C:2004, library of application programming interfaces (API) for XMC microcontroller peripherals.
• DAVE APPs: Graphically configurable, abstracting application-oriented software components.
• DAVE SDK: Software development kit for the modification or expansion of existing DAVE APPs or the development of new DAVE APPs.
• Examples: Collection of examples that are also intended for further use. These encompass applications on the basis of XMC Lib and DAVE APPs.
• Third parties: XMC Lib and the code generated with DAVE are suitable for use with a compiler from, for example, GCC, ARM, Tasking or IAR, and can be used with standard development environments such as Altium, ARM/Keil, Atollic, IAR Systems and Rowley.
In addition to improved operability and graphics, Infineon has introduced novel functions such as DAVE APP Tree Dependency and Pin Assignment View. The latter, for instance, provides a clear graphical depiction of the manual pin assignment on the selected package.
Improvements in detail
One of the measures to improve the reuse of the software and components available in DAVE was the introduction of a static device driver layer known as XMC Lib. It is subordinated to the DAVE APPs, but can also be used independently in standard third-party development environments. Both XMC Lib and DAVE APPs with the graphical user interface offer optimised software components that allow the user to program quickly and with hardware abstraction.
The new software layer means that the DAVE APPs do not access the microcontroller registers and peripheral registers directly, but instead use the applicable XMC Lib API. This not only increases reusability, but also improves the clarity and readability of the source code generated. This is enhanced by allowing users to freely define user labels for the DAVE APP instance in question. User labels serve as handlers (a pointer to the object) that let DAVE APP methods (APIs) be applied to the desired DAVE APP instance.
DAVE contains a resource solver that allows users to easily program even complex applications on or near the hardware level by means of graphical configurations and combinations of DAVE APPs and XMC Lib. Here, the developer first defines the necessary resources logically (virtually); the resource solver then assigns the logical resources to the physical hardware resources of the respective microcontroller. The resource solver follows the ‘constraint logic programming’ method while doing so. Based on this, DAVE generates easily readable and comprehensively documented source code that includes header files, initialisation code, and the actual functions that Infineon provides for further licence-free use.
With the new DAVE SDK, the user can modify and expand existing DAVE APPs and also develop completely new ones, allowing them to construct their own modular software repository.
DAVE SDK is an independent Eclipse instance that is part of the DAVE installation package. This allows the expansion of the features DAVE APPs have to offer – for example, the addition of communication stacks that the developer can simply incorporate into the application. In principle, DAVE SDK can also be used without XMC microcontroller resource definition. For example, static libraries of any kind can be configured using a graphic user interface, thus simplifying their reusability.
Breaking with the past
Unfortunately, the improved system performance and response that come with DAVE v4’s optimised data models for chip configuration and resource management, have resulted in incompatibility with the previous development environment and DAVE APPs. Infineon has endeavoured to ease the transition, though, with an extensive package for a quick introduction or transition to the new version that includes sample projects for XMC Lib and DAVE APPs, videos, tutorials, application notes, and migration guidelines for the further use of configured and generated source codes with a third-party tool. DAVE and commercial ARM development environments work hand in hand during this process.
|Tel:||+27 11 706 6099|
|Fax:||+27 11 706 9049|
|Articles:||More information and articles about Infineon Technologies|
© Technews Publishing (Pty) Ltd | All Rights Reserved