关于IAP的一点深入理解

举报
ReCclay 发表于 2022/02/22 02:01:24 2022/02/22
【摘要】 以前对IAP的理解也是建立在朋友灌输的 – 有IAP就是有仿真功能 –这层理解上,也没想太多。 其实仔细看看官方的手册对比网上的解答发现似乎不仅仅是这样。 ISP(In-system progra...

以前对IAP的理解也是建立在朋友灌输的 – 有IAP就是有仿真功能 –这层理解上,也没想太多。


其实仔细看看官方的手册对比网上的解答发现似乎不仅仅是这样。

ISP(In-system programmable)是 在系统可编程

指的是不需要把单片机从目标系统板上取下来就可以直接从PC往单片机里面烧录程序。
关于ISP应该讲很熟悉了,学过STC的51单片机,它的烧录软件上赫然有着STC-ISP的字。
这里写图片描述

IAP(In-Application programmable)是 在应用可编程

1、指的是可以通过单片机自身的程序修改单片机该程序区的内容;


仔细想想,它说的难道不是在线升级的含义嘛!,,,其实还是感觉不实在,难道这个用得少异或自己见得少?


2、更想说的是,STC这里的狭义IAP指-用户可以将用户程序区的程序Flash当EEPROM使用。


读这句确实挺绕口也挺不好理解的,举个例子吧,
比如使用IAP 61K的FLASH。 那么,如果你程序只用了1K 意味着至少你有60K的空间可以用于数据的存储。 数据的存储的地方不相当于EEPROM了吗?


结合上面和下面这段话一起理解下。
如果把程序区Flash分成两段,1和2,那么则有:
在程序区1中的程序可以修改程序区2中的内容;
程序区2中的内容不可以执行,只能当数据使用,功能相当于EEPROM;


3、就是经常说的在线仿真了。

EEPROM功能是:

EEPROM 就是一个存东西的地方

区别:

ISP:从PC机修改单片机程序区的内容(即烧录)
IAP:单片机自己修改自己程序区的内容
EEPROM:单片机程序区1中的程序可以修改程序区2中的内容

再对比下手册的这个图
这里写图片描述

EEPROM 一栏有IAP的表示可以把Flash剩余空间作为EEPROM
没有IAP的,STC打头的单片机,就要单独的内部EEPROM了。。。


文章来源: recclay.blog.csdn.net,作者:ReCclay,版权归原作者所有,如需转载,请联系作者。

原文链接:recclay.blog.csdn.net/article/details/79204422

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。