Hello, I use a XMC45 with save the value of the crc in this flash.
I use J flash to read the value and I find :
I decided to read this value in my soft project to check if the CRC is correct between the way of Srecord(generate a hex file with CRC) or calculate by soft (directly in xmc45)
The problem is that I don't arrived to catch my CRC in Flash.
#define APP_BASE_ADDR (0x0C000000U)
#define END_PTR_ADDR (0x1CU)
void CRC_Init(void)
{
{ // Reads size of loaded app to determine where the CRC is stored
// Address where App code size is written
const uint32_t *pAppSize = (uint32_t *)(APP_BASE_ADDR+ END_PTR_ADDR);
// Reads serial which is just after the CRC at the end of code
uint32_t uAppSize = (*pAppSize);
uint32_t uEOC = (APP_BASE_ADDR + uAppSize);
uint32_t u32AppCRC = *(uint32_t *)uEOC;
Input_Register->CRC_APP = u32AppCRC;;
}
Adresses are good : but it return 0 here : uint32_t u32AppCRC = *(uint32_t *)uEOC;
To catch value I configure .long __text_size in Startup_XMC4500.s
.align 2
.globl __Vectors
.type __Vectors, %object
__Vectors:
.long __initial_sp /* Top of Stack */
.long Reset_Handler /* Reset Handler */
Entry NMI_Handler /* NMI Handler */
Entry HardFault_Handler /* Hard Fault Handler */
Entry MemManage_Handler /* MPU Fault Handler */
Entry BusFault_Handler /* Bus Fault Handler */
Entry UsageFault_Handler /* Usage Fault Handler */
.long __text_size /* Reserved */
Someone can explain me my error ?
Already thank you
Pierre
Show Lesshi i have a problem i want to know about dali emergency light features.Does Dali stack support emergency light feature.
i looked dali stack library but i did not found.
Show LessHI,
Working with the ACIM motor control module of the XMC1404 it gives us the impression that the configuration of the peripheral with ACIM_FREQ_CTRL APP, does not work correctly. By configuring the polarity of the outputs as 'Active High' and a 'Dead time' of 500ns, the two complementary outputs (High side – Low side) should never be at a high level simultaneously to avoid cross conduction, and as you can see in attached image coincide for precisely 500ns. In addition, the duty cycle that it applies is exactly the opposite of what it should apply. That is, if you should apply 10%, you are applying 90%. Our conclusion is that the polarity is working the other way around what the App indicates. To work in 'active high' mode, 'active low' must be selected. Could you ask Infineon if there is a list of known bugs? I am concerned that apart from this there are other bugs that will waste our time. Do you know if there is an application note for this particular module? The information we have found is very basic.
SOME one from INFINEON pls to answer. I can provide some OSciloscope images ..
Thanks
MAes
Show LessUnder 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
Hello I'm using a XMC45 and an external flash IS25LP128F. My XMC communicate with a PC by modbus.
I would like to recover data from the flash by it.
to test the data transmission, I use strcpy(Holding_Register->strMsg, "OFF - ON");
definition:
typedef struct
{
...
chr8_t strMsg;
chr8_t strMsgtest[10];
...
} Data_Modbus_Holding_Register;
Declaration :
Holding_Register = (Data_Modbus_Holding_Register*)®_holding_buffer;
This solution work correctly, I recover data.
but when I use : strcpy(Holding_Register->strMsg, "OFF - ON"); OR Holding_Register->strMsg = "OFF - ON" OR Holding_Register->strMsg[0] = "OFF - ON" I don't arrived to recover data. Someone can help me ?
Best regards,
Pierre Gachet
Show Less
User | Count |
---|---|
1 | |
1 | |
1 | |
1 | |
1 | |
1 |