Updated documentation
This commit is contained in:
parent
f7643a4d82
commit
e9248b225e
6 changed files with 54 additions and 8 deletions
|
@ -33,7 +33,7 @@ The dev enviroment comes with some scripts to make this easier, They are located
|
|||
|
||||
There are also VSCode tasks provided should you desire to use those.
|
||||
|
||||
The task BuildInit will update submodules and configure for openocd
|
||||
The task "update submodules" will update the git submodules
|
||||
|
||||
|
||||
|
||||
|
@ -41,7 +41,7 @@ The task BuildInit will update submodules and configure for openocd
|
|||
|
||||
You can use the build.sh script located in /opt/
|
||||
|
||||
There will also eventually be a Build task. - Not written yet
|
||||
CMake is also configured and controlls for the CMake plugin are available in VSCode
|
||||
|
||||
|
||||
|
||||
|
|
4
.vscode/cmake-variants.json
vendored
4
.vscode/cmake-variants.json
vendored
|
@ -47,14 +47,14 @@
|
|||
"short": "No DFU",
|
||||
"long": "Do not build DFU",
|
||||
"settings": {
|
||||
"BUILD_DFU":0
|
||||
"BUILD_DFU":"0"
|
||||
}
|
||||
},
|
||||
"yes": {
|
||||
"short": "Build DFU",
|
||||
"long": "Build DFU",
|
||||
"settings": {
|
||||
"BUILD_DFU":1
|
||||
"BUILD_DFU":"1"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
3
.vscode/extensions.json
vendored
Normal file
3
.vscode/extensions.json
vendored
Normal file
|
@ -0,0 +1,3 @@
|
|||
{
|
||||
"recommendations": ["ms-vscode.cpptools","ms-vscode.cmake-tools","marus25.cortex-debug"]
|
||||
}
|
8
.vscode/launch.json
vendored
8
.vscode/launch.json
vendored
|
@ -4,13 +4,13 @@
|
|||
{
|
||||
"name": "Debug - Openocd docker Remote",
|
||||
"type":"cortex-debug",
|
||||
"cortex-debug.armToolchainPath":"${env:COMPILER_DIR}/bin",
|
||||
"cortex-debug.armToolchainPath":"${env:ARM_NONE_EABI_TOOLCHAIN_PATH}/bin",
|
||||
"cwd": "${workspaceRoot}",
|
||||
"executable": "${command:cmake.launchTargetPath}",
|
||||
"request": "launch",
|
||||
"servertype": "external",
|
||||
// This may need to be arm-none-eabi-gdb depending on your system
|
||||
"gdbPath" : "${env:COMPILER_DIR}/bin/arm-none-eabi-gdb",
|
||||
"gdbPath" : "${env:ARM_NONE_EABI_TOOLCHAIN_PATH}/bin/arm-none-eabi-gdb",
|
||||
// Connect to an already running OpenOCD instance
|
||||
"gdbTarget": "host.docker.internal:3333",
|
||||
"svdFile": "${workspaceRoot}/nrf52.svd",
|
||||
|
@ -24,13 +24,13 @@
|
|||
{
|
||||
"name": "Debug - Openocd Local",
|
||||
"type":"cortex-debug",
|
||||
"cortex-debug.armToolchainPath":"${env:COMPILER_DIR}/bin",
|
||||
"cortex-debug.armToolchainPath":"${env:ARM_NONE_EABI_TOOLCHAIN_PATH}/bin",
|
||||
"cwd": "${workspaceRoot}",
|
||||
"executable": "${command:cmake.launchTargetPath}",
|
||||
"request": "launch",
|
||||
"servertype": "openocd",
|
||||
// This may need to be arm-none-eabi-gdb depending on your system
|
||||
"gdbPath" : "${env:COMPILER_DIR}/bin/arm-none-eabi-gdb",
|
||||
"gdbPath" : "${env:ARM_NONE_EABI_TOOLCHAIN_PATH}/bin/arm-none-eabi-gdb",
|
||||
// Connect to an already running OpenOCD instance
|
||||
"gdbTarget": "localhost:3333",
|
||||
"svdFile": "${workspaceRoot}/nrf52.svd",
|
||||
|
|
|
@ -87,6 +87,7 @@ As of now, here is the list of achievements of this project:
|
|||
- [Build the project](doc/buildAndProgram.md)
|
||||
- [Flash the firmware using OpenOCD and STLinkV2](doc/openOCD.md)
|
||||
- [Build the project with Docker](doc/buildWithDocker.md)
|
||||
- [Build the project with VSCode](doc/buildWithVScode.md)
|
||||
- [Bootloader, OTA and DFU](./bootloader/README.md)
|
||||
- [Stub using NRF52-DK](./doc/PinetimeStubWithNrf52DK.md)
|
||||
- Logging with JLink RTT.
|
||||
|
|
42
doc/buildWithVScode.md
Normal file
42
doc/buildWithVScode.md
Normal file
|
@ -0,0 +1,42 @@
|
|||
# Build and Develop the project using VS Code
|
||||
|
||||
The .VSCode folder contains configuration files for developing InfiniTime with VS Code. Effort was made to have these rely on Environment variables instead of hardcoded paths.
|
||||
|
||||
## Environment Setup
|
||||
|
||||
To support as many setups as possible the VS Code configuration files expect there to be certain environment variables to be set.
|
||||
|
||||
Variable | Description | Example
|
||||
----------|-------------|--------
|
||||
**ARM_NONE_EABI_TOOLCHAIN_PATH**|path to the toolchain directory|`export ARM_NONE_EABI_TOOLCHAIN_PATH=/opt/gcc-arm-none-eabi-9-2020-q2-update`
|
||||
**NRF5_SDK_PATH**|path to the NRF52 SDK|`export NRF5_SDK_PATH=/opt/nRF5_SDK_15.3.0_59ac345`
|
||||
|
||||
## VS Code Extensions
|
||||
|
||||
We leverage a few VS Code extensions for ease of development.
|
||||
|
||||
#### Required Extensions
|
||||
|
||||
- [C/C++](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cpptools) - C/C++ IntelliSense, debugging, and code browsing.
|
||||
- [CMake Tools](https://marketplace.visualstudio.com/items?itemName=ms-vscode.cmake-tools) - Extended CMake support in Visual Studio Code
|
||||
|
||||
#### Optional Extensions
|
||||
|
||||
[Cortex-Debug](https://marketplace.visualstudio.com/items?itemName=marus25.cortex-debug) - ARM Cortex-M GDB Debugger support for VSCode
|
||||
|
||||
Cortex-Debug is only required for interactive debugging using VS Codes built in GDB support.
|
||||
|
||||
|
||||
|
||||
## VS Code/Docker DevContainer
|
||||
|
||||
The .devcontainer folder contains the configuration and scripts for using a Docker dev container for building InfiniTime
|
||||
|
||||
Using the [Remote-Containers](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers) extension is recommended. It will handle configuring the Docker virtual machine and setting everything up.
|
||||
|
||||
More documentation is available in the [readme in .devcontainer](.devcontainer/readme.md)
|
||||
|
||||
|
||||
|
||||
|
||||
|
Loading…
Reference in a new issue