10-of-my-most-popular-text-to-image-series-prompts-78b0897e
generate a bunch of images, then you curate the results to handpick the best ones
STM32CubeMX CLI operations for configuring pins, peripherals, DMA, interrupts, and generating code. Use cases: (1) Add/modify STM32 peripheral configuration (2) Configure USART/SPI/I2C/ADC/TIM peripherals (3) Set up DMA and interrupts (4) Generate CMake/GCC project code. Default target MCU: STM32F103C8Tx.
Follow the repository instructions for this skill and your agent. Review the files and dependencies before adding it to your workflow.
SkillHub CLI
skillhub install aidankong/stm32-cubemxInspect the source and compatibility requirements, then follow its installation steps.
Give your agent the source link and ask it to inspect instructions and dependencies before explaining the installation steps.
# STM32CubeMX path (modify based on your installation)
CUBEMX=/path/to/STM32CubeMX/STM32CubeMX
# Project path (adjust for your project)
PROJECT_DIR=/path/to/your/project
IOC_FILE=$PROJECT_DIR/your_project.ioc
SCRIPT_FILE=$PROJECT_DIR/cube_headless.txt
1. Modify IOC config file → 2. Run CLI to generate code → 3. CMake build verification
Edit the .ioc file to add/modify peripheral configuration.
Key Configuration Sections:
Mcu.IP0=XXX - Peripheral IP list, Mcu.IPNb is the countMcu.Pin0=PAx - Pin list, Mcu.PinsNb is the countXXX.Signal=YYY - Pin signal mappingProjectManager.functionlistsort - Initialization function list# Headless mode (recommended)
$CUBEMX -q $SCRIPT_FILE
# Script file content
cat > $SCRIPT_FILE << 'EOF'
config load /path/to/your/project/your_project.ioc
project generate
exit
EOF
cd $PROJECT_DIR
rm -rf build/Debug
cmake --preset Debug
cmake --build build/Debug
| Command | Purpose | Example |
|---|---|---|
config load <path> |
Load IOC configuration | config load /path/to/project.ioc |
config save <path> |
Save IOC configuration | config save /path/to/project.ioc |
project generate |
Generate complete project | project generate |
project toolchain <name> |
Set toolchain | project toolchain CMake |
project path <path> |
Set project path | project path /path/to/project |
project name <name> |
Set project name | project name MyProject |
load <mcu> |
Load MCU | load STM32F103C8Tx |
setDriver <IP> <HAL|LL> |
Set driver type | setDriver ADC LL |
exit |
Exit program | exit |
See references/USART_DMA.md for detailed configuration
# Add IP...
These signals come from indexed source analysis and may lag behind changes. Check the current source files.
# STM32CubeMX CLI Operations ## Environment Setup ```bash # STM32CubeMX path (modify based on your installation) CUBEMX=/path/to/STM32CubeMX/STM32CubeMX # Project path (adjust for your project) PROJECT_DIR=/path/to/your/project IOC_FILE=$PROJECT_DIR/your_project.ioc SCRIPT_FILE=$PROJECT_DIR/cube_headless.txt ``` ## Core Workflow ``` 1. Modify IOC config file → 2. Run CLI to generate code → 3. CMake build verification ``` ### Step 1: Modify IOC File Edit the `.ioc` file to add/modify peripheral configuration. **Key Configuration Sections:** - `Mcu.IP0=XXX` - Peripheral IP list, `Mcu.IPNb` is the count - `Mcu.Pin0=PAx` - Pin list, `Mcu.PinsNb` is the count - `XXX.Signal=YYY` - Pin signal mapping - `ProjectManager.functionlistsort` - Initialization function list ### Step 2: Generate Code ```bash # Headless mode (recommended) $CUBEMX -q $SCRIPT_FILE # Script file content cat > $SCRIPT_FILE << 'EOF' config load /path/to/your/project/your_project.ioc project generate exit EOF ``` ### Step 3: Build Verification ```bash cd $PROJECT_DIR rm -rf build/Debug cmake --preset Debug cmake --build build/Debug ``` ## CLI Command Reference | Command | Purpose | Example | |------|------|------| | `config load <path>` | Load IOC configuration | `config load /path/to/project.ioc` | | `config save <path>` | Save IOC configuration | `config save /path/to/project.ioc` | | `project generate` | Generate complete project | `project generate` | | `project toolchain <name>` | Set toolchain | `project toolchain CMake` | | `project path <path>` | Set project path | `project path /path/to/project` | | `project name <name>` | Set project name | `project name MyProject` | | `load <mcu>` | Load MCU | `load STM32F103C8Tx` | | `setDriver <IP> <HAL\|LL>` | Set driver type | `setDriver ADC LL` | | `exit` | Exit program | `exit` | ## Common Peripheral Configuration Templates ### USART + DMA See [references/USART_DMA.md](references/USART_DMA.md) for detailed configuration ```ini # Add IP...
generate a bunch of images, then you curate the results to handpick the best ones
generate a bunch of images, then you curate the results to handpick the best ones
Productivity system based on Maya calendar with 13 natural tones for project management and personal development
Set up and use 1Password CLI (op). Use when installing the CLI, enabling desktop app integration, signing in (single or multi-account), or reading/injecting/running secrets via op.