DAVE™ Forum Discussions
You should see an update available notification next time you open DAVE4.
The update site updates DEVICE_PACK to v2.2.10, which as a major change includes new version of XMCLib v2.1.24 (solving issue https://www.infineonforums.com/threads/6804-XMC-Lib-I2C-error-in-v2.1.22) and CMSIS v5.6.0.
Additionally several device descriptions have been fixed and support for XMC1404_Q40 is added.
More details in attached release notes Show Less
Using the XMC4400, we have two separate programs:
A bootloader program that starts at 0x0800 0000
Our main App that starts at 0x0800 4000
I want DAVE to:
1. Erase the entire chip
2. Program the bootloader on chip
3. Program the app on chip
Right now, if I program the App, it erases the entire chip first (which I don't want, because this also erases the bootloader). Is there a way to get DAVE to program .hex files without erasing the chip first?
Show LessHi,
I'm trying to run the sample "200 W Transmitter_Firmware" that comes with "Würth Elektronik 200W Development Kit",
but I get the following error.
What are the possible causes?
<Device used>
・Würth Elektronik 200W Development Kit
<Debugger>
・XMC™ Link
<Tool>
・Dave™ 4.5.0
To begin programming my development board that has an XMC1302, I downloaded DAVE, SEGGER J-Link, and MemTools. I initially tried programming by configuring things in the DAVE debug settings, like changing the executable lines for the GDB J-Link. After, I tried going into the SEGGER J-Link files and attempting to dictate what device I am trying to program to. As of right now, I am working with MemTools, changing the BMI, and trying to switch it out of its default asc_bsl to the debug state. In Dave, the debugger is saying that I am still not in the right BMI, and when trying to compile and debug the code, I am running into the error that says "Could not determine GDB Version after sending," which I had set it as J-Link GDB ServerCL. Any advice on how to fix this?
Thanks.
Show LessI am finding that in Dave 3.1.10, if I go to change the compiler optimization level of a single source file in the project, that the part of the makefile that should run the -objcopy,-objdump, and -size binutils for the whole project seems to somehow get skipped over, and the .hex and .lst files for the project do not get generated from the .elf file. As well, the arm-none-eabi-size binutil does not get run. I find that I can run them myself manually from the Windows command line.
To reproduce this:
First, import the IO003_Example1 DAVE Project from the local library store. Then go ahead and build it. Notice the console output with expected normal behavior:
'Building file: ../Main.c'
'Invoking: ARM-GCC C Compiler'
"C:\DAVE-3.1.10\ARM-GCC/bin/arm-none-eabi-gcc" -DDAVE_CE -DUC_ID=4502 -I"C:\DAVE-3.1.10\eclipse\/../CMSIS/Infineon/XMC4500_series/Include" -I"C:\DAVE-3.1.10\eclipse\/../CMSIS/Include" -I"C:\DAVE-3.1.10\ARM-GCC/arm-none-eabi/include" -I"C:\DAVE-3.1.10\eclipse\/../emWin/Start/GUI/inc" -I"C:\Users\kjensen.QDUSA\Develop\DAVE 3.1.10 Workspaces\Default\IO003_Example1\Dave\Generated\inc\LIBS" -I"C:\Users\kjensen.QDUSA\Develop\DAVE 3.1.10 Workspaces\Default\IO003_Example1\Dave\Generated\inc\DAVESupport" -O0 -ffunction-sections -Wall -std=gnu99 -mfloat-abi=softfp -Wa,-adhlns="Main.o.lst" -c -fmessage-length=0 -MMD -MP -MF"Main.d" -MT"Main.d Main.o" -mcpu=cortex-m4 -mfpu=fpv4-sp-d16 -mthumb -g3 -gdwarf-2 -o "Main.o" "../Main.c"
'Finished building: ../Main.c'
' '
'Building target: IO003_Example1.elf'
'Invoking: ARM-GCC C Linker'
"C:\DAVE-3.1.10\ARM-GCC/bin/arm-none-eabi-gcc" -T"../IO003_Example1.ld" -nostartfiles -L"C:\DAVE-3.1.10\eclipse\/../CMSIS/Infineon/Lib" -L"C:\DAVE-3.1.10\eclipse\/../Examples/Lib" -L"C:\DAVE-3.1.10\eclipse\/../emWin/Start/GUI" -Wl,-Map,"IO003_Example1.map" -mcpu=cortex-m4 -mthumb -g3 -gdwarf-2 -o "IO003_Example1.elf" "@makefile.rsp"
'Finished building target: IO003_Example1.elf'
' '
'Invoking: ARM-GCC Create Flash Image'
"C:\DAVE-3.1.10\ARM-GCC/bin/arm-none-eabi-objcopy" -O ihex "IO003_Example1.elf" "IO003_Example1.hex"
'Finished building: IO003_Example1.hex'
' '
'Invoking: ARM-GCC Create Listing'
"C:\DAVE-3.1.10\ARM-GCC/bin/arm-none-eabi-objdump" -h -S "IO003_Example1.elf" > "IO003_Example1.lst"
'Finished building: IO003_Example1.lst'
' '
'Invoking: ARM-GCC Print Size'
"C:\DAVE-3.1.10\ARM-GCC/bin/arm-none-eabi-size" --format=berkeley IO003_Example1.elf
text data bss dec hex filename
3392 0 2052 5444 1544 IO003_Example1.elf
'Finished building: IO003_Example1.siz'
' '
**** Build Finished ****
Then, go into the left side C/C++ Project tree view and navigate to /Dave/Generated/src/IO003/IO003.c. Right click on it and select 'Properties'. In this Properties Dialog, under C/C++Build>Settings>ToolSettings>ARM-GCC C Compiler/Optimization, Select Optimization Level (-Os). Click Apply and OK to close the dialog. Now do Project>Rebuild Active Project from the main menu.
Notice the difference in the last part of the console output:
'Finished building: ../Main.c'
' '
'Building target: IO003_Example1.elf'
'Invoking: ARM-GCC C Linker'
"C:\DAVE-3.1.10\ARM-GCC/bin/arm-none-eabi-gcc" -T"../IO003_Example1.ld" -nostartfiles -L"C:\DAVE-3.1.10\eclipse\/../CMSIS/Infineon/Lib" -L"C:\DAVE-3.1.10\eclipse\/../Examples/Lib" -L"C:\DAVE-3.1.10\eclipse\/../emWin/Start/GUI" -Wl,-Map,"IO003_Example1.map" -mcpu=cortex-m4 -mthumb -g3 -gdwarf-2 -o "IO003_Example1.elf" "@makefile.rsp"
'Finished building target: IO003_Example1.elf'
' '
**** Build Finished ****
You can then navigate into the /Debug directory using Windows explorer, and see that the .elf file was generated at the time of this last build, but not the .hex or .lst files.
Is this behavior that others are seeing too?
Best Regards,
-Kurt Show Less
Hi,
I used two SPI's (SPI 1 and SPI 2) to communicate with two different flashes(Flash 1 and Flash 2) which are same IC make. I configured both SPIs identically. I may able to communicate with SPI 1 and Flash 1 but not with SPI 2 and Flash 2. I used four SPIs in my code. Is there any setting which i have to do to communicate with the SPI 2 and Flash 2?
So please help me to resolve this issue.
Thanks
Show LessI try to upgrade the APPs of my project but with no success.
The "APPs upgrade" commands give me an error "APPs upgrade failed" and in the log report there's this error:
Solver Error while setting the GUI value to APP!
I have a lot of project like this and I can't upgrade the apps.
How can I do to solve this problem?
In attachment an example project with the same problem. Show Less
Under DAVE 4.4.2 I tried unsuccessfully to change the CAN baudrate with: "CAN_NODE_ConfigBaudrate()".
It turned out that the struct:
static const XMC_CAN_NODE_NOMINAL_BIT_TIME_CONFIG_t CAN_BUS_1_BitTimeConfig = {
.can_frequency = (uint32_t)1.44E8,
.baudrate = (uint32_t)(250 * 1000),
.sample_point = (uint16_t)(80 * 100),
.sjw = (uint16_t)1
};
from the file "can_node_conf.c" was created in Flash,
and therefore could not be changed at runtime.
After changing to:
"static XMC_CAN_NODE_NOMINAL_BIT_TIME_CONFIG_t CAN_BUS_1_BitTimeConfig = {.."
(without "const"),
the struct was created in RAM,
and I was able to change the baudrate with "CAN_NODE_ConfigBaudrate()".
Best Regards,
Hans
I bought Distance2Go kit and connect my PC to the kit with a communication converter (TCP to Uart).
I tried to send data from PC to the kit but could not succeed.
when I tried to send data to another micro controller I saw that the data received.
Can anyone send a project that configure the UART in this board?
best regards,
Meni Show Less
I wanted to to download the DAVE™ Drive for the XC8xx and XE16x series. Ont he web page of the tool it says, that newest version (v 1.9.1) is free without aby restrictions. Unfortunatelly the link after registration, direct back to the Infineon home page. what makes it impossible to dowload in normal way. Is the download link broke and how is it possible to obtain this tool?
Kind regards, Show Less