Not applicable
Oct 11, 2017
07:30 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Oct 11, 2017
07:30 AM
Hi,
I'm working on the programming algorithm for the XMC1402-0064 device. Unfortunately I cannot communicate with the device via SWD.
The connection sequence used is the same for the Cortex device ( STM32, NXP etc) and also described in the "XMC1400 AA-Step XMC1000 Family Reference Manual with 50 clock cycles data = 1s. However, I'm not able to read the SW_DP IDCODE.
When I tried with J-Link, I got this:
After that, I tried again with my tool and it works successfully, even after POR. I can read the IDCODE and perform all the SWD commands.
It seems that the J-Link sends a special sequence to enable the SWD protocol.
Is there a special command (maybe via SPD) to send before starting the connection sequence?
Thanks in advance
Best regards,
Luca
I'm working on the programming algorithm for the XMC1402-0064 device. Unfortunately I cannot communicate with the device via SWD.
The connection sequence used is the same for the Cortex device ( STM32, NXP etc) and also described in the "XMC1400 AA-Step XMC1000 Family Reference Manual with 50 clock cycles data = 1s. However, I'm not able to read the SW_DP IDCODE.
When I tried with J-Link, I got this:
After that, I tried again with my tool and it works successfully, even after POR. I can read the IDCODE and perform all the SWD commands.
It seems that the J-Link sends a special sequence to enable the SWD protocol.
Is there a special command (maybe via SPD) to send before starting the connection sequence?
Thanks in advance
Best regards,
Luca
- Tags:
- IFX
3 Replies
Oct 11, 2017
09:18 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Oct 11, 2017
09:18 AM
Is it a new XMC1400 chip?
If yes, then you should modify the BMI before you could use the SWD interface. New XMC1x devices are configured as ASC interface, bizzarelly.
If yes, then you should modify the BMI before you could use the SWD interface. New XMC1x devices are configured as ASC interface, bizzarelly.
Oct 12, 2017
05:41 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Oct 12, 2017
05:41 AM
Hi,
Once you have connected with JLink commander, get the BMI value by typing:
J-Link>GetBMI
Current BMI mode: 2.
where the mode represents:
0 ASC Bootstrap Load Mode (ASC_BSL)
1 User Mode (Productive)
2 User Mode (Debug) SWD0
3 User Mode (Debug) SWD1
4 User Mode (Debug) SPD0
5 User Mode (Debug) SPD1
6 User Mode (HAR) SWD0
7 User Mode (HAR) SWD1
8 User Mode (HAR) SPD0
9 User Mode (HAR) SPD1
Which mode do yout get?
If you want to set the BMI mode to SWD0 (P0.14/P0.15), just use JLink command, SetBMI 2
Regards,
Jesus
Once you have connected with JLink commander, get the BMI value by typing:
J-Link>GetBMI
Current BMI mode: 2.
where the mode represents:
0 ASC Bootstrap Load Mode (ASC_BSL)
1 User Mode (Productive)
2 User Mode (Debug) SWD0
3 User Mode (Debug) SWD1
4 User Mode (Debug) SPD0
5 User Mode (Debug) SPD1
6 User Mode (HAR) SWD0
7 User Mode (HAR) SWD1
8 User Mode (HAR) SPD0
9 User Mode (HAR) SPD1
Which mode do yout get?
If you want to set the BMI mode to SWD0 (P0.14/P0.15), just use JLink command, SetBMI 2
Regards,
Jesus
Not applicable
Oct 13, 2017
09:04 AM
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Oct 13, 2017
09:04 AM
Thank you so much for your replies.
I tried to connect via ASC_BSL and it works! After sending "0x00 0x6C" it answers 0x5D.
Again, thank you for your support!
Now, if I want to change the BMI via UART, I have to download the flash loader and then send the "execute ‘Change BMI’ routine" command. Am I right?
Is it correct the syntax command described in the AP32277 - ASC Bootstrap loader for XMC1000 document p.18?
I tried to connect via ASC_BSL and it works! After sending "0x00 0x6C" it answers 0x5D.
Again, thank you for your support!
Now, if I want to change the BMI via UART, I have to download the flash loader and then send the "execute ‘Change BMI’ routine" command. Am I right?
Is it correct the syntax command described in the AP32277 - ASC Bootstrap loader for XMC1000 document p.18?