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命令才会生效。
相信喜欢单片机的朋友都如含用过STC的单片机,用过STC单片机的朋友都有这种感受:实惠、易用、功能强大!就是每次下载都要冷启动特别恶心,相信很多朋友的开发板上的电源键都按烂了。其实STC单片机可以不用免掉电下载,想要知道怎样才能免掉电下载,我们先要了解STC单片机是怎样实现串口下载的,其实STC单片机出厂时就预置了一段ISP监控程序,我们称作ISP引导码,这段ISP监控程序就好比电脑硬盘的系统引导区。我们对STC单片机上电启动时,单片机首先执行ISP引导码检测串口是否下载程序的命令,如果上位机在对单片机下载程序时,单片机检测到下载数据流就启动ISP下载功能对单片机进行程序下载,这就是我们平时旁燃实验时渣启笑点击下载后按开发板电源键的过程。
STC单片机在进行冷启动时会从ISP引导码开始执行程序,而进行热启动或按复位键软启动时是从用户程序段开始执行的。然而熟悉STC单片机的朋友知道STC单片机增加了ISP/IAP控制寄存器ISP_CONTR,用来管理ISP/IAP功能和是否软启动,其各位功能大家可参照STC公司相关资料。当我们将ISP_CONTR置为0x60时单片机自动复位从ISP引导码开始执行。由此我们在需要下载程序时将ISP_CONTR置为0x60就可以完成下载了。
isp是在系统编程技术,是指给单片机烧写程序不用吧芯片从电路板上拆下来,就能完成烧录程序。iap是在应用编程,是指单片机在上电工作过程中实现程序修改烧写,就好比手机不关机安装应用程序源毁。eeprom是一种存储器技术,可以靠电擦除内容,并物裂禅实现掉电后不丢失,而且可以按字节罩尘读写欢迎分享,转载请注明来源:内存溢出
评论列表(0条)