ICP、ISP、IAP、JTAG、SWD下载方式

2023-05-16

目录

ICP、ISP、IAP、JTAG、SWD下载方式

概述

JTAG

SWD

ICP

ISP

IAP

ISP与ICP的差别

ISP和IAP的差别


ICP、ISP、IAP、JTAG、SWD下载方式

概述

JTAG和SWD是一种标准协议,包含硬件标准和软件标准。ICP、ISP和IAP属于实际烧录程序的方式。

JTAG

优点:

  1. 不限于ARM内核单片机,能支持更多的单片机调试和下载

  2. 因为1的原因,所以使用范围更广

缺点:

  1. 需要更多的脚位

SWD

优点:

  1. 引脚数少,有利于节约电路板尺寸

  2. SWD具有其特殊功能,比如能通过I/O打印调试信息

  3. 在高速大数据情况下,SWD整体性能比JTAG更好

缺点:

  1. SWD是ARM设计的协议,主要针对他们的内核的芯片进行程序调试和下载

ICP

ICP:In Circuit Programing 在电路编程

主要烧录方式:可通过CPU的Debug Access Port 烧录代码,比如ARM Cortex的Debug Interface主要是SWD或JTAG

ISP

IAP:In applicating Programing 在应用编程

主要烧录方式:在系统编程,可借助MCU厂商预置的Bootloader 实现通过板载UARTUSB接口烧录代码,比如STM32存储映射Code分区中的System memory可以预置厂商的Bootloader,让MCU支持通过UART下载(不限于UART,具体由厂商预置Bootloader实现而定)

用烧写器将code写入Flash,芯片在目标开发板,不脱离系统,即称在系统编程。

例如:STM32 在出厂时由ST 在这个存储区间内部预置了一段BootLoader(也即ISP 程序),这段程序出厂后无法修改。厂家提供的BootLoader 一般支持UART 协议,可以让我们直接通过串口将程序代码烧录到Main Flash memory 中。

IAP

IAP:In applicating Programing 在应用编程

主要烧录方式:由开发者实现Bootloader功能,比如STM32存储映射Code分区中的Flash本是存储用户应用程序的区间(上电从此处执行用户代码),开发者可以将自己实现的Bootloader存放到Flash区间,MCU上电启动先执行用户的Bootloader代码,该代码可为用户应用程序的下载、校验、增量/补丁更新、升级、恢复等提供支持,如果用户代码提供了网络访问功能,IAP 还能通过无线网络下载更新代码,实现OTA空中升级功能。

ISP与ICP的差别

For ISP

  1. MCU必须处于可执行程序的状态 (除了上电, 还要接XTAL), 且必须预烧ISP-code在LDROM里面

  2. 烧录范围只限于APROM, DataFlash或CONFIG (但对使用者来说, 应经够了)

  3. chip在LOCK的状态下, 仍然可以只更新某一区块 (APROM, DataFlash或CONFIG)

  4. 因为烧录的动作取决于ISP-code的写法, 所以给系统设计者的弹性较大

For ICP

  1. MCU只要处于上电状态即可, 不必预烧任何code在MCU里面

  2. 烧录范围涵盖整颗MCU, 包括 APROM, DataFlash, CONFIG, LDROM 和 ROMMAP

  3. chip在LOCK的状态下, 无法只更新某一区块, 只能在erase-ALL之后, 更新某一区块, 再逐一烧回其它区块(因为ICP的本质就是走串行接口的Writer Mode, chip被LOCK之后, 除了erase-ALL, 所有烧录动作皆会被禁止)

  4. 因为烧录纯粹是ICP硬件的行为, MCU无法自己更新自己, 所以给系统设计者的弹性较小(例如: 无法藉由ICP去实现IAP的功能)

ISP和IAP的差别

For ISP

  1. ISP 程序升级需要到现场解决,不过好一点的是不必拆机器了

  2. ISP一般是厂家已经写好的程序,不允许修改

