Open main menu

DAVE Developer's Wiki β

Changes

no edit summary
{{Applies To BoraX}}
{{Applies To BoraLite}}
{{AppliesToBORA_TN}}
{{AppliesToBORA_Xpress_TN}}
{{AppliesToBORA Lite TN}}
{{AppliesToVisualStudioCode}}
{{AppliesTo VisualStudioCode TN}}
{{InfoBoxBottom}}
__FORCETOC__
|-
|1.0.0
|February June 2020
|First public release
|}
== Introduction ==
This Technical Note (TN) shows how to integrate [https://code.visualstudio.com/ Visual Studio Code (VSC) ] and [https://www.lauterbach.com/ Lauterbach PowerView TRACE32 (PVT32)]. The integration aims to:*Debugging Debug the program in VSC by using PVT32 to run it on as a communication bridge with the target*To jump Jump from PVT32 to VSC (in editing mode) to edit the source file where the an issue/bug was found.
This article also shows how ==Testbed==To test the procedure, the same testbed described [[BELK-TN-007:_FreeRTOS_on_single-core_Bora_Lite_SoM|here]] was used. Therefore, the application used to validate the procedure is <code>freertos_hello_world</code>. With regard to configure VSC , the following version was used:<pre>Version: 1.41.1 (system setup)Commit: 26076a4de974ead31f97692a0d32f90d735645c0Date: 2019-12-18T14:58:56.166ZElectron: 6.1.5Chrome: 76.0.3809.146Node.js: 12.4.0V8: 7.6.303.31-electron.0OS: Windows_NT x64 6.1.7601</pre> ==Integrating VSC e PVT32=====Debugging in order VSC by using PVT32 as a communication bridge===*After opening VSC from the root directory of the <code>freertos_hello_world</code> project, install the ''Native Debug'' extension.*Then, create a <code>launch.json</code> file by selecting ''Debug->Add Configuration->GDB''. The file should look like this:<syntaxhighlight lang="text">{ // Use IntelliSense to learn about possible attributes. // Hover to crossview descriptions of existing attributes. // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 "version": "0.2.0", "configurations": [ { "name": "Debug (PowerView TRACE32)", "type": "gdb", "request": "launch", "target": "${workspaceRoot}/Debug/freertos_hello_world.elf", "gdbpath": "e:/Xilinx/SDK/2019.1/gnu/aarch32/nt/gcc-build arm-none-eabi/bin/arm-none-eabi-gdb.exe", "cwd": "${workspaceRoot}", "valuesFormatting": "parseText", "autorun": [ "target remote localhost:30000", "symbol-file ${workspaceRoot}/Debug/freertos_hello_world.elf", ] } ]}</syntaxhighlight>*Edit the PVT32's configuration file (usually named <code>config.t32</code>) and add the following lines:<syntaxhighlight lang="text">; Remote Control AccessGDB=NETASSISTPORT=30000PROTOCOL=TCP</syntaxhighlight>*Run PVT32 and start a Makefiledebugging session (see for instance [[BELK-based applicationTN-007:_FreeRTOS_on_single-core_Bora_Lite_SoM#Running_the_application|this section]]). This configuration supports cross[[File:BoraLite-toolchain error messages to jump VSC1.png|thumb|center|600px|Debugging session started on erroneous lines PVT32 side]]*On VSC side, start a debugging session by pressing F5. VSC will start a debug session that is synchronized with PVT32 as shown in the following image. So you can set breakpoints, steb-by-step execute the code, etc. on VSC side, but the actual operations will be done on the target by PVT32.[[File:BoraLite-VSC2.png|thumb|center|600px|Visual Studio Code and PowerView TRACE32 synchornization during a simple debugging session]] ===Jumping from PVT32 to VSC to edit source files===To enable this functionality, add the following lines to the PRACTICE script used to initialize the debugging session:<syntaxhighlight lang="text">&VSCODE="E:\program_files\MicrosoftVSCode\Code.exe"setup.editext on "&VSCODE -g ""*:#"""</syntaxhighlight>  While debugging, right-clickon the line you want to edit and select ''Edit Source''.[[File:BoraLite-VSC3.png|thumb|center|600px|Using VSC as the default editor for PVT32]]  The source file will be open in VSC, which will jump on the selected line.[[File:BoraLite-VSC4.png|thumb|center|600px|Using VSC as the default editor for PVT32]]
8,221
edits