This repository provides a streamlined workflow for building C programs using CMake and Ninja to generate ELF files, with automated firmware uploading using Makefile and batch scripts. It eliminates the need for manually executing commands, making the development process faster and more efficient.
Click on the Tutorial badge to learn how to create C/C++ projects for the C-DAC Aries V3 THEJAS32 Microcontroller Board using Taurus SDK developed by @rnayabed (a fork of Vega SDK with further improvements, click on the Taurus badge to view the repository).
- β Automated Build System β Uses CMake and Ninja for compiling C programs.
- β Flexible Firmware Upload β Supports both XMODEM (RAM upload) and Flasher (Flash memory upload).
- β
Makefile-Based Automation β Run
make buildto compile andmake uploadto flash firmware interactively. - β Batch Script Integration β Ensures seamless execution of upload commands without navigating directories.
- β Dynamic Project Support β Automatically detects and handles different project folders and ELF files.
make buildmake uploadBefore Running make upload change COM PORT number & uploading tools locations upon your system. Given COM Port and locations are my system specific.
Upon Running this command A Prompt will be generated for selecting the uplaoding method:
- 1οΈβ£ Upload via XMODEM
- 2οΈβ£ Upload via FLASHER
make cleanβββ project-folder/
β βββ build/ # Build directory (Generated)
| βββ <source_file.c>
β βββ CMakeLists.txt # CMake configuration
β βββ Makefile # Build & Upload automation
β βββ upload.bat # Batch script for firmware upload
- Saves time by automating building & uploading.
- Works seamlessly on Windows.
- No need to manually navigate folders or run multiple commands.