This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

SWO

I am using the Segger Embeded studio and wondering about the SWO output.

I know I can load code and set break points with just SWDIO and SWDCLK.

So with RTT do I really need SWO ?

If I want SWO can it be on any GPIO pin ?

Can I have one pin that has SWO and GPIO for led control at the same time?

How much of my RAM on a nRF52840 does RTT support take ?

Parents
  • Hi,

    SWO uses special pins, that can only be used for that single purpose. Those are what we often refer to as the "programmer pins", as they are used for programming the board. RTT is also done over these pins. That means that no, you cannot use GPIO pins for this purpose. Also, you cannot use SWDIO and SWDCLK for GPIO or any other purpose than SWO.

    Edit: I was mixing up SWO with something else. I am very sorry. SWO uses a GPIO pin and that pin can be used for any other GPIO purpose, but you can not use the other GPIO pins for SWO. RTT on the other hand uses SWDCLK and SWDIO, which means it uses the special purpose programmer pins (and it cannot use any GPIO pins). See also the answers by , he knows his stuff.

    RAM requirement depends on implementation. I am afraid that I do not have any specific numbers for that, but you could have a look at map files, etc. for some clues. Also if you build a project with and without RTT logging enabled you will see some differences in the build output with regards to memory footprint. (Not including stack usage, however.)

    Regards,
    Terje

Reply
  • Hi,

    SWO uses special pins, that can only be used for that single purpose. Those are what we often refer to as the "programmer pins", as they are used for programming the board. RTT is also done over these pins. That means that no, you cannot use GPIO pins for this purpose. Also, you cannot use SWDIO and SWDCLK for GPIO or any other purpose than SWO.

    Edit: I was mixing up SWO with something else. I am very sorry. SWO uses a GPIO pin and that pin can be used for any other GPIO purpose, but you can not use the other GPIO pins for SWO. RTT on the other hand uses SWDCLK and SWDIO, which means it uses the special purpose programmer pins (and it cannot use any GPIO pins). See also the answers by , he knows his stuff.

    RAM requirement depends on implementation. I am afraid that I do not have any specific numbers for that, but you could have a look at map files, etc. for some clues. Also if you build a project with and without RTT logging enabled you will see some differences in the build output with regards to memory footprint. (Not including stack usage, however.)

    Regards,
    Terje

Children
No Data
Related