1、什么是ISP
在这里简单解释一下:
ISP——in system programming:
在系统编程。芯片可以在目标板上,通过烧录器接入特定的接口,进行CODE的烧录。
我们在调试代码阶段一般都是用这种方式烧录代码的,但是量产之后的维护呢,总不可能拆开每一个设备吧,更何况还有一些设备安装在恶劣环境下。
针对本文的主角,宏晶的非IAP系列的单片机,这里以STC12C5A60S2为例。采用ISP的方式,可以在不拆开设备外壳且设备不断电冷启动的情况下,对芯片进行CODE更新。
2、实现方法
从手册中可以在特殊寄存器的列表中找到如下图所示内容
由上图可知,在非IAP系列的单片机中,是存在ISP相关寄存器的,这就是这篇文章的基础。我们继续顺藤摸瓜找到如下描述
由手册描述可知,非IAP系列的单片机内的IAP接口是用于内部划分的EEPROM进行读写擦除动作的。
看到这里,其实我们应该明白了,就