打印
[开发工具]

MCU三种烧录方式ICP、IAP、ISP

[复制链接]
4011|30
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 muyichuan2012 于 2022-7-2 10:27 编辑

MCU三种烧录方式ICP、IAP、ISP

[color=rgba(0, 0, 0, 0.3)]来源:网络 [url=]IC测试座测试治具ICsocket发表于广东



单片机烧录方式主要分为三种:ICP、IAP、ISP。
  • ICP (In Circuit Programing) - 在线电路编程
  • ISP (In System Programing) - 在线系统编程
  • IAP (In applicating Programing) - 在线应用编程


常用的下载方式有
  • JTAG编程:通过JTAG协议进行编程
  • SWD编程:通过SWD协议进行编程
  • UART编程:通过UART进行编程


1. ICP


ICP是指“在电路编程”。一般需要 xx-Link 烧录工具,连接PC和MCU。常用的烧录工具为J-Link、AT-Link、ST-Link。与之配套的烧录软件为J-Flash、st-link utility、Artery_ICP_Programming_Tool。通过SWD接口进行烧录.比如AT32 MCU,PC上运行的软件“Artery ICP编程工具”透过SWD的端口更新MCU内部FLASH、SPIM FlASH、用户字节区(开启访问保护等)。

2. ISP

ISP是指“在系统上编程”。一般通过PC串口就可以下载程序(通常需要串口转换模块,比如PL2303、RS-485等)。比如AT32 MCU,目标芯片使用USB/UART/SPI/I²C/RS-485/CAN周边接口的LDROM引导代码去更新内部FLASH、SPIM FlASH、用户字节区(开启访问保护等)。


3. IAP
IAP是指“在应用上程序设计”,通过软件实现在线电擦除和编程的方法。IAP技术是从结构上将Flash存储器映射为两个存储体,当运行一个存储体上的用户程序时,可对另一个存储体重新编程,之后将程序从一个存储体转向另一个。详情可查阅雅特力官网提供的AN0001 以及AP Tool.
总结:
  • ICP:使用SWD接口进行烧录,如J-Link烧录器和J-Flash软件配合使用。
  • ISP:使用引导程序(Bootload)加上外围UART/USB等接口进行烧录。
  • IAP:软件自身实现在线电擦除和编程的方法,不使用任何工具。程序通常分成两块,分别为引导程序和应用程序。







使用特权

评论回复
沙发
5574293| | 2024-8-14 10:41 | 只看该作者
ISP和IAP选哪一种怎么去判断呢?

使用特权

评论回复
板凳
micoccd| | 2024-8-14 14:21 | 只看该作者
ISP需要单片机做什么处理吗

使用特权

评论回复
地板
bestwell| | 2024-9-3 15:52 | 只看该作者
ICP,即在线编程,是一种通过专用的编程器直接连接到MCU的特定引脚来进行编程的方法。

使用特权

评论回复
5
loutin| | 2024-9-3 17:40 | 只看该作者
在嵌入式系统开发中,当需要对新设计的电路板进行程序调试时,可以使用 ICP 方式将开发好的程序烧录到 MCU 中,然后通过调试工具对程序进行单步调试、断点调试等操作,以查找和解决程序中的问题。

使用特权

评论回复
6
robincotton| | 2024-9-3 18:58 | 只看该作者
实现较为复杂,需要在固件中集成Bootloader,可能存在安全风险。

使用特权

评论回复
7
everyrobin| | 2024-9-3 21:27 | 只看该作者
ICP适合初始编程和小批量生产,ISP适合生产线上的直接编程和现场维护,而IAP适合远程升级和维护。

使用特权

评论回复
8
loutin| | 2024-9-4 10:04 | 只看该作者
与 ICP 方式相比,ISP 编程的速度通常较慢,特别是在使用低速通信接口时,编程时间可能会较长。

使用特权

评论回复
9
lzbf| | 2024-9-4 13:04 | 只看该作者
使用IAP技术,开发者可以实现设备的OTA(Over-The-Air)功能,即通过无线网络远程升级固件。这对于用户分散的设备特别有用,比如智能家居中的WiFi摄像头或者远程监控设备。

使用特权

评论回复
10
jimmhu| | 2024-9-4 16:08 | 只看该作者
ISP 是通过 MCU 芯片的特定通信接口(如 UART、SPI、I2C 等),使用外部编程设备对芯片内部的闪存进行编程。在编程过程中,外部编程设备将程序代码通过通信接口发送到 MCU,MCU 内部的引导程序(Bootloader)会接收并将程序代码写入到闪存中。

使用特权

评论回复
11
louliana| | 2024-9-5 10:13 | 只看该作者
IAP是通过软件实现在线电擦除和编程的方法。IAP技术是从结构上将Flash存储器映射为两个存储体,当运行一个存储体上的用户程序时,可对另一个存储体重新编程,之后将程序从一个存储体转向另一个

使用特权

评论回复
12
pentruman| | 2024-9-5 11:46 | 只看该作者
IAP是一种在MCU运行用户程序的同时,通过软件实现在线电擦除和编程的方法。这种方法允许用户在不中断系统正常运行的情况下,对MCU中的部分Flash区域进行更新。

使用特权

评论回复
13
pl202| | 2024-9-5 13:28 | 只看该作者
ICP是在电路编程的简称,指的是通过专用的编程器直接对MCU进行编程。

使用特权

评论回复
14
youtome| | 2024-9-5 15:05 | 只看该作者
IAP是在应用编程的简称,指的是通过软件程序来更新MCU的固件。

使用特权

评论回复
15
mollylawrence| | 2024-9-5 16:58 | 只看该作者
ISP是在系统编程的简称,指的是通过系统中的某个接口(如串口、JTAG等)对MCU进行编程。

使用特权

评论回复
16
uiint| | 2024-9-6 15:32 | 只看该作者
使用AT-Link、Artery ISP Programmer等工具,通过串口进行hex文件烧录下载。

使用特权

评论回复
17
uptown| | 2024-9-6 17:07 | 只看该作者
对于单片机开发者来说,ICP提供了强大的调试功能,包括实时查看变量值、单步执行等,有助于快速定位和修复问题。

使用特权

评论回复
18
sheflynn| | 2024-9-6 18:46 | 只看该作者
ICP是一种通过特定的接口(如JTAG或SWD)将程序烧录到MCU中的方法。这种方法需要在MCU处于电路中的状态下进行编程,通常用于生产过程中的调试和程序烧录。

使用特权

评论回复
19
mikewalpole| | 2024-9-6 20:27 | 只看该作者
ISP介于ICP和IAP之间,它允许在MCU已经安装在电路板上的情况下对其进行编程,而无需从电路板上拆卸下来。

使用特权

评论回复
20
youtome| | 2024-9-6 22:09 | 只看该作者
ICP适合小批量生产和调试,需要专用编程器和断电操作。
IAP适合现场升级和维护,通过软件程序进行更新。
ISP适合大批量生产和现场升级,可以在不断电的情况下进行编程。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

198

主题

1900

帖子

28

粉丝