XMC™ Forum Discussions
Sort by:
XMC™
I want to use the XMC1400's PRNG in my application but I need to get a unique seed value for every power up.Has anyone found a good way to seed the PR...
Show More
I want to use the XMC1400's PRNG in my application but I need to get a unique seed value for every power up.
Has anyone found a good way to seed the PRNG?
I briefly looked at using the VADC. I'm using the xmc1400 boot kit and the example program using p2.5 connected to a pot works fine.
However trying to change it to use an unconnected channel was daunting. I simply wanted to read the ADC connected to a different pin.
It seems like the peripheral can do all kinds of complex operations, but just a simple read ??? I could not find a good example.
I also considered using the on board temperature sensor, but have not attempted it yet/ Show Less
Has anyone found a good way to seed the PRNG?
I briefly looked at using the VADC. I'm using the xmc1400 boot kit and the example program using p2.5 connected to a pot works fine.
However trying to change it to use an unconnected channel was daunting. I simply wanted to read the ADC connected to a different pin.
It seems like the peripheral can do all kinds of complex operations, but just a simple read ??? I could not find a good example.
I also considered using the on board temperature sensor, but have not attempted it yet/ Show Less
XMC™
Hey guys,I'm trying to read the data coming from the Infineon 3D magnetic sensor in C#/C++.Currently I'm sucesssfully connecting to the COM Port using...
Show More
Hey guys,
I'm trying to read the data coming from the Infineon 3D magnetic sensor in C#/C++.
Currently I'm sucesssfully connecting to the COM Port using the C# SerialPort class but I don't know how to exchange data between the c#-application and the sensor.
Does someone have an example or can guide me into the right direction for the way of achieving this?
Thanks in advance
Tim Show Less
I'm trying to read the data coming from the Infineon 3D magnetic sensor in C#/C++.
Currently I'm sucesssfully connecting to the COM Port using the C# SerialPort class but I don't know how to exchange data between the c#-application and the sensor.
Does someone have an example or can guide me into the right direction for the way of achieving this?
Thanks in advance
Tim Show Less
XMC™
Hi everybody,I will read the AD-data from ADS131A04 like this> see the page 36 of datasheet. texasInstruments it should be 16+4*24 bits, what is 112 ...
Show More
Hi everybody,
I will read the AD-data from ADS131A04 like this> see the page 36 of datasheet. texasInstruments
it should be 16+4*24 bits, what is 112 pulses of SCLK. SCLK should be very quick / min 25 MHz
.
But the CS/ signal have to be only during reading obligatory Low. / without the moving to Hi, what is the effect of use two frames....
I did not find similary application
zbyno Show Less
I will read the AD-data from ADS131A04 like this> see the page 36 of datasheet. texasInstruments
it should be 16+4*24 bits, what is 112 pulses of SCLK. SCLK should be very quick / min 25 MHz
.
But the CS/ signal have to be only during reading obligatory Low. / without the moving to Hi, what is the effect of use two frames....
I did not find similary application
zbyno Show Less
XMC™
Hello,I am new to Infineon Forum, so feel free to correct me if I violate any forum rules 🙂I am using the XMC4800 Relax EtherCAT Kit with DAVE (4.3.2...
Show More
Hello,
I am new to Infineon Forum, so feel free to correct me if I violate any forum rules 🙂
I am using the XMC4800 Relax EtherCAT Kit with DAVE (4.3.2) and Beckhoff SSC.
I was going through the "Getting Started _XMC4800_Relax_EtherCat_APP_Slave" document and could setup the DAVE project.
Even flashing is working, but then the debugging interrupts with the error:
"WARNING: Failed to read memory @ address 0xE884CB0E".
I double checked the debug configurations to make sure the correct microcontroller is selected.
But now I have no more idea what to do.
I've done only the steps as described in the "Getting Started", so I didn't change anything else in the code.
Here the log file:
-----GDB Server start settings-----
GDBInit file: none
GDB Server Listening port: 2331
SWO raw output listening port: 2332
Terminal I/O port: 2333
Accept remote connection: localhost only
Generate logfile: off
Verify download: on
Init regs on start: on
Silent mode: off
Single run mode: on
Target connection timeout: 0 ms
------J-Link related settings------
J-Link Host interface: USB
J-Link script: none
J-Link settings file: none
------Target related settings------
Target device: XMC4800-F144x2048
Target interface: SWD
Target interface speed: 1000kHz
Target endian: little
Connecting to J-Link...
J-Link is connected.
Firmware: J-Link Lite-XMC4200 Rev.1 compiled Jan 14 2016 11:19:27
Hardware: V1.00
S/N: 591046057
Checking target voltage...
Target voltage: 3.30 V
Listening on TCP/IP port 2331
Connecting to target...Connected to target
Waiting for GDB connection...Connected to 127.0.0.1
Reading all registers
Read 4 bytes @ address 0x00000000 (Data = 0x2000FF3C)
Read 2 bytes @ address 0x00000000 (Data = 0xFF3C)
Target interface speed set to 1000 kHz
Resetting target
Halting target CPU...
...Target halted (PC = 0xE884CB0E)
R0 = E000ED08, R1 = 00000263, R2 = 3C13D281, R3 = D04F4A05
R4 = 00000536, R5 = 00000000, R6 = 00000000, R7 = 00000000
R8 = 00000000, R9 = 0C000004, R10= 00000000, R11= 00000000
R12= 00000000, R13= AF00B558, MSP= AF00B558, PSP= 00000000
R14(LR) = FFFFFFF1, R15(PC) = E884CB0E
XPSR 01000003, APSR 00000000, EPSR 01000000, IPSR 00000003
CFBP 00000000, CONTROL 00, FAULTMASK 00, BASEPRI 00, PRIMASK 00
Reading all registers
WARNING: Failed to read memory @ address 0xE884CB0E
Select auto target interface speed (1875 kHz)
Flash breakpoints enabled
WARNING: Failed to read memory @ address 0xE884CB0E
Would be great if someone can help me, thanks! Show Less
I am new to Infineon Forum, so feel free to correct me if I violate any forum rules 🙂
I am using the XMC4800 Relax EtherCAT Kit with DAVE (4.3.2) and Beckhoff SSC.
I was going through the "Getting Started _XMC4800_Relax_EtherCat_APP_Slave" document and could setup the DAVE project.
Even flashing is working, but then the debugging interrupts with the error:
"WARNING: Failed to read memory @ address 0xE884CB0E".
I double checked the debug configurations to make sure the correct microcontroller is selected.
But now I have no more idea what to do.
I've done only the steps as described in the "Getting Started", so I didn't change anything else in the code.
Here the log file:
-----GDB Server start settings-----
GDBInit file: none
GDB Server Listening port: 2331
SWO raw output listening port: 2332
Terminal I/O port: 2333
Accept remote connection: localhost only
Generate logfile: off
Verify download: on
Init regs on start: on
Silent mode: off
Single run mode: on
Target connection timeout: 0 ms
------J-Link related settings------
J-Link Host interface: USB
J-Link script: none
J-Link settings file: none
------Target related settings------
Target device: XMC4800-F144x2048
Target interface: SWD
Target interface speed: 1000kHz
Target endian: little
Connecting to J-Link...
J-Link is connected.
Firmware: J-Link Lite-XMC4200 Rev.1 compiled Jan 14 2016 11:19:27
Hardware: V1.00
S/N: 591046057
Checking target voltage...
Target voltage: 3.30 V
Listening on TCP/IP port 2331
Connecting to target...Connected to target
Waiting for GDB connection...Connected to 127.0.0.1
Reading all registers
Read 4 bytes @ address 0x00000000 (Data = 0x2000FF3C)
Read 2 bytes @ address 0x00000000 (Data = 0xFF3C)
Target interface speed set to 1000 kHz
Resetting target
Halting target CPU...
...Target halted (PC = 0xE884CB0E)
R0 = E000ED08, R1 = 00000263, R2 = 3C13D281, R3 = D04F4A05
R4 = 00000536, R5 = 00000000, R6 = 00000000, R7 = 00000000
R8 = 00000000, R9 = 0C000004, R10= 00000000, R11= 00000000
R12= 00000000, R13= AF00B558, MSP= AF00B558, PSP= 00000000
R14(LR) = FFFFFFF1, R15(PC) = E884CB0E
XPSR 01000003, APSR 00000000, EPSR 01000000, IPSR 00000003
CFBP 00000000, CONTROL 00, FAULTMASK 00, BASEPRI 00, PRIMASK 00
Reading all registers
WARNING: Failed to read memory @ address 0xE884CB0E
Select auto target interface speed (1875 kHz)
Flash breakpoints enabled
WARNING: Failed to read memory @ address 0xE884CB0E
Would be great if someone can help me, thanks! Show Less
XMC™
Hallo Forum,ich habe das Beispiel: xmc4500_relaxkit_lwip_httpserver_netconnheruntergeladen, um eine Ethernet Verbindung zu testen. In einen späteren P...
Show More
Hallo Forum,
ich habe das Beispiel: xmc4500_relaxkit_lwip_httpserver_netconn
heruntergeladen, um eine Ethernet Verbindung zu testen. In einen späteren Projekt möchte ich Variablen übergeben können.
Das Beispiel tut was es soll und zeigt mir bei 192.168.0.10 HTML Code an. Jetzt habe ich einen Button hinzugebaut und dieser soll mir gerne eine LED auf Port 1.0 oder 1.1 toggeln.
Wie kann ich dem µC nun sagen, das dort etwas geschieht. Ich habe ja kein JavaScript für einen callback oder ähnliches.
Die HTML Seite wird wie folgt im Code aufgerufen:
(Zu finden in httpserver/httpserver-netconn.c)
Mit einen "netconn_write" Befehl wird es ausgeführt.
In der main.c gibt es dann einen "osThreadCreate" Befehl der aufgerufen werden kann, aber wie ich Variablen und Parameter verteilen kann, versteh ich nicht ganz.
Kann mir da jemand helfen bitte?
Hello Forum,
I've downloaded an example: xmc4500_relaxkit_lwip_httpserver_netconn
to test the Ethernet Connection. Later I want to be able to declare variables on my µC.
That example works fine. I added a button on this html site. This button should toggle my LED on Port 1.0 or 1.1.
How can I implement this?
The httpserver-netconn.c do it like this
but there is no callback function or similar.
This char will executed by a "netconn_write" order.
There is an "osThreadCreate" order in my main.c, but I have no clue how to solve my Problem.
Any suggestions here?
Thanks in advance. Show Less
ich habe das Beispiel: xmc4500_relaxkit_lwip_httpserver_netconn
heruntergeladen, um eine Ethernet Verbindung zu testen. In einen späteren Projekt möchte ich Variablen übergeben können.
Das Beispiel tut was es soll und zeigt mir bei 192.168.0.10 HTML Code an. Jetzt habe ich einen Button hinzugebaut und dieser soll mir gerne eine LED auf Port 1.0 oder 1.1 toggeln.
Wie kann ich dem µC nun sagen, das dort etwas geschieht. Ich habe ja kein JavaScript für einen callback oder ähnliches.
Die HTML Seite wird wie folgt im Code aufgerufen:
const static char http_html_hdr[] = "HTTP/1.1 200 OK\r\nContent-type: text/html\r\n\r\n";
const static char http_index_html[] = "Congrats! Welcome to our lwIP HTTP server!
This is a small test page, served by httpserver-netconn.";
const static char http_index_html2[] ="";
(Zu finden in httpserver/httpserver-netconn.c)
Mit einen "netconn_write" Befehl wird es ausgeführt.
In der main.c gibt es dann einen "osThreadCreate" Befehl der aufgerufen werden kann, aber wie ich Variablen und Parameter verteilen kann, versteh ich nicht ganz.
Kann mir da jemand helfen bitte?
Hello Forum,
I've downloaded an example: xmc4500_relaxkit_lwip_httpserver_netconn
to test the Ethernet Connection. Later I want to be able to declare variables on my µC.
That example works fine. I added a button on this html site. This button should toggle my LED on Port 1.0 or 1.1.
How can I implement this?
The httpserver-netconn.c do it like this
const static char http_html_hdr[] = "HTTP/1.1 200 OK\r\nContent-type: text/html\r\n\r\n";
const static char http_index_html[] = "Congrats! Welcome to our lwIP HTTP server!
This is a small test page, served by httpserver-netconn.";
const static char http_index_html2[] ="";
but there is no callback function or similar.
This char will executed by a "netconn_write" order.
There is an "osThreadCreate" order in my main.c, but I have no clue how to solve my Problem.
Any suggestions here?
Thanks in advance. Show Less
XMC™
Do i understand it right, that if i want to update my application in the flash using the ASC BSL, i have first have to load a loader software into the...
Show More
Do i understand it right, that if i want to update my application in the flash using the ASC BSL, i have first have to load a loader software into the RAM via ASC BSL. And after that loader software started, the loader software should be able to receive the application data and write it into the flash ?
If yes, does there already exist an example SW for such a loader SW?
It would be quite bad,that i need 2 different binaries to update the application.
And is it also possible on a XMC1200, to have different applications already in the flash like at a XMC4500 to start one of the application (at a certain address) at program start? Show Less
If yes, does there already exist an example SW for such a loader SW?
It would be quite bad,that i need 2 different binaries to update the application.
And is it also possible on a XMC1200, to have different applications already in the flash like at a XMC4500 to start one of the application (at a certain address) at program start? Show Less
XMC™
I was trying to use flash to simulate eeprom and get an example from keil examples.but the examle didn't work.I look into the debug and find out that ...
Show More
I was trying to use flash to simulate eeprom and get an example from keil examples.
but the examle didn't work.
I look into the debug and find out that whenever operate with the flash address ,the program goes into HardFault_Handler.
since i didn't change anything in the examle ,i wonder why it happens and how can i solve it? Show Less
but the examle didn't work.
I look into the debug and find out that whenever operate with the flash address ,the program goes into HardFault_Handler.
since i didn't change anything in the examle ,i wonder why it happens and how can i solve it? Show Less
XMC™
HelloI imported a project for QSPI flash on board.Changed pins according to 100pin device.But the program doesn't work.It lands an error after reading...
Show More
Hello
I imported a project for QSPI flash on board.
Changed pins according to 100pin device.
But the program doesn't work.
It lands an error after reading.
The example project is
QSPI_EXAMPLE_XMC45
It can be downloaded from
http://www.infineon.com/cms/en/product/promopages/aim-mc/dave_downloads.html
Please help me understand what's wrong Show Less
I imported a project for QSPI flash on board.
Changed pins according to 100pin device.
But the program doesn't work.
It lands an error after reading.
The example project is
QSPI_EXAMPLE_XMC45
It can be downloaded from
http://www.infineon.com/cms/en/product/promopages/aim-mc/dave_downloads.html
Please help me understand what's wrong Show Less
XMC™
I am using a XMC4500 for a 3-phase BLDC Motor control application. My Setup is taken from the application notes. I have the POSIF0 to sense the hall s...
Show More
I am using a XMC4500 for a 3-phase BLDC Motor control application. My Setup is taken from the application notes. I have the POSIF0 to sense the hall sensor Inputs and a CCU4 timer slice for the blanking and enabling the multi-channel update. I have the period match from the CCU8 slice to synchonize the multi-channel pattern update. This all works as expected.
As we need a high PWM frequency this gives a low PWM resolution. To increase the PWM Resolution I have enabled the PWM dithering. Dithering the period seems to give the most linear result. But now I have seen that the multi-channel patern synchronization does not work correctly. The first pulse of the PWM after the pattern change is not always the correct width.
The pattern synchronization is done with the period match event via service request 0. Why does the dithering have this negative effect on the service request? I could understand if the pulse was maybe one clock too short, but the pulse is anything from zero to the correct width.
Could someone please explain what is happening inside the CCU8 to cause this behaviour? Show Less
As we need a high PWM frequency this gives a low PWM resolution. To increase the PWM Resolution I have enabled the PWM dithering. Dithering the period seems to give the most linear result. But now I have seen that the multi-channel patern synchronization does not work correctly. The first pulse of the PWM after the pattern change is not always the correct width.
The pattern synchronization is done with the period match event via service request 0. Why does the dithering have this negative effect on the service request? I could understand if the pulse was maybe one clock too short, but the pulse is anything from zero to the correct width.
Could someone please explain what is happening inside the CCU8 to cause this behaviour? Show Less