SST89C54/58系列单片机的IAP应用技术
发布时间:2007/9/10 0:00:00 访问次数:504
摘要:SST89C54/58j Silicon Storage Technology公司推出的带有20KB/36KB Flash的单片机。芯片内部集成了可以对Flash进行操作的功能模块。通过对Flash的分区实现在应用中可编程的功能。本文介绍它们的IAP功能,并给出IAP功能的一些子程序。
关键词:SST89C54/58 IAP Flash存储器
SST89C54/58单片机是MCS-51系列单片机的派生产品。它们在指令系统、硬件结构和片内资源上与标准8052单片机完全兼容,只是加大了内部程序存储器Flash的容量。
SST89C54/58的特色:
*256×8位内部RAM;
*3个16位定时/计数器(T0、T1、T2);
*1个全双工、可编程串行通信口(UART);
*6个中断源,2 个优先级;
*4个8位I/O口(32位I/O引脚);
*TTL和CMOS电平全兼容;
*5(1±0.1)V供电时,工作频率为0~33MHz;
*3(1±0.1)V供电时,工作频率为0~12MHz;
*内部看门狗定时器(WDT);
*支持3种省电模式:空闲、下电和等待,并且支持外部低电平中断退出下电模式。
1 SST89C54/58的存储器结构
1.1 程序存储器
89C54与89C58之间仅有存储器容量大小的不同;前者20KB,后者为36KB。程序存储器分为block0和block1两块:block0前者为16KB,后者为32KB,都分成了128字节大小的区段;block1均为4KB,分为64字节大小的区段。它们的程序存储器结构如图1所示。
block0和block1的地址不是连续的。Block1从F000H开始。SST89C54/58允许block0映射到block1,上电后程序既可以从block0(0000H)开始执行,也可以从block1(F000H)开始执行。程序从哪个块开始执行由单片机的Re-Map[1:0]位决定。在这2位都为1的时候程序从0000开始执行,否则,从F000H开始执行。Re-Map[1:0]位是非易失性的,可以用编程器对其编程。
1.2 数据存储器
SST89C54/58有256字节的内部数据存储器,其中低128字节RAM(00H~FFH)与8052完全相同;在高128字节中增加了一些针对IAP功能的特殊功能寄存器(SFR)。新增加的SFR的定义及设置如表1所列。
表1 新增特殊功能寄存器
标识符 | 名 称 | 地 址 | 初始化值 | ||||||
SFST | Flash状态 | B6H | xxx00000b | ||||||
摘要:SST89C54/58j Silicon Storage Technology公司推出的带有20KB/36KB Flash的单片机。芯片内部集成了可以对Flash进行操作的功能模块。通过对Flash的分区实现在应用中可编程的功能。本文介绍它们的IAP功能,并给出IAP功能的一些子程序。 关键词:SST89C54/58 IAP Flash存储器 SST89C54/58单片机是MCS-51系列单片机的派生产品。它们在指令系统、硬件结构和片内资源上与标准8052单片机完全兼容,只是加大了内部程序存储器Flash的容量。 SST89C54/58的特色: *256×8位内部RAM; *3个16位定时/计数器(T0、T1、T2); *1个全双工、可编程串行通信口(UART); *6个中断源,2 个优先级; *4个8位I/O口(32位I/O引脚); *TTL和CMOS电平全兼容; *5(1±0.1)V供电时,工作频率为0~33MHz; *3(1±0.1)V供电时,工作频率为0~12MHz; *内部看门狗定时器(WDT); *支持3种省电模式:空闲、下电和等待,并且支持外部低电平中断退出下电模式。 1 SST89C54/58的存储器结构 1.1 程序存储器 89C54与89C58之间仅有存储器容量大小的不同;前者20KB,后者为36KB。程序存储器分为block0和block1两块:block0前者为16KB,后者为32KB,都分成了128字节大小的区段;block1均为4KB,分为64字节大小的区段。它们的程序存储器结构如图1所示。 1.2 数据存储器 SST89C54/58有256字节的内部数据存储器,其中低128字节RAM(00H~FFH)与8052完全相同;在高128字节中增加了一些针对IAP功能的特殊功能寄存器(SFR)。新增加的SFR的定义及设置如表1所列。
|