XMC™ Forum Discussions
In learning to use the XMC4500 lite, I am working through the Infineon Tutorials. With Lesson #8, ADC Measurement, the result of the analog to digital conversion is stored in a variable called "result". In the lesson, the actual value of the result is not found, nor it is possible to find out what it is as far as I can tell. Instead it is compared to some number and turns on or off an LED. An ADC result is pretty useless if it is impossible to know what it is. I know this is a pretty basic question, but the answer is not at all obvious. Can use some help here.
Show LessFor the EVAL_4KVA_230VAC_5LINV , we are trying to download the firmware source code, and we are not success in finding that in infineon website.
At below document, page number 54, section 6.3 DAVETM IDE says "The firmware controlling this demo board was developed using the DAVETM IDE, which can be downloaded free of charge from the Infineon website", but we are unable to find it. Kindly support us by sharing the url to download the firmware source code.
With out the source code we cant try any changes for our custom design
Thanks in advance
Show LessDear Sir ,
I am studying this 3K3W_BIDI_PSFB-boost mode for our new UPS design.
for the boost mode, B is mainy for pre-change HV rail. may I clarify some issue below? thanks.
(1)May I know how we can know whether B is charged done?
(2)IF the output load is working and SMPS_GUI shows connected successfully, can we disconnect B?
(3) How's the power sequence of A & B?
Show Less
Hi,
I am working on the CAN communication on XMC4400 plat2go board, using Eclipse ModusToolBox as IDE.
I have went through the examples of CAN_transmit, CAN_receive, and CAN_loopback. I have a beaglebone connected to XMC4400 board with physical CAN connection, and experiments of those above works well, so the CAN connection is good.
Now I want to have actual CAN transimission and receiving both working between my XMC4400 and beaglebone. The 3 examples abovementioned, each configured the XMC board specifically for its own usecase (only transmit / only receive / in loopback mode, so I have to adapt that to my usecase.
One try I had done is to adapt the configurations based on the loopback example. I manually modified the cycfg_peripherals.c in the way below
void init_cycfg_peripherals(void)
{
XMC_CAN_InitEx(CAN_GLOBAL_HW, CAN_CLOCK_SOURCE, CAN_FREQUENCY_VALUE);
if(XMC_CAN_STATUS_SUCCESS == XMC_CAN_NODE_NominalBitTimeConfigureEx(CAN_NODE_TX_HW, &CAN_NODE_TX_bit_time_config))
{
XMC_CAN_NODE_EnableConfigurationChange(CAN_NODE_TX_HW);
XMC_CAN_NODE_SetInitBit(CAN_NODE_TX_HW);
XMC_CAN_NODE_ReSetAnalyzerMode(CAN_NODE_TX_HW);
XMC_CAN_NODE_SetReceiveInput(CAN_NODE_TX_HW, XMC_CAN_NODE_RECEIVE_INPUT_RXDCA);
// remove the loopback enabling
// XMC_CAN_NODE_EnableLoopBack(CAN_NODE_TX_HW);
XMC_CAN_AllocateMOtoNodeList(CAN_GLOBAL_HW, 0, 0);
XMC_CAN_MO_Config(&CAN_NODE_TX_LMO_0);
/* Reset CCE and INIT bit NCR for node configuration. */
XMC_CAN_NODE_DisableConfigurationChange(CAN_NODE_TX_HW);
XMC_CAN_NODE_ResetInitBit(CAN_NODE_TX_HW);
}
if(XMC_CAN_STATUS_SUCCESS == XMC_CAN_NODE_NominalBitTimeConfigureEx(CAN_NODE_RX_HW, &CAN_NODE_RX_bit_time_config))
{
XMC_CAN_NODE_EnableConfigurationChange(CAN_NODE_RX_HW);
XMC_CAN_NODE_SetInitBit(CAN_NODE_RX_HW);
XMC_CAN_NODE_ReSetAnalyzerMode(CAN_NODE_RX_HW);
// remove the loopback enabling
// XMC_CAN_NODE_EnableLoopBack(CAN_NODE_RX_HW);
XMC_CAN_AllocateMOtoNodeList(CAN_GLOBAL_HW, 1, 1);
XMC_CAN_MO_Config(&CAN_NODE_RX_LMO_0);
XMC_CAN_MO_SetEventNodePointer(&CAN_NODE_RX_LMO_0, XMC_CAN_MO_POINTER_EVENT_RECEIVE, 7U);
XMC_CAN_MO_EnableEvent(&CAN_NODE_RX_LMO_0, XMC_CAN_MO_EVENT_RECEIVE);
/* Reset CCE and INIT bit NCR for node configuration. */
XMC_CAN_NODE_DisableConfigurationChange(CAN_NODE_RX_HW);
XMC_CAN_NODE_ResetInitBit(CAN_NODE_RX_HW);
}
XMC_UART_CH_InitEx(CYBSP_DEBUG_UART_HW, &CYBSP_DEBUG_UART_config, false);
XMC_UART_CH_SetInputSource(CYBSP_DEBUG_UART_HW, (XMC_UART_CH_INPUT_t)XMC_USIC_CH_INPUT_DX0, CYBSP_DEBUG_UART_DX0_INPUT);
XMC_UART_CH_SetSamplePoint(CYBSP_DEBUG_UART_HW, 8U);
XMC_USIC_CH_SetFractionalDivider(CYBSP_DEBUG_UART_HW, XMC_USIC_CH_BRG_CLOCK_DIVIDER_MODE_FRACTIONAL, 969U);
XMC_USIC_CH_SetBaudrateDivider(CYBSP_DEBUG_UART_HW, XMC_USIC_CH_BRG_CLOCK_SOURCE_DIVIDER, false, 36U, XMC_USIC_CH_BRG_CTQSEL_PDIV, 0U, 15U);
XMC_USIC_CH_SetInterruptNodePointer(CYBSP_DEBUG_UART_HW, XMC_USIC_CH_INTERRUPT_NODE_POINTER_RECEIVE, 0U);
XMC_UART_CH_EnableEvent(CYBSP_DEBUG_UART_HW, XMC_UART_CH_EVENT_STANDARD_RECEIVE);
XMC_UART_CH_Start(CYBSP_DEBUG_UART_HW);
}
trying to disable the loopback mode with above; but this seems not sufficient since it doesn't work.
Also, I tried using DeviceConfigurator, and try to follow the configurations from the CAN_transmit and CAN_receive examples (and combining them to have both t/r effecitive), but no luck so far, finding it's hard to combining them with nothing missed.
Is there a sophisticated example that simply have transmission / receiving both being setup well for actual CAN connections? I feel I missed something since it should be a common usecase but I haven't find any explicit example / tutorial for this.
Appreciate if you could share your thoughts.
Regards,
Wei
Show LessHi, I was practicing some logics for my project over xmc4800 relax ethercat kit.
The problem I am facing is of i2c display. There is no way to display text over i2c on 128X32 ssd1306 oled display.
I am using dave ide platform. Can you pl give library function and code to display over oled display.
Hi community,
我想用 DAVE 进行调试的时候遇到了入下图的问题,
我之前有使用过这个工程进行调试,今天再打开就成了这样,
我浏览 community中的相似问题,试过删掉 DAVE 重装,以及将C++build 设置为 Dubug,都不可以
请问这个问题该如何解决,非常感谢!!!
Show Less
Dear Sir,
I had a customer who required an Ethernet with an MQTT solution.
Do we have this kind of reference code for their RD study?
Best Regards,
Billy
Show Less