|
ELEC-C7222
Libraries for ELEC C7222 Course Work
|
Complete documentation is available at: https://yusein-ali.github.io/c7222-development/
This repository is a Raspberry Pi Pico 2 W focused embedded development workspace for:
The project brings together application examples, reusable libraries, build infrastructure, and local copies of key reference documentation so development and learning can happen in one place.
This project assumes the Raspberry Pi Pico 2 W variant. Other Pico variants may be supported, but they are not tested in this repository workflow.
The project is intended to:
elec_c7222) for device access and Bluetooth workflows.doc/ for quick access during implementation and debugging.getting-started/](getting-started)freertos-c/main_freertos.c: C example using xTaskCreate + vTaskDelay.freertos-cpp/main_freertos.cpp: C++ example using std::thread mapped onto FreeRTOS.libs/elec_c7222/libs/FreeRTOS-Kernel/libs/FreeRTOS_cpp11/std::thread, mutex/condition variable support, sleep_for, etc.).cmake/](cmake)doc/](doc).clang-formatclang-format-based source formatting.config.openocdDoxyfile](Doxyfile)doc/elec-c7222/html/).doc/BTstack-md/doc/FreeRTOS-Kernel-Book/The actual project libraries reside under:
The primary project documentation for these libraries is under:
Library board support targets the ELEC-C7222 Pico2W board. Board-specific details are documented in:
libs/FreeRTOS-Kernel/: FreeRTOS Kernel source tree used by this project.libs/FreeRTOS_cpp11/: FreeRTOS-cpp11 fork used by this project to provide C++ threading integration on FreeRTOS.The entire project is built with CMake.
Key points:
CMakeLists.txt and CMakePresets.json.This project assumes the Pico SDK is installed by the Raspberry Pi Pico Visual Studio Code extension.
Before building, install the extension, then run its Pico setup/bootstrap flow so the SDK/toolchain paths are available in your environment. The cross-compiler toolchain and required build-system components are downloaded during that setup/first initialization flow (not during extension installation itself).
clangd language server often provides more reliable code intelligence than default IntelliSense.clangd in VS Code:cortex-debug, which has limited C++ debugging support, especially around pretty-printing of C++ standard library objects.stdio-based debug prints, and that approach is practical in many embedded workflows..idea/) are provided in this repository.For detailed, step-by-step instructions, use the local guides:
This repository is licensed under the terms described in the [LICENSE](LICENSE) file.
Comments, feedback, and suggestions are welcome.