news 2026/5/16 15:05:22

【单片机-烧录方式(ICP/ISP/IAP)】

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【单片机-烧录方式(ICP/ISP/IAP)】

单片机-烧录方式(ICP/ISP/IAP)

  • ■ ICP(In Circuit Programing)在电路编程
  • ■ ISP(In System Programing)在系统编程 (BOOT0和BOOT0选择烧录接口 在进入ISP,有协议要求)
  • ■ IAP(In applicating Programing)在应用编程 (用于远程推送升级)
  • ■ 案例一CW32L083RCS6
    • ■ 01. CW32L083RCS6描述
    • ■ 02. CW32L083RCS6-LQFP64 通过 CW-Writer工具烧录
  • ■ 案例二

■ ICP(In Circuit Programing)在电路编程

编号描述
1ICP(In-Circuit Programming,在电路编程)的升级原理,可以简单概括为“硬件直连,绕过CPU,直接操作Flash”。
1ICP 完全不依赖芯片内部的任何引导程序(Bootloader),而是通过专用的硬件调试接口,直接对单片机的存储单元进行读写。
1ICP 必须通过单片机预留的专用调试引脚与外部连接。最常见的接口标准是 JTAG 和 SWD(Serial Wire Debug,串行线调试)。
1使用对应厂家的软件以及仿真器都可以烧录程序,
2目前主流的有Jtag(Joint Test Action Group)以及SWD(Serial Wire Debug)接口
而ICP编程就是以SWD接口进行的。<\b>
SWDIO:串行数据线,负责双向传输程序数据。
SWCLK:串行时钟线,由调试器提供时钟信号,指挥数据传输的节奏。
GND:地线,确保调试器与单片机共地。
VCC:电源线,为目标板供电或检测目标板电压。
3ICP使用SWD接口进行烧录程序。常用的烧录工具为J-Link、ST-Link、Nu-Link。
与之配套的烧录软件为J-Flash、NuMicro_ICP_Programming_Tool、st-link utility。

■ ISP(In System Programing)在系统编程 (BOOT0和BOOT0选择烧录接口 在进入ISP,有协议要求)

编号描述
1出厂自带 引导程序Bootloader的
CW32L083 为例 将 BOOT0 引脚拉高来强制芯片进入 ISP 下载模式,芯片就会跳过用户程序,直接启动并运行这个系统自带的 Bootloader。
1ISP是指“在系统上编程”,目标芯片使用USB/UART/SPI/I²C/RS-485/CAN周边接口的LDROM引导代码去更新晶片内部APROM、数据闪存(DataFlash)和用户配置字(Config)。
2ISP是使用引导程序通过USB/UART等接口进行烧录的,首先就是需要有BoodLoad程序。
3行业通用的标准文件传输协议 典型代表:YMODEM 协议。

//## ■ 01.
//## ■ 02.

■ IAP(In applicating Programing)在应用编程 (用于远程推送升级)

编号描述
1自己写的 Bootloader 实现升级。Bootloader + App 组合 一般上电运行app 通过接收指令或者检测到升级标志后下载文件校验后再跳转到Bootloader 进行app文件替换升级。
1IAP就是通过软件实现在线电擦除和编程的方法。
2IAP技术是从结构上将Flash存储器映射为两个存储体,当运行一个存储体上的用户程序时,可对另一个存储体重新编程,之后将程序从一个存储体转向另一个。
3IAP就是通过软件实现在线电擦除和编程的方法,没有使用任何工具,仅仅是通过软件的方法来更新Flash中的数据。

■ 案例一CW32L083RCS6

■ 01. CW32L083RCS6描述


CW32L083 是出厂自带 Bootloader 的。
CW32L083 出厂时,厂家已经在芯片内部的“系统存储区(System Memory)”预置了 Bootloader 程序。这部分空间对用户来说是只读的,你无法擦除或修改它。
如何触发进入:通常需要通过硬件引脚来强制芯片进入 ISP 下载模式。以 CW32L083 为例,一般在芯片复位时,将 BOOT0 引脚拉高,芯片就会跳过用户程序,直接启动并运行这个系统自带的 Bootloader。

■ 02. CW32L083RCS6-LQFP64 通过 CW-Writer工具烧录

CW32L083 是出厂自带 Bootloader 的。


■ 案例二

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/16 15:04:26

让 SACF 自动捕获授权对象,把新授权检查安全带进生产系统

很多 ABAP 老系统里,最敏感的改造不是性能优化,也不是把一个古早 FORM 重构成类方法,而是在已经稳定运行多年的业务代码里补授权检查。原因很直接,少一次授权检查,审计和安全团队会觉得风险很大,多一次授权检查,生产用户可能第二天就打不开业务功能。SACF,也就是 Switc…

作者头像 李华
网站建设 2026/5/16 15:03:15

BepInEx插件框架架构深度优化:3个关键稳定性修复方案解析

BepInEx插件框架架构深度优化&#xff1a;3个关键稳定性修复方案解析 【免费下载链接】BepInEx Unity / XNA game patcher and plugin framework 项目地址: https://gitcode.com/GitHub_Trending/be/BepInEx BepInEx作为Unity游戏生态系统中领先的插件框架&#xff0c;在…

作者头像 李华
网站建设 2026/5/16 14:59:15

Dingo元编程揭秘:如何实现100%Go生态系统兼容性?

Dingo元编程揭秘&#xff1a;如何实现100%Go生态系统兼容性&#xff1f; 【免费下载链接】dingo A meta-language for Go that adds Result types, error propagation (?), and pattern matching while maintaining 100% Go ecosystem compatibility 项目地址: https://git…

作者头像 李华
网站建设 2026/5/16 14:59:08

Cangaroo:免费开源CAN总线分析软件的完整使用教程

Cangaroo&#xff1a;免费开源CAN总线分析软件的完整使用教程 【免费下载链接】cangaroo Open source can bus analyzer software - with support for CANable / CANable2, CANFD, and other new features 项目地址: https://gitcode.com/gh_mirrors/ca/cangaroo 在汽车…

作者头像 李华
网站建设 2026/5/16 14:59:06

Claude Code 用户如何利用 Taotoken 解决 token 不足与账号封禁风险

&#x1f680; 告别海外账号与网络限制&#xff01;稳定直连全球优质大模型&#xff0c;限时半价接入中。 &#x1f449; 点击领取海量免费额度 Claude Code 用户如何利用 Taotoken 解决 token 不足与账号封禁风险 对于频繁使用 Claude Code 进行编程辅助的开发者来说&#xf…

作者头像 李华