Sun01 - STM32智能编译烧录助手

版本 : 1.0.0
基于: Qwen2.5-Coder-14B 本地大模型


简介

Sun01是一个纯对话控制的STM32开发助手,通过自然语言对话即可完成:

  • 工程分析与诊断
  • 代码编译(GCC ARM工具链)
  • 固件烧录(J-Link调试器)
  • 技术问题解答

目录结构

复制代码
sun01/
├── run.bat              # Windows启动脚本
├── run.ps1              # PowerShell启动脚本
├── README.md            # 本文档
├── INSTALL.md           # 安装指南
├── sun01/
│   ├── agent.py         # 对话式Agent主程序
│   ├── config.py        # 配置文件
│   ├── __init__.py
│   ├── __main__.py
│   ├── cli.py           # 命令行接口
│   ├── core/
│   │   ├── __init__.py
│   │   ├── project_parser.py   # 工程解析
│   │   ├── builder.py          # 编译模块
│   │   ├── flasher.py          # 烧录模块
│   │   └── ai_assistant.py     # AI助手
│   └── templates/
│       ├── stm32f103c8.ld      # 链接脚本模板
│       └── startup_stm32f103c8.s  # 启动文件模板

快速开始

1. 环境准备

确保以下软件已安装:

软件 版本要求 下载地址
Python >= 3.8 https://www.python.org/downloads/
Ollama 最新版 https://ollama.ai/
GCC ARM >= 10.0 https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-rm
J-Link 任意版本 https://www.segger.com/downloads/jlink/

2. 安装AI模型

复制代码
# 安装Ollama后,拉取代码模型
ollama pull qwen2.5-coder:14b

3. 启动Sun01

双击 run.bat 或在命令行运行:

复制代码
python sun01\agent.py

4. 开始对话

复制代码
==================================================
       Sun01 - STM32 Agent
       Powered by Qwen2.5-Coder-14B
==================================================

[就绪] AI模型: qwen2.5-coder:14b
[就绪] J-Link调试器

输入 '帮助' 查看使用说明,'退出' 结束对话
--------------------------------------------------

你: 分析工程 F:\my_stm32_project

Sun01: 工程分析完成!
路径: F:\my_stm32_project
类型: cubeide
芯片: STM32F103ZETx
CPU: cortex-m3
源文件: 18 个

你: 编译

Sun01: 编译成功!
输出文件:
  HEX: F:\my_stm32_project\build\output.hex
  BIN: F:\my_stm32_project\build\output.bin

你: 烧录

Sun01: 烧录成功!
烧录成功 - STM32F103ZE

你: 退出

支持的对话指令

工程操作

指令 说明 示例
分析 路径 分析STM32工程结构 分析工程 F:\my_project
编译 路径 编译工程 编译编译 F:\my_project
烧录 文件 烧录固件到开发板 烧录烧录 F:\output.hex
运行 路径 编译并烧录 运行 F:\my_project

系统操作

指令 说明
状态 检查环境状态
帮助 显示使用说明
退出 结束对话

技术问答

直接提问任何STM32相关问题:

复制代码
你: 解释一下HAL库的初始化流程
你: 帮我写一个LED闪烁的代码
你: STM32的时钟系统怎么配置

支持的工程类型

类型 识别方式
STM32CubeIDE .cproject文件
Keil MDK .uvprojx文件
Makefile工程 Makefile文件
通用工程 自动扫描源文件

支持的STM32系列

系列 CPU FPU
F103 Cortex-M3 softvfp
F407 Cortex-M4 fpv4-sp-d16
F429 Cortex-M4 fpv4-sp-d16
H743 Cortex-M7 fpv5-d16

配置说明

编辑 sun01/config.py 可修改:

复制代码
# AI模型配置
OLLAMA_MODEL = "qwen2.5-coder:14b"

# 默认目标设备
JLINK_DEVICE = "STM32F103C8"

# 编译优化等级
DEFAULT_OPTIMIZATION = "-O2"

常见问题

Q: Ollama服务未运行?

复制代码
# 启动Ollama服务
ollama serve

Q: 编译失败?

  1. 检查GCC ARM是否已安装并添加到PATH
  2. 确认工程路径正确
  3. 查看错误信息,AI会自动诊断

Q: 烧录失败?

  1. 检查J-Link是否已安装
  2. 确认J-Link已连接开发板
  3. 检查开发板供电正常

Q: 中文显示乱码?

使用PowerShell启动:

复制代码
powershell -ExecutionPolicy Bypass -File run.ps1

系统要求

  • 操作系统: Windows 10/11
  • 内存: 建议16GB以上(运行14B模型)
  • 磁盘: 约20GB(含模型)
相关推荐
想会飞的蒲公英几秒前
一个 PyTorch 模型训练的完整流程
人工智能·pytorch·python
Lucky_luckyZzz5 分钟前
销售会话分析设备选型:成熟方案实测红榜与避坑指南
人工智能
华普微HOPERF8 分钟前
容耦数字隔离器,如何调节OOK调制所产生的谐波分量?
物联网·数字隔离器
c_lb728813 分钟前
最新AI量化练习,小策略更适合练流程感
人工智能·python
腾讯云大数据15 分钟前
腾讯云TBDS面向AI时代的多模态智算平台,助力企业AI转型
人工智能·云计算·腾讯云·tbds
金智维科技官方22 分钟前
AI驱动的应付账款自动化,落地时要拆解哪些流程?
运维·人工智能·自动化
蓝速科技25 分钟前
蓝速科技 AI 数字人渲染显卡选型与部署指南
人工智能·科技
电化学仪器白超29 分钟前
低阻域 ADC 与参考源选型理论分析
人工智能·python·单片机·嵌入式硬件·自动化
AI科技星33 分钟前
超复数全域经济周期场与信息谱场——金融与密码学底层理论重构《0·1·∞三元一体全域超复数统一场论》系列全集(六一字不漏完整合订终版)
人工智能·算法·金融·密码学·拓扑学·乖乖数学·全域数学
小小的代码里面挖呀挖呀挖37 分钟前
杰理蓝牙耳机开发--LE Audio与游戏耳机应用
笔记·单片机·物联网·学习