For IAP

  1. 更新升级不需要到现场,例如:可通过无线网络下载更新代码,实现OTA空中升级功能

  2. IAP可由开发者自己实现Bootloader功能,更加灵活

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ICP、ISP、IAP、JTAG、SWD下载方式 的相关文章

  • CKS32F103C8T6最小系统板调试记录——SWD下载

    cks32f103是国产芯片 xff0c 由中科芯研发 xff0c 比起ST公司F103多了一个刹车功能 它有keil的器件安装包 xff0c 支持keil的开发 器件安装包链接 xff1a 链接 百度网盘链接 提取码 xff1a 0xyu
  • Ubuntu20.04+eclipse+jlink(openocd+SWD)+arm-none-eabi-gcc+STM32开发

    Ubuntu20 04 43 eclipse 43 jlink openocd 43 SWD 43 arm none eabi gcc 43 STM32开发环境搭建 1 文件准备 安装Eclipse IDE for C C 43 43 De
  • 海思ISP曝光调整策略

    AE曝光调整 Exposure Attr 影响参数 xff1a ExpTimeRange Min Max 曝光时间Gain 各种增益控制Speed 曝光速度 xff08 影响到曝光收敛 xff0c AE闪烁 xff09 Compensati
  • JTAG、JLINK、ULINK、ST-LINK

    一 JTAG JTAG用的计算机的并口 xff0c JTAG也是一种国际标准测试协议 xff08 IEEE 1149 1兼容 xff09 xff0c 主要用于芯片内部测试 现在多数的高级器件都支持JTAG协议 如DSP FPGA器件等 标准
  • STM32调试方式JTAG&SWD的区别

    在学习STM32时 xff0c 我们经常会遇到JTAG和SWD的调试方法 xff0c 还涉及到Jlink Ulink Stlink等 xff0c JTAG和SWD是ARM板一种调试模式 后面三种都是实现这种模式的一种工具 xff0c 他们之
  • MCU踩坑记录:SWD复用为GPIO使用,Jflash连不上的问题

    用了某款MCU 由于项目需要用的gpio比较多 只能将SWD烧写口SWD CLK和SWD DIO复用为gpio使用 但是程序一旦跑起来 再用jflash就连不上了 如下图所示 如果MCU有BOOT引脚 可以将BOOT引脚配置为其他启动模式不
  • 【ISP】低亮度图片增强方法(1)

    本文介绍改进INDANE算法的低照度图像增强改进算法 AINDANE算法 Adaptive and integrated neighborhood dependent approach for nonlinear enhancement o
  • ISP之DPC(坏点校正)模块

    DPC Defective Photosites Correction即坏点校正 一 DPC的意义 图像传感器上由于自身工艺技术造成的瑕疵 如光线采集的点存在缺陷 导致在光电转换过程中某些像素值不准确 我们称之为坏点 Defect Pixe
  • ISP之LSC(Lens Shading Correction)

    LSC Lens Shading Correction即镜头暗影校正 一 LSC的意义 众所周知Lens Shading分为Luma Shading和Color Shading 一般来说 物体到Lens中心的距离越远 图像越暗 呈圆形中性对
  • STM32一键下载电路程序下载后不运行问题分析

    使用STM32常用的下载方法主要有以下几种 1 ISP程序下载 使用STM32的串口1进行程序下载 使用该方式下载需要使用USB转串口芯片 常用的芯片如CH340G 该方式的程序下载需要使用上位机FlyMcu 上位机的设置出错很容易导致程序
  • STM32F103C8T6单片机IAP升级

    关于IAP升级的方法和原理 网上已经有很多资料了 这块就不再说了 现在就将bootloader和app配置方法整理如下 APP程序就是一个简单的LED闪烁 APP设置为从FLASH中启动 STM32F103C8T6单片机flash有64K
  • IAP与APP(一):两个固件使用Keil5默认设置编译后,利用J-Flash偏移APP的地址然后合并IAP烧写,运行时出现在跳转APP时无限重启的现象

    最近做了个在线升级 并没有使用系统 芯片 STM32F103C8T6 环境 Keil 5 STM32CubeMX 5 2 1 跳转和写FLASH在网上一搜其实不少 主要注意要重定向中断向量表和跳转前要关闭所有中断 在写好IAP和APP两个固
  • windows11,OpenOCD 调试FPGA用作jtag

    使用ft2232H作为jtag通过openocd调试fpga xcvu9P virtex II fpga型号 openocd是什么 自行百度 FT2232H官网文档 自行百度 5 示例 Loading a Xilinx Spartan 6
  • Camera ISP

    1 ISP工作原理 ISP Image Signal Processor 即图像信号处理 主要作用是对前端图像传感器输出的信号做后期处理 依赖于 ISP 才能在不同的光学条件下都能较好的还原现场细节 景物通过 Lens 生成的光学图像投射到
  • STM32速成笔记—串口IAP

    本文涉及到串口通信和Flash知识 对于这部分知识不熟悉的小伙伴可以到博主STM32速成笔记专栏查看 文章目录 一 串口IAP简介 1 1 什么是IAP 1 2 STM32下载程序 二 串口IAP有什么作用 三 启动流程 3 1 正常启动流
  • ​LeetCode刷题实战267:回文排列II

    算法的重要性 我就不多说了吧 想去大厂 就必须要经过基础知识和业务逻辑面试 算法面试 所以 为了提高大家的算法能力 这个公众号后续每天带大家做一道算法题 题目就从LeetCode上面选 今天和大家聊的问题叫做 回文排列II 我们先来看题面
  • ISP_matlab

    确定输入是否为结构体数组字段 MATLAB isfield MathWorks 中国 对话框打开文件 获取路径和文件名 file path uigetfile raw RAW fid fopen fullfile path file htt
  • 图像紫边消除(depurple)

    图像紫边广泛存在于目前的手机摄像头 数码相机 监控摄像头等数字成像系统所得图像中 当我们使用这些设备在逆光 大光圈等条件下拍摄时 所得图像的局部区域 特别是高反差区域 亮暗对比反差很大的图像区域 比如天空 灯管与物体相接的边缘 会比较容易观
  • stm32之iap实现应用(基于串口,上位机,详细源码)

    开发环境 Window 7 开发工具 Keil uVision4 硬件 stm32f103c8t6 篇幅略长 前面文字很多 主要是希望能让小白们理解 后面就是实现步骤 包括实现的代码 在研发调试的时候我们一般用烧录器下载代码 对于stm32
  • 通过JTAG恢复STM32 MCU磨掉的标记

    我有一块可能带有 STM32 MCU 的板 我想为该板制作定制固件 因为库存板有很多问题 不幸的是 电路板制造商很友善地磨掉了所有标记 有没有办法通过 jtag 获取设备 系列 ID 并将其交叉引用到型号 我能找到的一切都是关于获取芯片的唯

随机推荐