XMC™ Forum Discussions
XMC™
Hallo Everyone,it may sound like a daft question, but have any of you managed to program the BMI register (XMC1000 device) using a debugger/flasher to...
Show More
Hallo Everyone,
it may sound like a daft question, but have any of you managed to program the BMI register (XMC1000 device) using a debugger/flasher tool?
I've tried the following, but none will work:
1. DAVE Sofware + Segger JLink
2. XMCFlasher + XMC Link tool
3. J-Flash Lite + Segger JLink
4. Memtool + JLink
The XMC board is working ok, as I am able to download the firmware and debug it (ie. the BMI-register is reprogrammed by DAVE+Jlink to "User-mode Debug").
Is there a programmer that uses the RS232? ie. the default unprogrammed BMI-value is ASC-mode.
Would be great if anyone can help out. Thanks.
kfw Show Less
it may sound like a daft question, but have any of you managed to program the BMI register (XMC1000 device) using a debugger/flasher tool?
I've tried the following, but none will work:
1. DAVE Sofware + Segger JLink
2. XMCFlasher + XMC Link tool
3. J-Flash Lite + Segger JLink
4. Memtool + JLink
The XMC board is working ok, as I am able to download the firmware and debug it (ie. the BMI-register is reprogrammed by DAVE+Jlink to "User-mode Debug").
Is there a programmer that uses the RS232? ie. the default unprogrammed BMI-value is ASC-mode.
Would be great if anyone can help out. Thanks.
kfw Show Less
XMC™
Dear all,I have a XMC4800 Relax Development Kit and try to setup a simple Ethernet communication.Following the documentation of "ETH_LWIP - Usage" I'm...
Show More
Dear all,
I have a XMC4800 Relax Development Kit and try to setup a simple Ethernet communication.
Following the documentation of "ETH_LWIP - Usage" I'm able to configure and setup the Ethernet communication with a RTOS.
After calling osKernelStart() I'm able to ping the device.
Now, I would add two additional thread to my application. One should handle the TCP communication and the other control additional IO's.
Unfortunately, as soon as I define an thread and use osThreadCreate(osThread(thread1), NULL) the device doesn't respond to a ping.
My thread is working.
Does any one know, how to add additional threads to the CMSIS RTOS when using LWIP?
Or does some were exist an example using lwIP wit cmsis rtos and custom threads?
Thanks for any hint! Show Less
I have a XMC4800 Relax Development Kit and try to setup a simple Ethernet communication.
Following the documentation of "ETH_LWIP - Usage" I'm able to configure and setup the Ethernet communication with a RTOS.
After calling osKernelStart() I'm able to ping the device.
Now, I would add two additional thread to my application. One should handle the TCP communication and the other control additional IO's.
Unfortunately, as soon as I define an thread and use osThreadCreate(osThread(thread1), NULL) the device doesn't respond to a ping.
My thread is working.
Does any one know, how to add additional threads to the CMSIS RTOS when using LWIP?
Or does some were exist an example using lwIP wit cmsis rtos and custom threads?
Thanks for any hint! Show Less
XMC™
Hello,I'm a student working on my bachelor thesis in electrical engineering. I'm trying to programm the XMC4800 Relax EtherCAT Kit but I'm having some...
Show More
Hello,
I'm a student working on my bachelor thesis in electrical engineering. I'm trying to programm the XMC4800 Relax EtherCAT Kit but I'm having some issues with it.
I'm relativly new to programming microcontrollers.
I started implementing the EtherCAT example project and everything worked well with TwinCAT. I also tried renaming some of the original process data, regenerated the slave files and modified the code.
But when I tried to eliminate some of the unused processdata to modify the example for my needs I faced some problems.
After regenerating the slave files and updating the ESI file in TwinCAT it recognises the new slave with it's modified processdata. If I then try to switch into Free Run Mode or Running Mode the slave refuses to go into OP mode and instead goes into SAFEOP.
I have tried to find a solution here in the forum and found some similar problems but non of the solutions helped.
I made sure to update the ESI in the TwinCAT folder and erased the EEPROM with JFlashLite.
Maybe someone faced similar problems here can help me to find my mistake. Do I have to modify anything else in the example?
Thanks in advance,
Ruben
Here is the Excel file if it helps.
Show Less
I'm a student working on my bachelor thesis in electrical engineering. I'm trying to programm the XMC4800 Relax EtherCAT Kit but I'm having some issues with it.
I'm relativly new to programming microcontrollers.
I started implementing the EtherCAT example project and everything worked well with TwinCAT. I also tried renaming some of the original process data, regenerated the slave files and modified the code.
But when I tried to eliminate some of the unused processdata to modify the example for my needs I faced some problems.
After regenerating the slave files and updating the ESI file in TwinCAT it recognises the new slave with it's modified processdata. If I then try to switch into Free Run Mode or Running Mode the slave refuses to go into OP mode and instead goes into SAFEOP.
I have tried to find a solution here in the forum and found some similar problems but non of the solutions helped.
I made sure to update the ESI in the TwinCAT folder and erased the EEPROM with JFlashLite.
Maybe someone faced similar problems here can help me to find my mistake. Do I have to modify anything else in the example?
Thanks in advance,
Ruben
Here is the Excel file if it helps.
Show Less
XMC™
Hallo All,someone of us has found the same problem?I have developed a control with FOC Lib (ver. 4.2.45) using the Q024 version of XMC1302 with 64kB f...
Show More
Hallo All,
someone of us has found the same problem?
I have developed a control with FOC Lib (ver. 4.2.45) using the Q024 version of XMC1302 with 64kB flash size.
Now I am trying to migrate to SAME PROCESSOR (with 64kB) but in TSSOP-28 pin-out and, surprise!!, that version of Lib is not supported. I have to work with ver 4.2.12!
This is really strange. I cannot make any Device Migration but I have to develop different solutions.
So, first I would like to know:
This is a little bit difficult to understand for me. I am a little bit worried about using an older version of FOC Lib.
Thank you very much for your support
Best Regards
Fabio Show Less
someone of us has found the same problem?
I have developed a control with FOC Lib (ver. 4.2.45) using the Q024 version of XMC1302 with 64kB flash size.
Now I am trying to migrate to SAME PROCESSOR (with 64kB) but in TSSOP-28 pin-out and, surprise!!, that version of Lib is not supported. I have to work with ver 4.2.12!
This is really strange. I cannot make any Device Migration but I have to develop different solutions.
So, first I would like to know:
- differences between 4.2.12 and 4.2.45 in FOC LIB in order to understand if I can use the older version without any problem
- why the 28-pin version is not supported? 28-pin version has same GPIO Ports (P0.x, P1,x and P2.x) and 4 more I/O's
This is a little bit difficult to understand for me. I am a little bit worried about using an older version of FOC Lib.
Thank you very much for your support
Best Regards
Fabio Show Less
XMC™
Greetings,XMC product used : XMC4700 - 2048 - 357kb ram - 144pin, XMC link - (jlink) debuggerThe application that I am developing is hitting the inter...
Show More
Greetings,
XMC product used : XMC4700 - 2048 - 357kb ram - 144pin, XMC link - (jlink) debugger
The application that I am developing is hitting the internal RAM limits. My PCB design has an external RAM that I would like to use for storing larger buffers.
My application also has an external flash that we are using with a file system also configured using the EBU.
I have configured the EBU pins so that all three areas are enabled.
EBU Region 1 : 0x6400 0000 for external RAM
EBU Region 2,3 for FLASH.
EBU Region 0 : Unused
I have configured the linker file with a section for the external SRAM
And in my application code I use
To ensure that the linker sticks this buffer into the external RAM.
When I try to debug this code with and set a break point where I access this memory the break point does not occur and the code simply goes to the wazoo.
When I probed my pins I could see that the chip select for the external ram was not activated,
I am not sure how the EBU actually toggles the pins when an access occurs so that I can probe it.
I am having a hard time finding an example code/ configuration that shows how to access external ram and interface with. Any help would be awesome!
Additional Notes :
I am using XMC-link probe to debug which is J-link with VSCODE as the IDE.
Thank you in advance. Show Less
XMC product used : XMC4700 - 2048 - 357kb ram - 144pin, XMC link - (jlink) debugger
The application that I am developing is hitting the internal RAM limits. My PCB design has an external RAM that I would like to use for storing larger buffers.
My application also has an external flash that we are using with a file system also configured using the EBU.
I have configured the EBU pins so that all three areas are enabled.
EBU Region 1 : 0x6400 0000 for external RAM
EBU Region 2,3 for FLASH.
EBU Region 0 : Unused
I have configured the linker file with a section for the external SRAM
And in my application code I use
__attribute__((aligned(4))) uint8_t test_buffer[1024] __attribute__ ((section ("EXT_RAM"))) = {0};
To ensure that the linker sticks this buffer into the external RAM.
When I try to debug this code with and set a break point where I access this memory the break point does not occur and the code simply goes to the wazoo.
When I probed my pins I could see that the chip select for the external ram was not activated,
I am not sure how the EBU actually toggles the pins when an access occurs so that I can probe it.
I am having a hard time finding an example code/ configuration that shows how to access external ram and interface with. Any help would be awesome!
Additional Notes :
I am using XMC-link probe to debug which is J-link with VSCODE as the IDE.
Thank you in advance. Show Less
XMC™
I am trying to use the USB Mass Storage Device example supplied by Keil for the XMC4500 Relax Kit. They say the examples come from Infineon, therefore...
Show More
I am trying to use the USB Mass Storage Device example supplied by Keil for the XMC4500 Relax Kit. They say the examples come from Infineon, therefore Keil cannot help me.
The problem with the example is that the processor is continuously in the USB interrupt. It is not even possible to blink a LED in the main application loop.
I have seen that the "ModeMis" interrupt is active and as this is not handled in the interrupt routine it remains active. The fact that this interrupt is active means the driver is doing something wrong.
The Infineon Support has said I should post this problem here.
I am no USB expert, but I exspect to be able to use the supplied examples. Show Less
The problem with the example is that the processor is continuously in the USB interrupt. It is not even possible to blink a LED in the main application loop.
I have seen that the "ModeMis" interrupt is active and as this is not handled in the interrupt routine it remains active. The fact that this interrupt is active means the driver is doing something wrong.
The Infineon Support has said I should post this problem here.
I am no USB expert, but I exspect to be able to use the supplied examples. Show Less
XMC™
Hello, I'm a beginner trying to follow the EtherCAT SSC example provided within the DAVE local library store (example here).I've gotten to implementin...
Show More
Hello,
I'm a beginner trying to follow the EtherCAT SSC example provided within the DAVE local library store (example here).
I've gotten to implementing the process_app code which sets the state of the LED and propagates the input data. However, upon rebuilding the project, I get the following build errors:
I've checked the manual pin allocator for the main program (ECAT_SSC_0), and Pin 85 (P4.0) and Pin 84 (P4.1) are not referenced anywhere, nor is P_LED1, P_LED2 nor P3_4. The pin mapping view also indicates that these pins are non-feasible for mapping.
I have tried changing the timer to a CCU8 timer as I've heard this is connected to those pins, but this has not done anything. I've got a feeling I've somehow generated the slave-stack code incorrectly, but not sure how.
Help would be greatly appreciated. Show Less
I'm a beginner trying to follow the EtherCAT SSC example provided within the DAVE local library store (example here).
I've gotten to implementing the process_app code which sets the state of the LED and propagates the input data. However, upon rebuilding the project, I get the following build errors:
I've checked the manual pin allocator for the main program (ECAT_SSC_0), and Pin 85 (P4.0) and Pin 84 (P4.1) are not referenced anywhere, nor is P_LED1, P_LED2 nor P3_4. The pin mapping view also indicates that these pins are non-feasible for mapping.
I have tried changing the timer to a CCU8 timer as I've heard this is connected to those pins, but this has not done anything. I've got a feeling I've somehow generated the slave-stack code incorrectly, but not sure how.
Help would be greatly appreciated. Show Less
XMC™
Hi, I'm new to XMC microcontroller.I have a project and I need to read the data from 4 ADC-channels using XMC1100.I use DAVE-app to create an ADC_MEAS...
Show More
Hi, I'm new to XMC microcontroller.
I have a project and I need to read the data from 4 ADC-channels using XMC1100.
I use DAVE-app to create an ADC_MEASUREMENT_0, however when reading the data, the values seem to be wrong.
My code is as follow:
How can I read the correct data from the 4 ADC-Channels?
Thanks
Bien Show Less
I have a project and I need to read the data from 4 ADC-channels using XMC1100.
I use DAVE-app to create an ADC_MEASUREMENT_0, however when reading the data, the values seem to be wrong.
My code is as follow:
XMC_VADC_RESULT_SIZE_t result[4];
uint8_t cnt = 0;
void Adc_Measurement_Handler()
{
result[cnt] = ADC_MEASUREMENT_GetResult(&ADC_MEASUREMENT_0);
cnt = cnt + 1;
if(cnt == 4){
cnt = 0;
}
}
int main(void)
{
DAVE_STATUS_t status;
status = DAVE_Init(); /* Initialization of DAVE Apps */
if(status == DAVE_STATUS_FAILURE)
{
XMC_DEBUG(("DAVE Apps initialization failed with status %d\n", status));
while(1U)
{
}
}
ADC_MEASUREMENT_StartConversion(&ADC_MEASUREMENT_0);
while(1U);
return 1;
}
How can I read the correct data from the 4 ADC-Channels?
Thanks
Bien Show Less
XMC™
Hello,Is it possible to flash a binary file with the XMC Flasher from the Infineon Toolbox? I need to build an binary because of EtherCat update abili...
Show More
Hello,
Is it possible to flash a binary file with the XMC Flasher from the Infineon Toolbox? I need to build an binary because of EtherCat update ability.
I only can Flash hex Files with the XMC Flasher....
Im trying to find a soltion that our production can flash the released version on our Hardware.... Have someone got a good hint for that?
Best regard
Florian Show Less
Is it possible to flash a binary file with the XMC Flasher from the Infineon Toolbox? I need to build an binary because of EtherCat update ability.
I only can Flash hex Files with the XMC Flasher....
Im trying to find a soltion that our production can flash the released version on our Hardware.... Have someone got a good hint for that?
Best regard
Florian Show Less
XMC™
Hello, i would like to use the XMC4100 for Multi-Phase PWM applications. There are lots of documentation available, stating that it would be possible ...
Show More
Hello, i would like to use the XMC4100 for Multi-Phase PWM applications. There are lots of documentation available, stating that it would be possible to use a compare channel to trigger the start of a slave CCU8 slice.
Eg like page 19: https://www.infineon.com/dgdl/Infineon-IP_CCU8_XMC-TR-v01_02-EN.pdf?fileId=5546d4624ad04ef9014b0780b3482262
But how is this done on the XMC4100? The app(s) and/or Hardware-signals dont shot such a route/connection:
- Setup of 2 clean HRPWM (Same for CCU8!)
-> Compare2 event output of HRPWM0
HRPWM1 input Event
No option for Event connection:
Whats wrong? How to fix? Is it a hardware or a DAVE APP problem? Same workflow on XMC4500 shows an event0 input at HRPWM1 in this place! Whats different on the CCU8 between XMC4100 and XMC4500 - application notes are written as like CCU8 units would be identical!? Plase note: Same problem for "pure" CCU8 as well. Thanks a lot! Show Less
Eg like page 19: https://www.infineon.com/dgdl/Infineon-IP_CCU8_XMC-TR-v01_02-EN.pdf?fileId=5546d4624ad04ef9014b0780b3482262
But how is this done on the XMC4100? The app(s) and/or Hardware-signals dont shot such a route/connection:
- Setup of 2 clean HRPWM (Same for CCU8!)
-> Compare2 event output of HRPWM0
HRPWM1 input Event
No option for Event connection:
Whats wrong? How to fix? Is it a hardware or a DAVE APP problem? Same workflow on XMC4500 shows an event0 input at HRPWM1 in this place! Whats different on the CCU8 between XMC4100 and XMC4500 - application notes are written as like CCU8 units would be identical!? Plase note: Same problem for "pure" CCU8 as well. Thanks a lot! Show Less
Trending discussions