见字如面,好久不见
这里是AIGC创意人竹相左边,我决定即日起 改名 AGI散修竹相左边。
从今天起(2025 年 7 月 28 日上午 11:19 +08),我将以“野路子散修”的身份,用 AI 的力量辅助自学知识技能,分享验证可行的技术攻略。
就像修真世界中的散修,我希望为那些求学无门或突破卡壳的新手提供实用桥梁,尤其是在软硬件领域,目标是“手搓火箭”,进军嵌入式开发!
【
想了好久,想到了 散修这个关键词,
含义是相比较科班人工智能出身的AI专家,我是个野路子散修,
散修的二层含义是,就像修真者一样,很多新人求学无门或者突破卡壳,名门望族又不乐意花费时间做入门衔接攻略。这件事就刚好落到我们散修/邪修身上了。
】
所以,AGI散修竹相左边只分享验证可行的技术
废话说到这里,本篇文章主要是做记录,作为笔记备份。
工具来源
硬件工具:
USB-TTL 适配器:已购买(建议 CH340/CH341,3.3V 输出)。
连接线:杜邦线或跳线,用于连接 ISP 引脚。
塑料撬棒:非暴力拆机工具,避免损坏外壳。
软件工具:
STM32CubeMX
:下载,Win64 版,用于生成代码框架。
STM32CubeProgrammer
:下载,Win64 版,用于固件提取和烧录。
驱动
:USB-TTL 驱动(如 CH340),从适配器官网下载。
可选编译器
:STM32CubeIDE 或 Keil(需安装,生成 .bin/.hex 文件)。
入口 进网页注册后,再选开发者工具。
https://www.st.com.cn/content/st_com/zh/stm32-mcu-developer-zone.html进入后,找到上方ST开发者社区,选择中间的软件开发工具。
里面工下载两个工具,
STM32CubeMX
STM32CubeProgrammer
一个用来写代码,另一个是用来烧录代码到硬件里面。注册了就可以免费下载
硬件准备
设备:米家智能香氛机(MJXJF03XW)。
USB-TTL:确认电压(3.3V 安全),检查 COM 端口(Windows 设备管理器)。
连接:准备好杜邦线,待定位 ISP 引脚后连接。
安全措施:万用表(可选),检查引脚电压;断电操作,避免短路。
软件准备
安装 STM32CubeMX:
双击 SetupSTM32CubeMX.exe,按提示安装,需管理员权限。
安装 STM32CubeProgrammer:
双击 SetupSTM32CubeProgrammer.exe,以管理员身份安装,检查更新。
驱动安装:
安装 USB-TTL 驱动,确认 COM 端口。
环境检查:
Windows 10/11,建议更新系统。
文字流程 方便打印出来,做对照表进度使用。
自学嵌入式项目:修改 MJXJF03XW 实现 30 秒连续喷雾
├── 1. 准备阶段
│ ├── 1.1 确认硬件
│ │ └── 轻度拆机,找到 STM32 芯片(检查标记如 STM32F103)
│ ├── 1.2 安装软件
│ │ ├── 1.2.1 STM32CubeMX
│ │ │ └── 生成代码框架
│ │ ├── 1.2.2 STM32CubeProgrammer
│ │ │ └── 烧录与提取工具
│ │ └── 1.2.3 驱动
│ │ └── 安装 USB-TTL 驱动
│ └── 1.3 连接 USB-TTL
│ └── 验证 3.3V 输出,准备杜邦线
├── 2. 固件提取阶段
│ ├── 2.1 配置 STM32CubeProgrammer
│ │ └── 选择 UART 模式,设置 COM 端口(115200 波特率)
│ ├── 2.2 进入 DFU 模式
│ │ └── 短接 BOOT0 到 3.3V,复位 MCU
│ ├── 2.3 读取固件
│ │ └── 点击“Read Memory”,导出 .bin 文件,备份
│ └── 2.4 验证备份
│ └── 确认文件完整性
├── 3. 代码设计与修改阶段
│ ├── 3.1 用 STM32CubeMX 生成代码
│ │ └── 选择 STM32 型号,配置定时器,生成项目
│ ├── 3.2 修改定时逻辑
│ │ └── 编辑主循环:HAL_GPIO_WritePin(Spray_Pin, GPIO_PIN_SET); HAL_Delay(30000); HAL_GPIO_WritePin(Spray_Pin, GPIO_PIN_RESET);
│ ├── 3.3 编译代码
│ │ └── 用 STM32CubeIDE 或 Keil 编译,生成新 .bin
│ └── 3.4 模拟测试
│ └── 检查逻辑正确性
├── 4. 烧录与测试阶段
│ ├── 4.1 进入烧录模式
│ │ └── 短接 BOOT0,连接 STM32CubeProgrammer
│ ├── 4.2 执行烧录
│ │ └── 加载新 .bin,点击“Start Programming”
│ ├── 4.3 验证启动
│ │ └── 复位设备,检查是否正常
│ ├── 4.4 测试功能
│ │ └── 确认 30 秒连续喷雾
│ └── 4.5 问题排查
│ └── 检查连接、电压或固件错误
├── 5. 优化与完成
│ ├── 5.1 调整参数
│ │ └── 优化喷雾量或添加循环
│ ├── 5.2 恢复方案
│ │ └── 烧录原始 .bin 恢复
│ └── 5.3 记录与总结
│ └── 备份成果,分享经验
├── 6. 注意事项
│ ├── 6.1 安全操作
│ │ └── 断电连接,验证引脚,3.3V 供电
│ ├── 6.2 法律风险
│ │ └── 仅限个人学习,遵守小米政策
│ └── 6.3 砖块风险
│ └── 备份固件,谨慎烧录
图文攻略:实操步骤详解
- 准备阶段
图片建议
:展示 USB-TTL 适配器和塑料撬棒。
操作
:
轻拆 MJXJF03XW 外壳,用撬棒找到主板,查看芯片(目标是 STM32F103 等)。
安装 STM32CubeMX 和 CubeProgrammer,下载驱动。
连接 USB-TTL,确认 COM 端口。 - 固件提取阶段
图片建议
:展示 STM32CubeProgrammer 界面和 USB-TTL 连接图。
操作
:
打开 CubeProgrammer,选择 UART 模式,设置 COM 端口。
短接 BOOT0 到 3.3V,复位,点击“Connect”。
读取固件,保存 .bin 文件。 - 代码设计与修改阶段
图片建议
:截图 CubeMX 配置界面和代码编辑器。
操作
:
用 CubeMX 创建项目,配置定时器。
修改代码,添加 30 秒延时逻辑。
编译生成新 .bin 文件。 - 烧录与测试阶段
图片建议
:展示烧录过程和喷雾测试效果。
操作
:
进入烧录模式,加载新 .bin,点击“Start Programming”。
复位设备,测试 30 秒喷雾。
若失败,检查连接或固件。 - 优化与完成
图片建议
:记录最终效果和恢复步骤。
操作
:
调整参数,优化体验。
备份成果,准备恢复方案。
注意事项
安全
:始终断电操作,3.3V 供电,避免短路。
法律
:仅限个人学习,勿用于商业。
风险
:备份固件,谨慎烧录,若成“砖块”用原始 .bin 恢复。