(1)串行下载(在线编程)
ADuC845可方便地通过标准UART串行口下载程序代码。如果PSEN引脚通过外部1kΩ下拉电阻被拉至低电平,则在复位和上电后,ADuC845可进入串行下载模式。一旦处于此模式,隐藏的嵌入式下载内核开始工作,用户可以把代码下载到程序存储器,同时器件仍位于其目标应用硬件中。PC串行下载的可执行程序是作为ADuC845 QiuckStart开发系统的一部分提供的。
(2)并行编程
并行编程模式与常规的第三方闪速或EEPROM器件编程完全兼容。在此模式下,P0和P2口用作外部地址总线接口,P3口用作外部数据总线接口。P1.0用作写使能选通,P1.1“P1.4端口用作通用配置口,在并行编程期间,它可伙各种编程和擦除操作进行配置。
ADuC845具有片内加密特性,可提供三种安全模式。这些模式可被独立激活,以防止程序存储空间被自由读取。三种安全模式如下:
*加锁模式
该模式可锁存代码存储器,禁止程序存储器的并行编程,但允许在并行模式下下对此存储器进行读操作,或者通过外部存储器的MOVC命令对其进行读操作。在串行下载或并行编程模式下,通过启动“擦除代码及数据”命令使此模式无效。
*加密模式
该模式能锁存代码存储器,禁止程序存储器的并行编程,且不允许在并行模式下读/校验程序存储器或通过外部存储器的MOVC命令对内部存储器进行读操作。在串行下载或并行编程模式下,通过启动“擦除代码及数据”命令可使此模式无效。
*串行安全模式
该模式禁止串行下载代码。如果串行安全模式被激活,且试图将存储器在PSEN引脚为低电平时复位到串行下载模式,则存储器将此复位仅看作正常复位,因此,它将不会进入串行下载模式,而仅执行一个正常复位程序。在并行编程模式下,使用“擦除代码和数据”命令时,此模式无效。
b.闪速/电擦除数据存储器
闪速/电擦除数据存储器容量为4kB,它被配置为1024页,每页4个字节。它和其它外围设备一样,可通过是映射到SFR空间的寄存器组与此存储器空间相接。4个数据寄存器组(EDATA1”EDATA4)用于保存4B页数据。页寻址是通过EADRH和EADRL两个寄存器实现的。ECON是一个8位控制寄存器,这可写入9个闪速/电擦除存储器访问命令之一,以使能各种读、写、擦除和校验模式。
此存储器可用作通用非易失性缓存区,分别是高128RAM和低128B RAM。低128B RAM可通过直接或间接寻址访问,而高128B RAM只能通过间接寻址访问,原因在于它与只能通过直接寻址访问的SFR共用同一地址空间。内部数据存储器的低128字节映射中,最低的32字节分为4个区,每区含8个寄存器,编号为R0“R7。寄存器区分紧接的16字节(128位)构成了位可寻址的存储器空间块,位地址00H”07H。堆栈可位于内部存储器地址空间的任一位置,其深度可扩展到2048字节。复位初始化堆栈指针到07H。由于装载堆栈前访问或压入地址已加1的SP,因此,装载堆栈从08H开始,即从R0寄存器开始。若使用不止一个寄存器块,则堆栈指针必须被初始化到RAM区而不是用于数据保存。