自学嵌入式攻略 - 修改米家香氛机固件

简介: AGI散修竹相左边,自学嵌入式攻略 - 修改米家香氛机固件

见字如面,好久不见
这里是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开发者社区,选择中间的软件开发工具。

image.png

里面工下载两个工具,
STM32CubeMX
STM32CubeProgrammer
一个用来写代码,另一个是用来烧录代码到硬件里面。注册了就可以免费下载
image.png

image.png

硬件准备
设备:米家智能香氛机(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 砖块风险

│       └── 备份固件,谨慎烧录

image.png
image.png


图文攻略:实操步骤详解

  1. 准备阶段
    图片建议
    :展示 USB-TTL 适配器和塑料撬棒。
    操作

    轻拆 MJXJF03XW 外壳,用撬棒找到主板,查看芯片(目标是 STM32F103 等)。
    安装 STM32CubeMX 和 CubeProgrammer,下载驱动。
    连接 USB-TTL,确认 COM 端口。
  2. 固件提取阶段
    图片建议
    :展示 STM32CubeProgrammer 界面和 USB-TTL 连接图。
    操作

    打开 CubeProgrammer,选择 UART 模式,设置 COM 端口。
    短接 BOOT0 到 3.3V,复位,点击“Connect”。
    读取固件,保存 .bin 文件。
  3. 代码设计与修改阶段
    图片建议
    :截图 CubeMX 配置界面和代码编辑器。
    操作

    用 CubeMX 创建项目,配置定时器。
    修改代码,添加 30 秒延时逻辑。
    编译生成新 .bin 文件。
  4. 烧录与测试阶段
    图片建议
    :展示烧录过程和喷雾测试效果。
    操作

    进入烧录模式,加载新 .bin,点击“Start Programming”。
    复位设备,测试 30 秒喷雾。
    若失败,检查连接或固件。
  5. 优化与完成
    图片建议
    :记录最终效果和恢复步骤。
    操作

    调整参数,优化体验。
    备份成果,准备恢复方案。
    注意事项
    安全
    :始终断电操作,3.3V 供电,避免短路。
    法律
    :仅限个人学习,勿用于商业。
    风险
    :备份固件,谨慎烧录,若成“砖块”用原始 .bin 恢复。
相关文章
|
人工智能 安全
大模型安全撬壳计划(一) 手把手教你参加大模型安全撬壳计划
“大模型安全撬壳计划”由阿里巴巴集团安全部主办,旨在通过真实环境攻防实战,探索大模型安全边界,培养顶尖AI安全人才。大赛提供场景、技术、数据与奖金支持,赛程包括报名(7月9日-8月14日)、初赛与复赛。参赛者可通过大赛官网报名并提交攻击方法代码,挑战模型安全极限。更多信息请访问大赛网址。
228 0
|
2月前
|
缓存 NoSQL API
Django缓存机制详解:从配置到实战应用
本文介绍了 Django 缓存机制的基础知识与实战应用,涵盖缓存概念、Redis 安装配置、缓存策略及 API 使用,并通过 RBAC 权限系统演示缓存的读写与删除操作,助力提升 Web 应用性能。
71 0
|
2月前
|
存储 分布式计算 大数据
【赵渝强老师】阿里云大数据存储计算服务:MaxCompute
阿里云MaxCompute是快速、全托管的TB/PB级数据仓库解决方案,提供海量数据存储与计算服务。支持多种计算模型,适用于大规模离线数据分析,具备高安全性、低成本、易用性强等特点,助力企业高效处理大数据。
|
2月前
|
算法 物联网 定位技术
蓝牙室内定位技术解决方案:核心技术架构与优化实践
本文探讨了蓝牙iBeacon与Lora结合的室内定位技术,分析其在复杂室内环境中的优势与挑战。通过三层架构实现高精度定位,并提出硬件、算法与部署优化方向,助力智慧仓储、医疗等场景智能化升级。
126 0
蓝牙室内定位技术解决方案:核心技术架构与优化实践
|
2月前
|
消息中间件 人工智能 资源调度
云上AI推理平台全掌握 (5):大模型异步推理服务
针对大模型推理服务中“高计算量、长时延”场景下同步推理的弊端,阿里云人工智能平台 PAI 推出了一套基于独立的队列服务异步推理框架,解决了异步推理的负载均衡、实例异常时任务重分配等问题,确保请求不丢失、实例不过载。
|
2月前
|
人工智能 容灾 专有云
阿里云亮相2025可信云大会,获中国信通院多项权威认证
2025年7月22-23日,由中国信息通信研究院、中国通信标准化协会联合主办的“2025可信云大会”在北京举行。本届大会以“云智融合,可信未来”为主题,汇聚业内专家、头部企业、行业代表等超300人参会,共同探讨人工智能与云计算融合发展的新趋势。 作为国内云计算领域的技术引领者,阿里云在本届大会获得多项权威认证及行业认可,并全面分享在智算服务、一云多芯、可运营云等领域的创新实践,为政企客户打造AI时代的智能化新引擎。
191 0
|
2月前
|
机器学习/深度学习 人工智能 测试技术
【ICML2025】大模型后训练性能4倍提升!阿里云PAI团队研究成果ChunkFlow中选
近日,阿里云 PAI 团队、通义实验室与中国科学院大学前沿交叉科学学院合作在机器学习顶级会议 ICML 2025 上发表论文 Efficient Long Context Fine-tuning with Chunk Flow。ChunkFlow 作为阿里云在变长和超长序列数据集上高效训练解决方案,针对处理变长和超长序列数据的性能问题,提出了以 Chunk 为中心的训练机制,支撑 Qwen 全系列模型的长序列续训练和微调任务,在阿里云内部的大量的业务上带来2倍以上的端到端性能收益,大大降低了训练消耗的 GPU 卡时。
|
2月前
|
机器学习/深度学习 人工智能 算法
深度强化学习在异构环境中AI Agent行为泛化能力研究
随着人工智能技术的迅猛发展,AI Agent 在游戏、智能制造、自动驾驶等场景中已逐步展现出强大的自适应能力。特别是深度强化学习(Deep Reinforcement Learning, DRL)的引入,使得智能体能够通过与环境的交互,自动学习最优的行为策略。本文将系统性地探讨基于深度强化学习的AI Agent行为决策机制,并结合代码实战加以说明。
深度强化学习在异构环境中AI Agent行为泛化能力研究