Skip to main content
Graduate II
August 13, 2024
Solved

STM32_Debugger_IC

  • August 13, 2024
  • 2 replies
  • 1761 views

I have a general question. I am using STM32F423 and STM32L407 Evaluation boards for practicing. So in both there boards they are using the debugger IC which is STM32F103CBT6.
i.  Why are they using this IC and what exactly does this IC does in programming the main IC.?
ii. Without this if we program, what will happen? and why can't we do that.?

    This topic has been closed for replies.
    Best answer by Tesla DeLorean

    Aren't there block diagrams in the user manuals?

    It provides a means of accessing the target IC's scan-chains via JTAG or SWD protocols

    The target IC can work fine without this access, you can program the parts in-situ using the methods described in app note AN2606, for UART connectivity AN3155.

    You can use stand-alone debug pods, like the Segger J-Link, ARM U-Link, but these add cost and clutter compared to providing already attached, On-Board.

    The integration of the debugger onto the NUCLEO and DISCO board allows for cheap, easy access, with a single board and cable. Something you can give a student, they can work on immediately in the lab, or take home.

     

    The STM32F103 programmed with the debugger are not available in the sense of the ATMEL/MICROCHIP EDBG solution, but you can get some ST-LINK/V3MINI(E) type formats you can solder to your own development boards.

    2 replies

    Technical Moderator
    August 13, 2024

    The function is explained in the manuals of the boards: it is the ST-LINK/V2-1 debugger.

    1. ST-LINK/V2-1 is the interface between the USB port of the host and the SWD port of the target.
    2. Of course, like the majority of users, you can build your own board without ST-LINK, but then you will need an external interface for debugging or programming. This can be one of the ST-LINK derivatives, but also a debugger from another manufacturer. All supported debugger/programming interfaces can be found here.

    Hope that answers your questions?

    Regards
    /Peter

    Graduate II
    August 13, 2024

    Aren't there block diagrams in the user manuals?

    It provides a means of accessing the target IC's scan-chains via JTAG or SWD protocols

    The target IC can work fine without this access, you can program the parts in-situ using the methods described in app note AN2606, for UART connectivity AN3155.

    You can use stand-alone debug pods, like the Segger J-Link, ARM U-Link, but these add cost and clutter compared to providing already attached, On-Board.

    The integration of the debugger onto the NUCLEO and DISCO board allows for cheap, easy access, with a single board and cable. Something you can give a student, they can work on immediately in the lab, or take home.

     

    The STM32F103 programmed with the debugger are not available in the sense of the ATMEL/MICROCHIP EDBG solution, but you can get some ST-LINK/V3MINI(E) type formats you can solder to your own development boards.

    Visitor II
    August 14, 2024

    On almost all boards - you can disable the STM32 debugger IC chip.
    You should have a header to connect an external debugger.

    Potentially, any JTAG/SWD adapter should be able to access and program the MCU. Best is to use an external STM32 Debugger dongle (external ST-LINK).

    It works fine (done on many boards).

    Just to bear in mind:
    Sometimes (depends on the board), the STM debugger chip generates also the core clock for the main MCU. So, disabling Debugger (and allowing to connect an external debugger) might just disconnect the JTAG/SWD wires.
    Just check the schematics for this board in order to see how the "external Debug connector" works.