[技术问答] ISP, ICP及IAP是什麼功能?

[复制链接]
2297|11
 楼主| uptown 发表于 2024-5-13 12:00 | 显示全部楼层 |阅读模式
ISP是指“在系统上编程”,目标芯片使用USB/UART/SPI/I²C/RS-485/CAN周边接口的LDROM引导代码去更新晶片内部APROM、数据闪存(DataFlash)和用户配置字(Config)。
ICP是指“在电路编程”,PC上运行的软件“NuMicro ICP编程工具”透过SWD的端口更新晶片内部APROM、LDROM、数据闪存(DataFlash)和目标用户配置字(Config)芯片。
IAP是指「在应用上程序设计」,是一个提供使用者切换在APROM或LDROM执行程序代码而不需重置的功能,用户可以设置IAP功能藉由重启芯片,并设置于CBS (CONFIG0[7:6])芯片启动选择位为2或0。当芯片启动带有IAP功能时,任何其他可执行区域页的代码可于任意时刻被映射至第一页(0x0000_0000~0x0000_01FF),用户可藉由ISPADR寄存器填入目标芯片重新映像地址来更改第一个可执行区域页地址,再执行向量页重新映像(Vector Page Re-map)指令。变更重新映像地址后,用户可藉由读取VECMAP(ISPSTA[20:9])来检查是否变更成功。
(下图为M05xDN/DE series 设置IAP后程序代码可执行区域的范例)

Annie556 发表于 2024-6-18 12:22 | 显示全部楼层
在电子设备和嵌入式系统领域中,ISP、ICP和IAP通常指以下功能
Charlotte夏 发表于 2024-6-18 14:35 | 显示全部楼层
其实ISP的话可以使得设备在实际应用中可以通过软件或者专门的编程设备进行固件更新或配置更改,而无需将芯片拆下来
Allison8859 发表于 2024-6-18 15:47 | 显示全部楼层
ICP的话即在线路编程。ICP与ISP类似,但更侧重于在整个电路板上的芯片(通常是单个IC或集成电路)进行编程或更新
Carina卡 发表于 2024-6-18 17:02 | 显示全部楼层
ICP通常涉及到在电路板上的特定位置连接编程接口,并通过专用的编程设备或者软件进行操作
Betty1299 发表于 2024-6-18 18:13 | 显示全部楼层
一般来说IAP即应用内编程。IAP是指在运行时通过设备本身的应用程序或固件,通过特定的协议或接口进行程序或数据的编程和更新
Emily999 发表于 2024-6-18 19:16 | 显示全部楼层
IAP的这种方式通常允许设备在运行时动态地更新其固件或配置,而无需停机或进入特殊的编程模式
yangxiaor520 发表于 2024-6-18 19:29 来自手机 | 显示全部楼层
ISP是芯片内部固化的Bootloader,而IAP是需要用户自己设计Bootloader。
Estelle1999 发表于 2024-6-19 08:22 | 显示全部楼层
其实ISP,IAP和ICP这些功能对于现代电子设备非常重要,因为它们允许制造商或者最终用户在设备部署后仍能够灵活地进行固件更新、修复和配置更改,从而延长设备的寿命和功能扩展能力
alxd 发表于 2024-6-19 10:00 | 显示全部楼层
一般用IAP和ISP就可以了,这俩比较常用
Carmen7 发表于 2024-6-19 11:05 | 显示全部楼层
ICP的话,好像真的很少吧,一般都是IAP用的多
您需要登录后才可以回帖 登录 | 注册

本版积分规则

58

主题

3830

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部