STC单片机中的IAP功能是什么?ISP/IAP 触发寄存器是什么?

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/02 16:35:23
STC单片机中的IAP功能是什么?ISP/IAP 触发寄存器是什么?

STC单片机中的IAP功能是什么?ISP/IAP 触发寄存器是什么?
STC单片机中的IAP功能是什么?ISP/IAP 触发寄存器是什么?

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命令才会生效.