STC单片机中的IAP功能是什么?ISP/IAP 触发寄存器是什么?
IAP,In Application Programming ,它的意思是“在应用编程”,即在程序运行时程序存储器可由程序自身进行擦写。
通俗点讲,也就是说程序自己可以往程序存储器里写数据或修改程序。
这种方式的典型应用就是用一小段代码来实现程序的下载,实际上单片机的ISP功能就是通过IAP技术来实现的,即片子在出厂前就已经有一段小的boot程序在里面,片子上电后,开始运行这段程序,当检测到上位机有下载要求时,便和上位机通信,然后下载数据到存储区。
大家要注意千万不要尝试去擦除这段ISP引导程序,否则恐怕以后再也下载不了程序了。
正是是因为有了IAP,从而可以使单片机可以将数据写入到程序存储器中,使得数据如同烧入的程序一样,掉电不丢失。
当然写入数据的区域与程序存储区要分开来,以使程序不会遭到破坏。
要使用IAP 功能,与以下几个特殊功能寄存器相关:ISP_DATA: ISP/IAP 操作时的数据寄存器。
ISP/IAP: 从Flash 读出的数据放在此处,向Flash 写的数据也需放在此处ISP_ADDRH:ISP/IAP 操作时的地址寄存器高八位。
ISP_ADDRL:ISP/IAP 操作时的地址寄存器低八位。
ISP_CMD:ISP/IAP 操作时的命令模式寄存器,须命令触发寄存器触发方可生效。
ISP_TRIG:ISP/IAP 操作时的命令触发寄存器。
当ISPEN(ISP_CONTR.7)=1 时,对ISP_TRIG 先写入0x46,再写入0xb9,ISP/IAP命令才会生效。
...
iapcrazy插件用哪个app
1、安装方法:进入cydia 点击软件源——点击左上角的编辑——点击右上角添加(点编辑后刷新会变成添加)——在对话框中填入apt.youyuanapp.com——点击添加源如下图所示:2、添加完成后点击右上角完成,然后在源列表中会出现IAPcrazy 的源,如下图所示。
3、点击iapcrazy源进入,安装其中的iapcrazy安装包,如果您的机器是刚越狱的请安装其中的全部插件,其中Appsync unified 和 Apple file conduit"2" 是越狱后必须的插件,官方发布版,请安心安装。
而xcon用于屏蔽部分游戏或者应用的越狱检测,但是在部分应用上会造成中文显示不全,闪退等问题,请根据具体情况安装或者卸载。
4、点击IAPCrazy安装包,进入安装页,点击右上角安装然后等待安装完成即可。
单片机的IAP是什么意思?
AP是In Application Programming的首字母缩写,IAP是用户自己的程序在运行过程中对User Flash的部分区域进行烧写,目的是为了在产品发布后可以方便地通过预留的通信口对产品中的固件程序进行更新升级。
通常在用户需要实现IAP功能时,即用户程序运行中作自身的更新操作,需要在设计固件程序时编写两个项目代码,第一个项目程序不执行正常的功能操作,而只是通过某种通信管道(如USB、USART)接收程序或数据,执行对第二部分代码的更新;第二个项目代码才是真正的功能代码。
这两部分项目代码都同时烧录在User Flash中,当芯片上电后,首先是第一个项目代码开始运行,它作如下操作: 1)检查是否需要对第二部分代码进行更新 2)如果不需要更新则转到4) 3)执行更新操作 4)跳转到第二部分代码执行 第一部分代码必须通过其它手段,如JTAG或ISP烧入;第二部分代码可以使用第一部分代码IAP功能烧入,也可以和第一部分代码一道烧入,以后需要程序更新是再通过第一部分IAP代码更新。
对于STM32来说,因为它的中断向量表位于程序存储器的最低地址区,为了使第一部分代码能够正确地响应中断,通常会安排第一部分代码处于Flash的开始区域,而第二部分代码紧随其后。
在第二部分代码开始执行时,首先需要把CPU的中断向量表映像到自己的向量表,然后再执行其他的操作。
如果IAP程序被破坏,产品必须返厂才能重新烧写程序,这是很麻烦并且非常耗费时间和金钱的。
针对这样的需求,STM32在对Flash区域实行读保护的同时,自动地对用户Flash区的开始4页设置为写保护,这样可以有效地保证IAP程序(第一部分代码)区域不会被意外地破坏。
IAP与ISP的区别 在线编程目前有两种实现方法:在系统编程(ISP)和在应用编程(IAP)。
ISP一般是通过单片机专用的串行编程接口对单片机内部的Flash存储器进行编程,而IAP技术是从结构上将Flash存储器映射为两个存储体,当运行一个存储体上的用户程序时,可对另一个存储体重新编程,之后将控制从一个存储体转向另一个。
ISP的实现一般需要很少的外部电路辅助实现,而IAP的实现更加灵活,通常可利用单片机的串行口接到计算机的RS232口,通过专门设计的固件程序来编程内部存储器。
展开
单片机ISP,IAP什么意思
ISP是在系统编程,即可以在应用板或目标板上编程或更新,而过去的编程器编程,需先将单片机写好程序,再焊在电路板上,想修改程序,还要拿下来IAP是应用过程中编程,更进了一步,可以在程序运行中更新程序并运行,能够实现远程更新,就好象我们的台式电脑,操作系统运行起来后,再安装应用程序并运行...
关于51单片机IAP内存问题
IAP,是在程序运行期间,向程序存储器,写入程序。
STC 的单片机支持这样做。
注意,正在运行的程序,它所在的程序存储器,和即将写入的程序存储器,是两个可以互相转换的部分。
它们的起始地址都是0000H。
STC 的单片机上电时,它先从一个0000H开始执行它们公司预先存好的程序。
此后,我们才能利用 PC 上的下载软件,向单片机写入我们自己编写的程序。
存放到另一个0000H开始的程序存储器。
上电下载程序,这也就是一个 IAP 过程。
下载后,它自动转向我们程序所在的0000H地址,开始执行刚刚下载的程序。
楼主想要在你的程序运行期间,再改写程序存储器,就只能擦除掉 STC 公司预先存好的那部分程序。
那么,这块芯片,就再也不能进行《上电后下载程序》的工作了。
通常,没有足够的把握,是不会做这样的操作的。
安卓上有没有类似iapcrack、iapfree的软件呢?
【IAP】IAP,IAP )分为两个层次,上层是网络接口的提供商:底层是物理网络的提供商internet接入服务商(Internet Access Provider:In Application Programming 是指在应用编程,即在程序运行中编程,就是片子提供一系列的机制(硬件/软件上的)当片子在运行程序的时候可以提供一种改变flash数据的方法
单片机如何实现IAP升级啊?升级程序应该在制定的位置吧,要不它也...
我用C8051F020上实现的一个IAP来举例吧。
升级程序的确放在指定位置,因为C8051F020有64K的ROM,所以升级程序就占用ROM最后的4K的空间,前面64K就用来存放用户程序。
在每次单片机启动时,放在0000H位置的LJMP指令不是跳转到用户程序,而是直接跳转到了升级程序(60K开始的位置),这里升级程序初始化串口,等待串口发来的数据流,如果数据流的不正确或者没有收到数据流,就跳转回用户程序的入口执行用户上次下载进去的程序。
所以在这里用户的程序不能超过60K,当然升级程序也不会“自宫”,就没什么影响了。
IAP的与ISP区别
在线编程目前有两种实现方法:在系统编程(ISP)和在应用编程(IAP)。
ISP一般是通过单片机专用的串行编程接口对单片机内部的Flash存储器进行编程,而IAP技术是从结构上将Flash存储器映射为两个存储体,当运行一个存储体上的用户程序时,可对另一个存储体重新编程,之后将控制从一个存储体转向另一个。
ISP的实现一般需要很少的外部电路辅助实现,而IAP的实现更加灵活,通常可利用单片机的串行口接到计算机的RS232口,通过专门设计的固件程序来编程内部存储器。
iap cracker怎么用
iap cracker的使用方法这里以无尽之剑为例:进入游戏商店后,找到购买金币的位置,直接点击购买即可完成购买。
iap cracker功能强大,类似iapfree。
是一款可以免费内购的破解插件,软件安装后无图标、无设置,安装即可用。
夢与空岛47457630