
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命令才会生效。
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命令才会生效。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询