您的位置 首页 动态

ISP和IAP两种编程方法有何差异?

细说ISP和IAP的区别但两者的操作方式,结果和应用场合有什么区别什么是ISP:用写入器将code烧入,不过,芯片可以在目标板上,不用取出来,在设计…

细说ISPIAP的差异

但两者的操作办法,成果和运用场合有什么差异

什么是ISP:
用写入器将code烧入,不过,芯片能够在方针板上,不必取出来,在规划方针板的时分就将接口规划在上面,所以叫”在体系编程”,即不必脱离体系;
什么是IAP:
在运用编程,有芯片自身(或经过外围的芯片)能够经过一系列操作将code写入,比方一款支撑Iap的单片机,内分3个程序区,1作引导程序区,2作运转程序区,3作下载区,芯片经过串口接纳到下载指令,进入引导区运转引导程序,在引导程序下将new code内容下载到下载区,下载结束并校验经往后再将下载区内容复制到2区,运转复位程序,则Iap完结;

运用场合:
1,ISP 程序晋级需求到现场处理,不过好一点的是不必拆机器了;
2,IAP 如果有网管体系的话,用网管下载全部搞定,人不必跑来跑去,
这可能是他们的长处或运用吧

在线编程现在有两种完结办法:在体系编程(ISP)和在运用编程(IAP)。ISP一般是经过单片机专用的串行编程接口对单片机内部的Flash存储器进行编程,而IAP技能是从结构大将Flash存储器映射为两个存储体,当运转一个存储体上的用户程序时,可对另一个存储体重新编程,之后将操控从一个存储体转向另一个。ISP的完结一般需求很少的外部电路辅佐完结,而IAP的完结愈加灵敏,一般可利用单片机的串行口接到计算机的RS232口,经过专门规划的固件程序来编程内部存储器。ISP和IAP很类似,都是不需求把芯片从板子上拔出来,就到达了用PC-MCU的编程接口(JTAG、串口、双绞线、SPI等)搞定新版本的晋级的意图。MCU内部都是首要履行一段独立的Boot代码(这段Boot代码一般是出厂预置,或运用编程器烧录的,一般只要1k或4k,SST一般是占用一块独立的Block,Philips一般是让BootROM地址与其他Flash堆叠,以到达躲藏的作用),Boot担任操控擦除程序存储器及给程序存储器编程的代码(或是处理器外部供给的履行代码),然后经过某种与PC计算机的通讯办法(如,ether网口),将用户指定的某个在PC上编译完结的MCU可运转的二进制代码文件编程入MCU内的程序存储器。

ISP和IAP最大的不同是:由谁来触发。

ISP有4种触发办法:
1.由外部硬件电路:如VDD坚持高电平,给RST接连3个脉冲;
2.检测状况位:如ISPEN,为0时PC指针从0000H开端履行;为1时,经过“引导向量”计算出“ISP代码”的方位。每次复位后都会检测该状况位;
3.间断操控符信号触发芯片复位:间断操控符信号便是指在异步串行口的接纳脚上呈现长 达一帧长度的低电平,这儿一帧的长度与异步串行口的作业形式有关。
4.直接调用ISP:用户程序也能够调用,可是很风险。

4种办法的意图是相同的——进入ISP子程序,比方Philips出厂的ISP子程序在1E00H-1FFFH,只要能引导PC指针指向1E00H就能够了。

而进入ISP代码的意图是:进入BootROM。

IAP的触发比较简单一些,没有外部触发。经过一些指示位(SST为SC0/SC1、SFCF[1,0];Philips为一段IAP子程序,保存在FF00H~FFFFH地址空间中),到达引导到BootROM的意图。

异曲同工,ISP、IAP所进入的BootROM里边驻留的Boot代码,才是最终方针。

最终一种:并行编程形式。不需求BootROM,直接设置芯片的多个引脚来让芯片辨认指令(如:擦除、写入、验证等),从P口传地址、数据,就能够写入Flash

用LPC2000的IAP,你自己分配好FLASH空间,指定一个BLOCK用来寄存你的数据,然后经过IAP进行写操作。每次开机后,从这个BLOCK读你的数据

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/news/dongtai/276886.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部