- ISP: In System Programing 在系统编程
- IAP: In applicating Programing 在应用编程
- ICP: In Circuit Programing 在电路编程
所有表述以STM32F103芯片为例
ISP: In System Programing 在系统编程
使用芯片内置的bootloader进行程序更新的方式,在芯片内部一块单独的Flash区域存在一个bootloader程序,这个程序通过USB/USART接口等和上位机通信,将需要更新的程序烧录到芯片Flash中,这个bootloader程序通常由芯片厂商提供,用户无法修改。
- 参考下图
- 将Boot0接VCC, Boot1接GND, 芯片上电后进入bootloader模式,激活ISP接口
IAP: In applicating Programing 在应用编程
将芯片Flash区域分割成多个部分,Flash首地址处存储一个bootloader程序,上电之后首先运行这个bootloader程序,在bootloader可以通过USB/USART接口等和上位机通信,将需要更新的程序烧录到芯片Flash中,然后跳转运行,这个bootloader程序可以由用户自己编写。
- 将Boot0接GND,芯片上电之后从主Flash启动,运行bootloader程序
ICP: In Circuit Programing 在电路编程
使用SWD/JTAG接口烧录程序-