How to in circuit a XMC1200

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Not applicable
Hello,
I made some software for the XMC1200 Boot Kid.
Now I would like to design a pcb with this controller. What have I to consider about
to flash the controller on board?

Regards,
Bernd
0 Likes
21 Replies
User7921
Level 3
Level 3
Hi Bernd,

the controllers come with activated ASC Bootloader mode (not with debug mode, like the boot kit devices), so it scans for a start condition on the UARTS.
We dedicated pins 0.14 and 0.15 to be the programming and debugging interface.
We have a series resistor of 100R and a pullup resistor of 10K on each of these pins and a header for production programming.
Works fine for a couple of thousand devices till now 😉

Michael
0 Likes
Not applicable
Hello Michael,

Thank you for your help!
Would it be possible in this case to flash the controller like the Boot-Kid with "Dave" or "Keil" and what is that
for a header?

Regards,
Bernd
0 Likes
User7921
Level 3
Level 3
Hi Bernd,

if the device is "from the roll", the ASC Bootloader Mode is activated.
So the device just listens on the UARTs for asyncronous communication.
For programming in this mode the Infineon Memtool is used.
Our header just connects P0.14, P0.15 and GND.
If you want to debug the part via Jlink (Dave or µVision) you have to change the boot mode to
USER MODE Debug SWD0 or SWD1, depending on the port you want to use for debugging.
If you want to debug on P0.14 and P0.15, just set USER MODE Debug SWD0.
You can use the same pins now for debugging or asycr. programming.

But if you did change the bootmode to debug, the programming via Memtool is not possible anymore.
You have to change the boot mode back to ASC with e.g. DAVE.
I have a dedicated pin on the XMC and a pin on the header which is interrupt driven and changes the boot mode back to ASC by software
if pulled to GND.

Michael
0 Likes
Not applicable
Hi Michael,

Thank you for this help!
I'm going to try it asap.

Bernd
0 Likes
Not applicable
Hi Bernd,

Just to add more info, you need the debugger hardware (i.e.: Segger J-link) in order to used in debug mode ( i.e. USER MODE DEBUG SWD0).
On our Boot Kit, we have the on-board J-link lite debugger.
That's why you could just plug in the USB and start debugging.
0 Likes
Not applicable
Hi Jackson,

Thank you for your answer!

Is it possible to modify the XMC1200 Boot Kid about to flash extern controllers?

Regards,
Bernd
0 Likes
Not applicable
Hi Bernd,

Unfortunately this is illegal.
The license Infineon had signed with Segger does not allow the on-chip debugger to program other devices except the one on the boot kit.
0 Likes
Not applicable
Hi Jackson,

Thank you for your help!

Is this what you mean?
Would it be possible with this tool to debug and flash my own XMC1200 controller on my electronic board?

Regards,
Bernd
0 Likes
Not applicable
Hi all,

I have the problem to connect my MemTool 4.5 via XMC1200-BootKid (P0.14= RXD, P0.15 = TXD) to the Target.
After "Connect" I get the message "Can't connect to Target".
I changed some MemTool adjustments but I can't measure any signals at the controller ports.

984.attach984.attach

Thank you for any help,
Bernd
0 Likes
Not applicable
Hi Bernd,

Did you check with DAVE3 GetBMI utility that the device are ASC BSL mode?
Can you also test whether your device is working in ASC BSL mode by sending 2 bytes data, 0x00 and 0x6C instead of using Memtool?
If the device is in ASC BSL mode, it will detect the host baud rate and reply with 0x5D as an acknowledgement.

And also what is the baud rate you are using?
0 Likes
Not applicable
Thank you for your quick answer!

If I connect the BootKid SWD/SPD => P0.14 and SWCLK => P0.15 in DAVE3 i get the BMI-Code "ASC Bootstrap Load Mode (ASC_BSL)".
Then I changed the BootKid connection TX => P0.14 and RX => P0.15.

Access Device: COM11: JLing CDC UART Port
MemTool Baudrate: 19200
Internal Clock Frequeny: 64000KHz

What is the meaning of File? Have I to load any File?985.attach

Thank you!!
0 Likes
User7921
Level 3
Level 3
Hi Bernd,

please enable the log to see if the problem is on the PC's serial port.
I discovered a problem with low baudrates. My PC's serial port did not work correcty on 9600 :mad:
I always use 28800 baud for programming. No problem.

Gruß
Michael
0 Likes
Not applicable
Hi Michael,

Sorry, I have allways the same Message. Here my Log file.
987.attach
0 Likes
Not applicable
If I send "0 6C" via HyperTerminal Baudrate = 9600, I get the answer "F8".
0 Likes
Not applicable
Now I recieve "0x5D".

What can I do now?
0 Likes
Not applicable
I had to disconnect the usb cable and now it works!!

Thank you very much!!
0 Likes
User7921
Level 3
Level 3
😮

Hi Bernd,

when Memtool is open and you disconnect the jLink (USB) and reconnect it,
sometimes the virtual COM port changes and Memtool does not see the jLink anymore.

Have fun with the XMC!

Michael
0 Likes
Not applicable
Hi Michael,

Sorry, I have a lot of problems with the BMI.
Yesterday I could change the BMI so that I could see the new BMI via DAVE3
but I couldn't flash the device.

How do you change the BMI?

Bernd
0 Likes
User7921
Level 3
Level 3
Hi Bernd.

If your actual BMI is something with DEBUG:
Start Dave 3.1.10. There's a button "BMI get Set". You can change the BMI e.g. back to ASC.

If your actual BMI is ASC (with or without timeout):
Start Memtool and connect to your board.
Click "HW Protect" button.
The following instruction comes "out of my mind", I do not have a connection at the moment.
Click "Setup" button.
Set the desired BMI.
Go back one step.
Click "Start" button.
If you have a Memtool version <4.5, the first try will end in an error message....
Just try it a second time.
In Memtool 4.5 it works at first try.

Michael
0 Likes
Not applicable
Thank you Michael,

It works!! Thank you very much!!
I made it like your description with the resistors.

Are you familar with XMC?

Regards,
Bernd
0 Likes
User7921
Level 3
Level 3
Yes, we use the XMC45xx chips and the XMC1302 chips in some of our upcoming devices.
The chips are powerful and cheap and I really like DAVE. I use Eclipse for programming since the first version and
Dave is "just" a plugin.If you are using DAVE for a while and then you have to do some coding in MPLAB (Microchips),
you start crying...

Don't hesitate to ask if you need some help.
You can also write me a PM.
But for the next 4 weeks I'm in the States and not in my lab.

Michael
0 Likes