SST89系列单片机深圳好记芯电子有限公司Web:www.
superflash.
cnTel:0755-86100886Email:li_ling@superflash.
cn0SST单片机中文教程(非SST官方资料,请以SST网站上DATASHEET为准)深圳好记芯电子有限公司超高性价比,超高灵活性的SST89系列单片机深圳好记芯电子有限公司Web:www.
superflash.
cnTel:0755-86100886Email:li_ling@superflash.
cn1SST89系列单片机可实现的功能配置:1.
片内用户程序空间可达72K.
2.
片内EEPROM数据存储容量可超64K.
3.
5个通道的PWM信号输出,可实现5路的D/A数模转换.
4.
6个UART串口.
让产品的通讯功能更加灵活,省掉昂贵的串口扩展芯片5.
1个SPI串口.
6.
内嵌电压检测电路,节省外部的电源管理及复位芯片.
7.
在片仿真功能,SOFTICE功能,让开发工程师省掉仿真器,并弥补了专用仿真器的"不能仿真扩展功能,接触不良,编程不能运行,价格昂贵"的缺陷.
8.
在线编程功能.
EASYIAP工具软件,让开发工程师省掉编程器.
9.
程序和数据存储空间互补利用,用户程序剩下的FLASH空间,均可作为数据存储.
超级灵活SSTMCU内部FLASH存储空间的三种用法示意图64K用户程序8K用户程序0000H11FFFH第一种用法:72K的用户程序空间64KCODE用户程序6KDATA数据存储2KIAP下载程序0000H0FFFFH第二种用法:64K的用户程序空间,6KDATA数据存储2KIAP下载程序0000H0800H1FFFH6KDATA数据存储16K用户程序48KDATA数据存储0000H11FFFH第三种用法:16K的用户程序空间其余空间58K作数据存储8KDATA数据存储超高性价比,超高灵活性的SST89系列单片机深圳好记芯电子有限公司Web:www.
superflash.
cnTel:0755-86100886Email:li_ling@superflash.
cn2超高性价比:1.
节省成本:1.
节省系统成本:可省去外部的EEPROM(最大容量达64K,相当于28/24C512,成本约20元),电压监控芯片,上电复位电路(约2元),5个UART的扩展芯片(约80元)2.
节省开发成本:自带在线下载和在片仿真功能,省去了开发用的编程器和仿真器(约8000元)3.
节省生产成本:一个专用编程芯片搞定芯片的生产编程,节省了生产部门配置的电脑,生产编程器及其适配座(约10000元),简单,安全,保密,易于生产管理4.
节省维护成本:具有客户端的产品升级功能,可迅速解决客户现场出现的开发过程中没有遇到的特殊问题,节省产品的邮寄费用,维护人员的飞机出差费用,并不耽误客户的产品使用.
让客户感觉你的产品具有无限更新的功能,对开发留下的BUG问题可以忽略不计,提高了企业的声誉.
如果按照常规的返修流程,影响了客户的使用,以后可能就不会再买你的产品了.
这个成本是无法用金钱来衡量的.
2.
方便开发:具有SOFTICE在片仿真功能,开发工程师不需仿真器和编程器便可开发调试产品.
可实现单步、断点、全速的仿真,变量数据一目了然.
并且在片仿真解决了专用仿真器存在的-"不能仿真非标准52的特殊功能;接触不良;编程不能运行"的缺陷.
3.
方便生产.
芯片的批量编程,仅需一个芯片搞定.
既不需生产部配备电脑,编程器,编程插座等生产设备,又避免了因为人为因素的选错文件,程序泄密等弊端.
简单,安全,保密,易于生产管理4.
数据存储:非易失数据存储(可超过64K),掉电后数据不丢失,片内数据存储更保密.
5.
应用灵活:内嵌两块小扇区(128字节/扇区)的FLASH存储器,程序和数据存储空间充分互补利用,不作程序的空间,均可作为数据存储.
突破了标准51单片机的程序与数据必须分开和64K的极限.
用户程序最大可达72K,数据存储可超64K.
6.
最多可达6个UART串口.
通讯功能更加灵活方便.
7.
售出产品的产品升级更新功能.
产品快速上市,可根据客户的反馈及时更新产品,让产品在市场上的始终处于领先地位,增强产品的竞争优势.
与客户保持良好的长期合作关系.
8.
防盗版解密功能.
由于灵活的产品更新和软硬加密功能,可有效防止你的产品解密盗版.
保护你的知识权益.
SST89系列单片机选型一览表最高时钟频率Hz型号5V/E3V/VFlash存储器RAM串口UARTPCA中断源优先级DPTR数据指针降低EMI掉电检测看门狗双倍速P4口SPISST89E/V516RD240M33M64K+8K1KB1ch+5ch842SST89E/V58RD240M33M32K+8K1KB1ch+5ch842SST89E/V54RD240M33M16K+8K1KB1ch+5ch842SST89E/V52RD240M33M8K+8K1KB1ch+5ch842SST89E/V54RC33M25M16K+1K512B1ch+0842SST89E/V52RC33M25M8K+1K512B1ch+0842深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn3附:SST系列单片机性能SST单片机主要特性:·兼容80C51系列,内置超级FLASH存储器的单片机·SST89E5XXRD工作电压VDD=4.
5~5.
5V5伏工作电压时0~40MHz的频率范围·SST89V5XXRD工作电压VDD=2.
7~3.
6V在3伏工作电压下,原厂保证0~25MHz的工作频率,实际最高可达40MHz·与现行的80C52列单片机硬件PIN-TO-PIN完全兼容,软件、开发工具也完全兼容·1K*8的内部RAM(256Bytes+768Bytes,可放心使用C语言编程)·两块超级FLASHEEPROM—SST89E516RD/SST89V516RD:64K*8的基本存储块和8K*8的二级存储块(扇区大小为128字节)—SST89E58RD/SST89V58RD:32K*8的基本存储块和8K*8的二级存储块(扇区大小为128字节),(二级存储块可用于存放掉电后要保存的数据,放在内部具有极强的抗干扰性)—独立的块加密—IAP下的并行操作—块地址重映射·最大片外程序/数据地址空间为64K*8(当然也可以通过I/O口进行块切换,实现超64K扩展)·三个高电流驱动引脚(每个16mA,可直接驱动LED)·三个16位定时器/计数器·全双工增强型UART—帧错误检测—自动地址识别·9个中断源,四个中断优先级·看门狗定时器(WatchdogTimer,缺省情况下不打开,用户不需要时可不使用)·可编程计数阵列(PCA)标准为每个机器周期12个时钟,器件可选择在每个机器周期6个时钟基础上加倍掉电检测(Brow-out缺省为产生复位,也可设置为产生中断)·降低EMI模式(通过AUXRSFR不允许ALE输出时钟)以上三项确保了SST单片机的高抗干扰性,可直接取代ATMEL公司的单片机·四个8位I/O口(32根输入输出线)深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn4·双DPTR指针(查表,寻址更方便)·SPI串行接口·兼容TTL和CMOS·扩展省电模式—Idle模式—由外部中断唤醒的省电模式—Standby模式·3种封装形式:PDIP-40、PLCC-44、TQFP-44·温度范围:商业级(0℃-+70℃)工业级(-40℃-+85℃)产品简介:SST89E516RD、SST89V516RD、SST89E58RD和SST89V58RD都是8位FLASHFLEX51系列单片机.
FLASHFLEX51是在高级FLASHCMOS半导体工艺下设计和生产出的单片机产品之一.
器件都有相同的功能强大的指令系统,并且和8xC5x器件兼容.
单片机有72/40K片内FLASHEEPROM程序存储器,它利用了SST的超级FLASH专利技术,这些都是SST的领先技术.
超级FLASH存储器被分成两个独立的程序存储块,基本FLASHBlock0占用64/32K字节片内程序存储空间,二级FLASHBlock1占用8K字节的片内程序存储空间;8K字节的二级FLASH块能被映射到64/32K字节低地址空间它也能从程序计数器中被隐藏掉而用做一个独立的类似EEPROM的数据存储器.
FLASH存储通过标准的87C5xOTPEPROM编程器来编程,这个编程器必须有和SST器件配套的适配器和硬件.
在上电复位过程中,单片机能初始化为一个存储源代码的外部主机的从机,或用来控制外部主机的IAP操作.
单片机可预先设计存储器内的引导装入程序,可以指导初学者装入程序代码和熟练者通过IAP更新代码.
引导装入程序仅仅是一个参考并带来方便.
单片机并没保证引导装入程序例子的可行性和有用性.
芯片擦除和块擦除操作将擦除预先编辑的例子代码.
除了72/40K字节的超级FLASH程序存储器,器件能寻址到64K字节外部程序存储空间.
除了1024*8位的内部RAM,外部64KRAM地址空间也能被寻址.
SST系列单片机的高可靠性,享有专利的超级FLASH技术和存储单元结构在设计和制造MCU方面有较大的优势,这些优势产生的高性能价格比,极大的方便了我们的客户.
深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn5第一章SST系列单片机原理1.
1功能框图深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn61.
2引脚分配1.
2引脚描述深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn7标志类型名称和功能P0[7:0]I/OPort0:P0是一个漏极开路的8位双向I/O口.
作为输出口,每位能驱动多个LS型TTL负载.
P0浮空,锁存器为"1",可作为高阻抗输入.
在访问外部存储器时,P0口作为低8位地址和数据总线分时复用.
在这种应用中,当转为高电平时,它用了强大的内部上拉.
在外部主模式编程状态下,P0接收代码字节,在外部主模式校验过程中输出代码字节.
在程序校验过程中需要外部上拉P1[7:0]带内部上拉的I/OPort1:P1是一个带内部上拉电阻的8位准双向I/O口.
每位能驱动LS型TTL负载.
当P1口作为输入口用时,向内部锁存器写入"1",P1引脚被内部上拉电阻拉为高电平.
由于内部上拉电阻,被拉为低的P1引脚能向外提供电流(IIL,如10-3和10-4图示).
P1[5,6,7]有16毫安的高电流驱动能力.
当外部主模式在编程和测试时,P1也接收低8位地址P1[0]I/OT2:定时器/计数器2外部计数输入或时钟输出从定时器/计数器2P1[1]IT2EX:定时器/计数器2捕捉/重装触发器和方向控制P1[2]IEC1:PCA定时器/计数器外部输入P1[3]I/OCEX0:比较/捕捉外部输入输出模块,每个比较/捕捉模块连接到一P1口引脚,当不用于PCA时,这个口用作标准I/OP1[4]I/OSS#:主机输入、从机输出(SPI)或CEX1:比较/捕捉外部输入输出模块P1[5]I/OMOSI:主机输出,从机输入(SPI)或CEX2:比较/捕捉外部输入输出模块P1[6]I/OMISO:主机输入,从机输出(SPI)或CEX3:比较/捕捉外部输入输出模块P1[7]I/OSCK:主机时钟输出、从机时钟输入或CEX4:比较/捕捉外部输入输出模块P2[7:0]带内部上拉的I/OPort2:P2是一个带内部上拉电阻的8位准双向I/O端口,当被作为输入时,向它写"1",P2引脚被内部上拉电阻拉为高电平.
作为输入使用时,被内部上拉电阻下拉为低电平的P2会产生电流(IIL如10-3和10-4表所示).
当从片外程序存储器取数和访问片外数据存储器时,P2能提供高8位地址.
在此应用中,当转为VOH时,它利用了功能极强的内部上拉电阻.
当外部主模式在编程和测试时,它还接收控制信号和部分高8位地址.
P3[7:0]带内部上拉的I/OPort3:P3是一个带内部上拉电阻的8位准双向I/O口.
P3的输出缓冲能驱动多个LS型TTL.
当被作为输入时,向它写"1",PORT3引脚被内部上拉电阻拉为高电平,作为输入使用时,被外部拉为低,能驱动电流(IIL如10-3和10-4表所示).
当外部主机在编程和校验时,它还能接收控制信号和部分高8位地址.
P3[0]IRXD:串行数据接收P3[1]OTXD:串行数据发送P3[2]IINT0#:外部中断0输入P3[3]IINT1#:外部中断1输入P3[4]IT0:定时/计数器0的外部计数输入P3[5]IT1:定时/计数器1的外部计数输入P3[6]OWR#:外部数据存储器写选通P3[7]ORD#:外部数据存储器读选通深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn8表9-2-1:引脚描述(2)I=输入;O=输出在Flash编程期间,并不需要12V的电压供应.
1.
3存储器结构本系列单片机程序和数据存储空间分开独立寻址.
1.
3.
1程序存储器有两个片内FLASH存储块.
基本FLASH存储块(Block0)占用64/32/16K字节,二级FLASH存储块Block1为8K字节(4K,89C54/58).
因为整个内部程序空间被限制为64/32K字节,SFCF[1:0]位用于控制存储块的切换.
请参考图9-3-1和9-3-2中关于程序存储空间的分配.
程序存储块的选择下一节再说明.
标志类型名称和功能P4[7:0]带内部上拉的I/OPort3:P3是一个带内部上拉电阻的4位准双向I/O口.
P3的输出缓冲能驱动多个LS型TTL.
当被作为输入时,向它写"1",PORT3引脚被内部上拉电阻拉为高电平,作为输入使用时,被外部拉为低,能驱动电流(IIL如10-3和10-4表所示).
P4[0]IRXD:串行数据接收P4[1]OTXD:串行数据发送P4[2]IINT3#:外部中断3输入P4[3]IINT2#:外部中断2输入PSEN#I/O程序存储器允许:PSEN#是外部程序存储器读选通.
当从内部程序存储器执行时,PSEN#不激活.
当从外部程序存储器执行时,每个机器周期PSEN#两次有效,除了当进入外部数据存储器时,在每个机器周期都有一个PSEN#信号跳过.
当RST输入能持续保持高电平多于10个机器周期时,迫使PSEN#由低到高的转换会使单片机进入主编程模式RSTIReset:振荡器在工作时,此脚如能保持两个机器周期以上的高电平复位器件.
复位后,当RST输入保持高电平,PSEN#引脚被高到低的电平转换驱动,器件将进入外部主模式,否则,器件将进入通用操作模式EA#I外部访问允许:为了使单片机能从片外程序存储器取指令,EA#必为低.
内部程序执行时,EA#必为高电平.
然而,第四级加密锁将禁止EA#,程序只能从片内程序存储器开始执行.
EA#能承受12V的高电压.
(可参考47页"绝对最大承受值)ALE/PROGI/0地址允许:在访问外部存储器时,ALE用于锁存出现在P0口的低8位地址.
此引脚也是外部主模式编程脉冲输入端(PROG#).
除了访问外部数据存储器,ALE在每个机器周期有效两次,在第二个机器周期有一个ALE有效被跳过.
然而,如果AO置"1",ALE被禁止.
(可参考20页"辅助寄存器")XTAL1/I/0振荡器:输入输出来转换振荡放大器.
XTAL1是内部时钟产生电路的输入从外部时钟源VDD输入电源输入:通用、IDLE、省电、备用模式下的电源供应VSS输入接地端:电源接地端(参考电压为0V)深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn964/32K*8的基本超级FLASH块被组织成512/256个扇区,每个扇区由128字节组成.
8K*8二级FLASH存储块被组织成64个扇区,每个扇区是128字节.
对两个块来说,程序地址空间的低7位选择扇区内的字节,剩下的地址位选择块内扇区.
图:9-3-1:SST89E/V516RD和SST89V516RD的程序存储器组织深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn10图9-3-2:SST89E/V58RD的程序存储器组织(52RD,54RD与此类同,不同的只是BLOCK0的容量,SST89E/V52RD:8K;SST89E/V54RD:16K;SST89E/V58RD:32K.
)1.
3.
2程序存储块切换单片机允许在程序地址空间的Block1或Block0的低8K之间切换.
SFCF[1:0]控制程序存储块的切换.
表9-3-1:SFCF值程序存储块切换(SST89E/V516RD)SFCF[1:0]程序存储块切换01,10,11对PC来说,Block1是禁止的;只有在IAP模式,Block1从0000H-1FFFH可寻址00Block1覆盖了程序地址空间的低8K即0000H—1FFFH的地址空间.
当PC下降到0000H—1FFFH时,指今将从Block1中读取而不是从Block0读取.
在0000H—1FFFH外,Block0可用.
Block1的0000H—1FFFH在IAP模式下可寻址.
深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn11表9-3-2:SFCF值-程序存储块切换(SST89E/V52RD,54RD,58RD)SFCF[1:0]程序存储块切换10,11对PC来说,Block1是禁止的;在IAP模式下,Block1从E000H-FFFFH可寻址01对PC来说,Block0和Block1都是允许的;Block0覆盖了0000H—7FFFH,Block1覆盖了E000H—FFFFH的地址空间.
00Block1覆盖了程序地址空间的低8K即0000H—1FFFH的地址空间.
当PC下降到0000H—1FFFH时,指今将从Block1中读取而不是从Block0中读取.
在0000H—1FFFH外,Block0允许.
Block0的0000H—1FFFH在IAP模式下可寻址.
1.
3.
2.
1程序存储块切换的初始设置程序存储块切换是在复位后根据SC0位的状态来初始化的.
SC0是根据外部主模式命令或IAP命令来编程的.
可参考表9-4-2和9-4-6.
一旦退出复位,SFCF[0]能根据设计需要通过编程动态改变.
改变SFCF[0]将不会改变SC0.
在动态改变SFCF[0]时,必须小心谨慎.
因为这将导致不同的物理存储器被映射到逻辑程序地址空间.
使用者必须避免在空间0000H—1FFFH之间执行块切换命令.
1.
3.
3数据存储器1024*8片内RAM,片外寻址64K的外部数据存储器.
单片机有四组片内数据存储器:1.
RAM的低128字节(00H—7FH)通过直接和间接寻址访问.
2.
RAM的高128字节(80H—FFH)只能通过直接寻址访问.
3.
特殊功能寄存器(SFRS,80H—FFH)只能通过直接寻址访问.
4.
768字节(00H—2FFH)的内部扩展RAM通过清零EXTRAM和外部传送指令(MOVX)来实现间接寻址(参考15页"辅助寄存器(AUXR)的有关描述).
表9-3-3:不同复位条件的SFCF值在下列模式下SFCF[1:0]的状态SC11SC0上电或外部复位WDT或Brown-dowm复位软件复位1100x0101001x1110110101000111111深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn12Note1:SC1只用于SST89E58RD和SST89V58RD.
1.
3.
4双数据指针两个16位数据指针.
在AUXR1中的DPTR的选择位(DPS)决定了哪个数据指针是可访问的.
当DPS=0,选择DPTR0;DPS=1,选择DPTR1.
两个数据指针之间的快速切换可对AUXR1执行INC指令来实现.
双DPTR数据指针给查表和寻址带来很大方便.
下面用两个指针将外部数据存储器中以地址0000H开始的64字节数据送到以1000H开始的单元中.
AUXR1DATA0A2H;AUXR1GF2|0|-|DPS|MOVR1,#64INCAUXR1;选用数据指针0MOVDPTR,#0000HINCAUXR1;切换到数据指针1MOVDPTR,#1000HCONVEY:INCAUXR1;切换到数据指针0MOVX@DPTR,AINCAUXR1;切换到数据指针1MOVXA,@DPTRDJNZR1,CONVEY1.
3.
5特殊功能寄存器FlashFlex51单片机系列的大部分特性都是通过如图9-3-4中所示的特殊功能寄存器的相应位来控制的.
每个SFR的单独描述和复位值在表9-3-5和9-3-9中可见.
表9-3-4:FlashFlex51SFR存储器映射深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn13深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn14表9-3-5:与CPU相关的特殊功能寄存器(SFR)符号描述地址位地址,符号,端口功能MSBLSB复位值ACC1累加器E0HACC[7:0]00HB1B寄存器F0HB[7:0]00HCYACF0RS1RS0OVF1PPSW1程序状态字D0H进位标志0溢出标志1(半进位)00HSP堆栈指针81HSP[7:0]07HDPL指针低8位82HDPL[7:0]00HDPH指针高8位83HDPH[7:0]00HEAECET2ESET1EX1ET0EX0IE1中断允许A8H总允许PCAT2UART/SPIT1外部1T0外部040hEBOIEA1中断允许AE8H----低压---xxxx0xxxbPPCPT2PSPT1PX1PT0PX0IP中断优先级寄存器B8H-PCAT2UART/SPIT1外部1T0外部0xx000000bIPH高中断优先级寄存器B7H-PPCHPT2HPSHPT1HPX1HPT0HPX0Hxx000000bPBOPX3PX2IP1中断优先级寄存器AF8H1--低压外部3外部211xx10001bPBOHPX3HPX2HIP1H高中断优先级寄存器AF7H1--低压外部3外部211xx10001bSMOD1SMOD0BOFPOFGF1GFOPDIDLPCON电源控制87H波特率加倍1选择FE0:选择SM0低压复位标志上电复位标志通用标志位1通用标志位0激活掉电模式激活空闲模式00010000bEXTRAMAOAUXR辅助寄存器8EH---外部RAM禁止ALExxxxxx00bGF2DPSAUXR1辅助寄存器1A2H-标志20-DPTR1xxxx00x0bEX3IE3IT30EX2IE2IT2XICON外部中断控制寄存器AEH0外部3允许外3标志外3下降沿触发外部2允许外2标志外2下降沿触发00H深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn1588HTF1TR1TF0TR0IE1IT1IE0IT000HTCON1定时/计数器控制T1溢出标志T1启动T0溢出标志T0启动外部1中断标志外部1下降沿触发外部0中断标志外部0下降沿触发表:9-3-6:对FLASH存储器编程用特殊功能寄存器(SFR)符号描述地址位地址,符号,端口功能MSBLSB复位值SFSTFLASH状态B6HSB1_i加密位1SB2_i加密位2SB3_i加密位3-EDC_i倍速标志FLASH-BUSYIAP忙标志--xxxxx0xxbSFCFFLASH配置B1H-IAPENIAP允许----SWR软件复位BSEL块选择x0xxxxxxbSFCMFLASH命令B2HFIE中断允许FCMIAP命令字00HSFDTFLASH数据B5HFLASH数据寄存器00HSFALFLASH低8位地址B3HFLASH低8位地址:A7-A0(SFAL)00HSFAHFLASH高8位地址B4HFLASH高8位地址:A15-A0(SFAH)00H表9-3-7:看门狗定时器用特殊功能寄存器符号描述地址位地址,符号,或转换口作用MSB…LSB复位值WDTC1看门狗定时器控制C0H---WDOUT输出到RST管脚WDRE复位允许WDTS复位标志WDT喂狗刷新SWDT启动WDTxxx00x00bWDTD看门狗定时器数据/加载85H看门狗的定时数据00H深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn16表9-3-8:定时/计数器符号描述置接地址位地,符号,端口功能MSBLSB复位值定时器1定时器0GATEC/T#M1M0GATEC/T#M1M0TMOD定时/计数器模式控制89H受INT1控制计数/定时模式选择受INT0控制计数/定时模式选择00HTF1TR1TF0TR0IE1IT1IE0IT0TCON1定时/计数器控制88HT1溢出标志T1启动T0溢出标志T0启动外部1中断标志外部1下降沿触发外部0中断标志外部0下降沿触发00HTH0定时器08CHTH0[7:0]T0定时常数高8位00HTL0定时器08AHTL0[7:0]T0定时常数低8位00HTH1定时器18DHTH1[7:0]T1定时常数高8位00HTL1定时器18BHTL1[7:0]T1定时常数低8位00HTF2EXF2RCLKTCLKEXEN2TR2C/T2#CP/RL2#T2CON1定时/计数器2控制C8HT2溢出标志T2外部标志接收时钟标志发送时钟标志外部使能启动外部计数捕获/重装00HT2OEDCENT2MOD#定时/计数器2模式控制C9H输出使能递减使能xxxxxx00bTH2定时器2CDHTH2[7:0]T2定时常数高8位00HTL2定时器2CCHTL2[7:0]T2定时常数低8位00HRCAP2HT2捕捉/重装寄存器CBHRCAP2H[7:0]高8位00HRCAP2LT2捕捉/重装寄存器CAHRCAP2L[7:0]低8位00H1.
可位寻址的SFRS.
深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn17表9-3-9:接口用特殊功能寄存器(SFR)符号描述直接地址位地,符号,端口功能MSBLSB复位值SBUF串行数据缓冲器99HSBUF[7:0]结束SM0/FESM1SM2RENTB8RB8TIRISCON1串行端口控制98HFE:帧错误标志模式选择1模式选择2接收允许发送的第9位接收的第9位发送中断标志接收中断标志00HSADDR从机地址/串口地址寄存器A9HSADDR#[7:0]与SADEN"与"得出广播响应的地址00HSADEN从机地址标志/串口地址使能B9HSADEN#[7:0]00HSPIESPEDORDMSTRCPOLCPHASPR1SPR0SPCRSPI控制寄存器D5H中断使能SPI使能低位先传主机模式空闲SCK高时钟后沿触发主机的分频选择0-34,16,64,12804HSPIFWCOLSPSRSPI状态寄存器AAHSPI中断标志写冲突标志00HSPDRSPI数据寄存器86HSPD7SPD6SPD5SPD4SPD3SPD2SPD1SPD000HP01端口080HP0[7:0]FFHCEX4/SPICLKCEX3/MISOCEX2/MOSICEX1/SSCEX0ECIT2EXT2P11端口190H比较/捕捉输入输出管脚4/SPI时钟比较/捕捉输入输出管脚3比较/捕捉输入输出管脚2比较/捕捉输入输出管脚1片选比较/捕捉输入输出管脚0PCA外部时钟输入捕获/重装触发和方向控制T2的计数输入/时钟输出FFHP21端口2A0HP2[7:0]FFHP31端口3B0HRD#WR#T1T0INT1#INT0#TXDRXDFFHP4端口4A5H1111P4.
3P4.
2P4.
1P4.
0FFH深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn18表9-3-10:PCA特殊功能寄存器符号描述地址位地址,符号,或可选择口或能MSBLSB复位值CHCLPCA定时/计数器F9HE9HCH[7:0]PCA定时器高8位CL[7:0]PCA定时器低8位00HCFCR-CCF4CCF3CCF2CCF1CCF0CCONPCA定时器/计数器控制寄存器D8H计数器溢出标志启动PCA计数器PCA4中断标志PCA3中断标志PCA2中断标志PCA1中断标志PCA0中断标志00HCIDLWDTE---CPS1CPS0ECFCMODPCA定时器/计数器模式寄存器D9H空闲禁能PCA的WDG使能计数源选择0-F/12;1-F/42-T0;3-P1.
2使能计数溢出中断00x00000bCCAP0HFAHCCAP0H[7:0]00xxx000bCCAP0LPCA模块0比较/捕捉寄存器EAHCCAP0L[7:0]00HCCAP1HFBHCCAP1H[7:0]00HCCAP1LPCA模块1比较/捕捉寄存器EBHCCAP1L[7:0]00HCCAP2HFCHCCAP2H[7:0]00HCCAP2LPCA模块2比较/捕捉寄存器ECHCCAP2L[7:0]00HCCAP3HFDHCCAP3H[7:0]00HCCAP3LPCA模块3比较/捕捉寄存器EDHCCAP3L[7:0]00HCCAP4HFEHCCAP4H[7:0]00HCCAP4LPCA模块4比较/捕捉寄存器EEHCCAP4L[7:0]00HECOM0CAPP0CAPN0MAT0TOG0PWM0ECCF0CCAPM0DAH-使能比较器上升沿捕获下降沿捕获匹配使能匹配翻转CEX管脚使能PWM管脚输出使能CCF中断x0000000bCCAPM1DBH-ECOM1CAPP1CAPN1MAT1TOG1PWM1ECCF1x0000000bCCAPM2DCH-ECOM2CAPP2CAPN2MAT2TOG2PWM2ECCF2x0000000bCCAPM3DDH-ECOM3CAPP3CAPN3MAT3TOG3PWM3ECCF3x0000000bCCAPM4PCA比较/捕捉模块模式寄存器DEH-ECOM4CAPP4CAPN4MAT4TOG4PWM4ECCF4x0000000b深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn19SuperFlash状态寄存器(只读寄存器)SuperFlashStatusRegister(SFST)地址0B6H复位值xxxxx0xxb符号功能符号功能符号功能SECD1安全位1SECD2安全位2SECD3安全位3FLASH-BUSYFLASH操作完成检测位1:芯片忙2:芯片已完成IAP命令SuperFlash配置寄存器SuperFlashConfigurationRegister(SFCF)地址0B1H复位值xxxxx0xxb符号功能IAPENIAP操作允许0:IAP命令禁止1:IAP命令允许SWR软件复位(参见"1.
2软件复位")BSEL程序存储块切换位(参见9-3-1和9-3-2中的有关描述)SuperFlash命令寄存器(SFCM)地址0B2H复位值00000000b符号功能FIEFLASH中断允许位0:INT1#不允许再被指定为IAP中断1:INT1#被指定为IAP操作完成标志,外部INT1#中断忽略FCM[6:0]FLASH操作命令000-1011B扇区-擦除(Sector-Erase)000-1101B块-擦除(Block-Erase)000-1100B字节-校验(Byte-Verify)000-1110B字节-编程(Byte-Program)000-1111B编程-SB1位(Prog-SB1)000-0011B编程-SB2位(Prog-SB2)76543210SECD1SECD2SECD3--FLASH_BUSY--76543210IAPENSWRBSEL76543210FIEFCM6FCM5FCM4FCM3FCM2FCM1FCM0深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn20000-0101B编程-SB3位(Prog-SB3)000-1001B编程-SC0位(Prog-SC0)其它的组合没有实现,保留以后使用.
注1.
字节校验有一个单机器周期反应时间,不管FIE如何,它不产生INT1#中断.
SuperFlash数据寄存器(SFDT)地址0B5H复位值00000000b76543210SuperFlash数据寄存器符号功能SFDF与FLASH存储块接口的邮箱寄存器(数据寄存器)SuperFlash低8位地址寄存器(SFAL)地址:0B3H复位值00000000b76543210SuperFlash低8位地址寄存器符号功能SFAL用来与FLASH程序存储器接口的邮箱寄存器(低8位地址寄存器)SuperFlash高8位地址寄存器(SFAH)地址0B4H复位值00000000b76543210SuperFlash高8位地址寄存器符号功能SFAH用来与FLASH程序存储器接口的邮箱寄存器(高8位地址寄存器)器件支持8中断源,4中断优先级的中断结构.
表43总结了支持中断的查询序列.
注意:SPI串行接口和UART共用同一个中断向量(见图27).
表43中断查询序列描述中断标志向量地址中断使能中断优先级服务优先级掉电唤醒外部中断0IE00003HEX0PX0/H1(最高)能掉电-004BHEBOPBO/H2不能T0TF0000BHET0PT0/H3不能外部中断1/IAPIE1/SF0013HEX1PX1/H4能T1TF1001BHET1PT1/H5不能PCACF/CCFn0033HECPPCH6不能UART/SPITI/RI/SPIF0023HESPS/H7不能T2TF2,EXF2002BHET2PT2/H8不能深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn21中断允许寄存器InterruptEnable(IE)地址A8H复位值00H76543210EAECET2ESET1EX1ET0EX0符号功能EA中断允许0=CPU屏蔽所有的中断申请1=CPU开放所有的中断申请ECPCA中断允许ET2定时器2中断允许ES串行口中断允许ET1定时器1中断允许EX1外部中断1允许ET0定时器0中断允许EX0外部中断0允许中断允许寄存器AInterruptEnableA(IEA)地址E8H复位值xxxx0xxxb76543212----EBO---符号功能EBOBrown-out中断允许1=中断允许0=中断禁止深圳好记芯电子有限公司TEL0755-86100886FAX:0755-86100961www.
superflash.
cn22中断优先级寄存器InterruptPriority(IP)地址B8H复位值xx000000b76543210-PPCPT2PSPT1PX1PT0PX0符号功能PPCPCA中断优先位PT2定时器2中断优先位PS串行口中断优先位PT1定时器1中断优先位PX1外部中断1优先位PT0定时器0中断优先位PX0外部中断0优先位中断优先级高InterruptPriorityHigh(IPH)地址B7H复位值xx000000b76543210--PT2HPSHPT1HPX1HPT0HPX0H符号功能PT2H定时器2中断优先位高PSH串行口中断优先位高PT1H定时器1中断优先位高PX1H外部中断1优先位高PT0H定时器0中断优先位高PX0H外部中断0优先位高中断优先A寄存器InterruptPriorityA(IPA)地址F8H复位值xxxx0xxxb76543210----PBO---符号功能PBO(Brown-out)低电压检测中断优先位高中断优先寄存器AInterruptPriorityHigh(IPAH)地址F7H复位值xxxx0xxxb76543210----PBOH---符号功能PBOHBrown-out中断优先位高深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn23辅助寄存器AuxiliaryRegiste(AUXR)地址8EH复位值xxxxxx00b76543210EXTRAMAO符号功能EXTRAM0:内部扩展RAM存取,具体可参考12页的"数据存储器".
1:外部数据存储器存取.
AO0:ALE,正常方式1:ALE正常情况下被关闭.
只有在执行MOVX和MOVC指令才会工作,这将减少EMI.
辅助寄存器1AuxiliaryRegister1(AUXR1)地址A2H复位值xxxx00x0b76543210----GF20-DPS符号功能GF2用户自定义通用标志位DPSDPTR寄存器选择位0:DPTR0被选择1:DPTR1被选择深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn24看门狗定时器控制寄存器WatchdogTimerControlRegister(WDTC)地址:0C0H复位值xxx00x00b76543210---WDOUTWDREWDTSWDTSWDT符号功能WDOUT看门狗输出允许0:看门狗复位将不从RESET输出1:如果看门狗复位被WDRE允许,将复位RESET引脚32个时钟.
WDRE看门狗定时器复位允许0:禁止复位1:允许复位WDTS看门狗定时器复位标志0:外部硬件复位清零标志位标志位也可通过写入"1"来清除,标志位将会保持,如果由于看门狗定时器溢出而引起芯片复位.
1:硬件置位,当看门狗定时器溢出时.
WDT看门狗定时器刷新0:当刷新完成时,硬件复位此位.
1:软件置位此位强迫看门狗定时器刷新.
SWDT启动看门狗定时器0:停止WDT1:启动WDT看门狗定时器数据寄存器(WDTD)地址085H复位值00000000b76543210看门狗定时器数据符号功能WDTD初始化/重载看门狗定时器内的值.
当WDT置位后新值才有效.
溢出时间的计算公式:溢出时间=(255-WDTD)*344064*1/fclk(晶振频率)深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn25PCA定时器/计数器控制寄存器(CCON)地址D8H复位值00x00000b76543210CFCR-CCF4CCF3CCF2CCF1CCF0符号功能CFPCA定时器/计数器溢出标志当PCA定时/计数器溢出时由硬件置位.
如果CMOD中的中断允许位ECF=1,将产生一个中断.
CF能被硬件和软件置位但只能通过软件清零.
CRPCA定时器/计数器运行控制位当匹配或锁存发生时由硬件置位.
如果相应的CCAPMX寄存器中的中断允许位ECCFX被置1时将产生一个PCA中断请求.
必须通过软件清零.
CCF[4:0]PCA模块比较/捕捉标志:当匹配或锁存发生时由硬件置位.
如果相应的CCAPMX寄存器中的中断允许位ECCFX被置1时将产生一个PCA中断请求.
必须通过软件清零.
PCA定时器/计数器模式寄存器(CMOD)地址D9H复位值00xxx000b76543210CIDLWDTE---CPS1CPS0ECF符号功能CIDLPCA定时/计数器Idle控制0:允许PCA定时/计数器在Idle模式下运行1:在Idle模式下禁止PCA定时/计数器运行WDTE看门狗定时器允许0:禁止PCA看门狗定时器输出1:允许PCA看门狗定时器在PCA模式4下输出CPS1,CPS0看门狗定时器/计数器输入选择ECFPCA定时/计数器中断允许0:禁止CCON寄存器中的CF位1:允许CCON寄存器有CF位来产生一中断请求CPS1CPS000110101fosc/12(双倍速模式:fosc/6)fosc/4(双倍速模式:fosc/2)定时器0溢出ECI引脚上的外部时钟(最大频率=fosc/8(双倍速模式:fosc/4))深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn26表9-3-11:PCA模块模式深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
.
cn27PCA比较/捕捉模块模式寄存器(CCAPM[4:0])符号功能ECOM[4:0]比较模式0:禁止模块比较器功能1:允许模块比较器功能.
比较器用来用作软件定时器,高速输入,脉冲宽度调节,看门狗定时器模式.
CAPP[4:0]0:通过加在CEX[4:0]上的上升沿禁止锁存功能同时锁存器触发.
1:通过加在CEX[4:0]上的上升沿允许锁存功能同时锁存器触发.
CAPN[4:0]0:通过加在CEX[4:0]上的下降沿禁止锁存功能同时锁存器触发.
1:通过加在CEX[4:0]上的下降沿允许锁存功能同时锁存器触发.
MAT[4:0]匹配:置位ECOM[4:0]和MAT[4:0]用作软件定时器模式0:禁止软件定时器模式1:PCA定时器/计数器的一个匹配,比较/捕捉寄存器置位CCON寄存器的CCF[4:0],标志一个中断.
TOG[4:0]触发:置位ECOM[4:0]、MAT[4:0]、TOG[4:0]来实现高速输入模式0:禁止触发功能1:PCA定时器/计数器的一个匹配,比较/捕捉寄存器触CEX[4:0]引脚.
PWM[4:0]脉冲宽度调节模式0:禁止脉冲宽度调节模式1:设置模块为一个8位的脉冲宽度调节器,输出波形到CEX[4:0]引脚ECCF[4:0]允许CCF[4:0]中断0:禁止CCON寄存器的比较/锁存标志CCF[4:0]产生中断请求1:允许CCON寄存器的比较/锁存标志CCF[4:0]产生中断请求深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn28SPIControlRegister(SPCR)——SPI控制寄存器地址D5H复位值00000100B76543210SPIESPEDORDMSTRCPOLCPHASPR1SPR0符号功能SPIE如果SPIE和ES都被置为"1",SPI中断被允许.
SPESPI允许位.
0:禁止SPI1:允许SPI(P1[4],P1[5],P1[6],P1[7]为SS#、MOSI、MISO、SCK)DORD数据传输顺序.
0:从MSB(最高位)开始传送1:从LSB(最低位)开始传送MSTR主/从选择0:选择从模式;1:选择主模式CPOL时钟极性0:在Idle时,SCK处于低(ActiveHigh)1:在Idle时,SCK处于高(ActiveLow)CPHA时钟相位控制位0:移位触发在时钟上升沿1:移位触发在时钟下降沿SPR1.
SPR0:SPI时钟频率选择位.
这两位控制主机的SCK频率,SPR1和SPR0对从机没有影响.
SCK和振荡器频率(fOSC)的关系表示如下:SPR1SPR0SCK=fOSC除以下面的值0040116106411128深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn29SPIStatusRegister(SPSR)——SPI状态寄存器地址AAH复位值00xxxxxxb76543210SPIFWCOL符号功能SPIF置位"1",完成数据传送后,如果SPIE=1,ES=1,将会产生中断.
要清除、读SPSR,存取SPDR.
WCOL置位"1",如果SPI数据寄存器在数据传送过程中被写入了数据,要清除,读SPSR,存取SPDR.
SPIDtatRegister(SPDR)——SPI数据寄存器地址86H复位值00H76543210SPD7SPD6SPD5SPD4SPD3SPD2SPD1SPD0PowerControlRegister(PCON)——电源控制寄存器地址87H复位值00010000b76543210SMOD1SMOD0BOFPOFGF1GF0PDIDL符号功能SMOD1波特率倍增控制位.
如果SMOD1=1,定时器1被用于产生波特率.
SMOD0FE/SM0选择位0:SCON[7]=SM01:SCON[7]=FE.
BOFBrown-out检测状态位,这个位不会被任何其它的复位影响.
BOF可以通过软件清零.
上电复位也将清零BOF位.
0:无Brown_out1:Brown_out产生POF上电复位状态位,这个位不会被任何其它的复位影响.
POF可以通过软件清零.
上电复位也将清零POF位.
0:无上电复位;1:加电复位发生GF1通用标志位GF0通用标志位PDPower_dowm位0:Power_dowm不被激活;1:Power_dowm激活深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn30IDLIdle模式位0:Idle模式禁止;1:Idle模式激活SerialPortControlRegister(SCON)——串行口控制寄存器地址98H复位值00000000b76543210SM0/FESM1SM2RENTB8RB8TIRI符号功能FESMOD0=1:SCON[7]=FE0:无帧错误.
1:帧错误.
当检测到无效的停止位时,接收方置位此位.
这个位需要通过软件清零.
SM0SMOD0=0:SCON[7]=SM0串行口模式位0SM1串行口模式位1SM0SM1MODE描述波特率000移位寄存器fOSC/6(6clockmode)或fOSC/12(12clockmode)0118位UART可变1029位UARTfOSC/32或fOSC/16(6clockmode)或fOSC/32或fOSC/64(12clockmode)1139位UART可变1.
fOSC=振荡器频率.
SM2允许自动地址识别,在模式2或模式3下.
如果SM2=1,那么RI不会被置位除非接收到第九位数据(RB8)是'1'时,表明是一个地址,接收到的是给定的或广播地址.
在模式1下,如果SM2=1,那么RI将不被激活,除非接收到一有效的停止位,并且接收到的是给定的或广播地址.
在模式0下,SM2应为0.
REN允许串行接收控制位0:禁止接收.
1:允许接收.
TB8在模式2或3下,发送的第9位数据,可以通过软件置位或清零.
RB8在模式2或3下,接收到的第9位数据.
在模式1下,如果SM2=0,RB8是接收到的停止位.
在模式0下,RB8不用.
TI发送中断标志位.
在模式0下,在发送完第8位数据时由硬件置位,在其它模式下在停止位的开始被置位,在任何串行通信中,必须通过软件清零.
RI接收中断标志位.
在模式0下,在接收完第8位数据位时由硬件置位,或在其它模式下在停止位的中间被置位(其它的可查看SM2的有关说明).
此位必须通过软件清零.
深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn311.
4FLASH存储器编程单片机的内部FLASH存储器在下列两种模式下能被编程或擦除:—外部主模式—IAP模式(In-ApplicationProgrammingMode)1.
4.
1外部主机编程模式外部主模式允许用户直接对FLASH存储器编程,不用被编程从机的CPU.
当RST的输入一直保持高电平,通过强迫PSEN#由逻辑高转为逻辑低,单片机这时进入外部主模式.
维持RST=1和PSEN#=0单片机将一直保持在外部主模式.
在外部主模式下,一个Read-ID操作是必须的,用来指定器件进入外部主模式状态.
在读ID指令完成后,其它的指令才允许.
在外部主模式下,内部FLASH存储块能通过被外部主机重新配置的I/O口引脚来访问,这些外部主机可以是MCU编程器、PCB测试器或PC控制开发板.
表9-4-1:外部主模式命令(SST89E/V516RD)注意:符号表示一个负脉冲,当PROG#/ALE输入为低电平时引入指令.
上面输入引脚所有其它组合都是无效的,并且可能产生无法预料的情况.
VIL=输入低电压;VIH=输入高电压;VIH1=输入高电压(XTAL,RST);X=不必注意;AL=地址低8位,AH=地址高8位;DI=数据输入;DO=数据输出;表9-4-2:外部主模式命令(SST89E/V52RD,54RD,58RD)深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn32说明:符号表示一个负脉冲,当PROG#/ALE输入为低电平时引入指令.
上面输入引脚所有其它组合都是无效的并且可能产生无法预料的情况.
VIL=输入低电压;VIH=输入高电压;VIH1=输入高电压(XTAL,RST);X=不必注意;AL=地址低8位,AH=地址高8位;DI=数据输入;DO=数据输出;;A[15:13]=0xxb(Block0)A[15:13]=111b(Block1).
深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn33图9-4-1:外部主模式下I/O口的分配1.
4.
1.
1产品标识Read-ID指令通过访问签名字节来辨别器件和制造商.
编程器首先用这些签名字节来选择编程算法.
Read-ID命令被选择通过在P3[7:6]和P2[7:6]上的命令码0H.
参见图4-2中时序波形表9-4-3签名字节地址数据生产厂家ID30HBFH器件IDSST89E52RDSST89V52RDSST89E54RDSST89V54RDSST89E58RDSST89V58RDSST89E516RDSST89V516RD31H31H31H31H31H31H31H31H9CH9DH9EH9FH9BH9AH92H93H1.
4.
1.
2进入命令一个进入命令序列必须在外部主机命令被单片机识别之前产生.
这防止由于外部噪音或编程器出错而意外触发外部主模式命令.
进入命令如下:1.
PSEN#变为低,当RST处于高电平时.
这将使单片机进入外部主模式,重新设置引脚、启动片上振荡器.
2.
发Read-ID命令,1mS后外部主模式命令才能被发出.
在以上序列之后,其它的外部主命令才被允许.
在Read-ID命令被接收之前,所有接收到的其它外部主模式命令都被忽略.
1.
4.
1.
3外部主模式命令的详细说明外部主模式命令有:Read-ID、Chip-Erase、Block-Erase、SectorErase、Byte-Program、Byte-Verify、Prog-SB1、Prog-SB2、Prog-SB3、Prog-SC0、Prog-SC1、Select-Block0、Select-Block1.
参见表4-1和4-2中信号逻辑分配,图4-1关于I/O引脚的分配,表4-7时序参数.
所有擦除和编程命令的典型时序都是通过片内FLASH存储器控制器产生的.
PROG#由高到低的变换初始化擦除和编辑命(内部同步).
读命令是异步读,独立于PROG#信号电平.
深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn34下面是外部主模式命令的详细描述:Select-Block0命令允许Block0在外部主模式时可被编程.
一旦这个命令被执行,所有后续的外部主模式命令都针对Block0.
参见图9-4-3时序波形图.
这个命令只用于SST89E516RD和SST89V516RD.
Select-Block1命令允许Block1(8KBlock)可被编程.
一旦这个命令被执行,所有指向地址范围低于2000H的外部主模式命令都将针对Block1.
Select-Block1命令只影响程序存储空间的低8K字节.
因为如果地址大于或等于2000H,Block0为默认访问区域.
一进入外部主模式,Block1缺省被选择.
参见图9-4-3的时序波形图.
这个命令只适用于SST89E516RD和SST89V516RD.
Chip-Erase、Block-Erase、和Sector-Erase命令用来擦除所有或部分存储器阵列.
在存储阵列中被擦除的单元被置为FFH.
在存储器中那些将要被编程的单元在编程前必须已被擦除.
Chip-Erase命令擦除两个存储块中的所有字节,不管先前的Select-Block0或Select-Block1命令.
Chip-Erase忽略加密状态并且将擦除加密锁,使器件返回到非加密状态.
Chip-Erase命令也将擦除SC0位.
一旦Chip-Erase命令完成,Block1将是被选择的块.
参见图9-4-4的时序波形图.
Block-Erase命令擦除被选中存储块中的所有字节.
如果加密允许,这个命令将不被执行.
擦除哪一存储块依赖于先前执行的是Select-Block1还是Select-Block0命令.
参见图9-4-6的时序波形图.
Sector-Erase命令擦除一个扇区内的所有字节.
扇区大小为128字节.
如果加密允许,这个命令将不被执行.
参见图9-4-7的时序波形图.
Byte-Progrm命令用来将新数据编程到存储阵列.
如果如何加密锁允许,编程将不会发生.
参见图4-8的时序波形图.
Byte-Verify命令允许用户去校验单片机是否正确执行了一个擦除或编程命令.
如果任何加密锁被允许,这个命令将不被执行.
参见图4-11的时序波形图.
Prog-SB1、Prog-SB2、Prog-SB3命令编程加密位,这些位的功能在加密锁那一节和表8-1中有说明.
一旦被编程,这些位只有通过Chip-Erase命令才能被擦除.
参见图4-9的时序波形图.
Prog-SC0命令编程SC0位,SC0位决定了复位后SFCF[0]的状态.
一旦编程,SC0只能通过Chip-Erase命令来恢复为已擦除状态.
参见图4-10的时序波形图.
Prog-SC1命令编程SC1位,它用来决定复位后SFCF[1]的状态.
一旦编程,SC1只能通过Chip-Erase命令来恢复为已擦除状态.
参见图4-10的时序波形图.
Prog-SC1只适用于SST89E58RD和SSTV554.
1.
4.
1.
4外部主模式时钟源在外部主模式,一个内部振荡器为单片机提供时钟.
在单片机进入外部主模式时,片内振荡器启动,也就是当PSEN#转为低,RST为高电平.
在外部主模式,CPU核保持在复位状态,一旦从外部主模式退出,内部振荡器被关闭.
深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn351.
4.
1.
5FLASH操作状态检测(通过外部主机握手信号)单片机提供两种方式给外部主机检测FLASH存储器操作的完成,以优化编程或擦除时间.
FLASH存储器操作周期的结束能通过如下被检测:1.
监测READY/BUSY#位--P3[3].
2.
监测Data#查询位--P0[3].
Ready/Busy#(P3[3])FLASH存储器编程的过程可通过Ready/Busy#的输出信号来检测.
在FLASH存储器操作期间,在ALE/PROG#转为低之后一段时间,P3[3]被驱动为低,指明Flash控制单元(FCU)处于Busy#状态.
当FLASH编程操作完成时,P3[3]被驱动为高,来指明处于等待状态.
数据查询(P0[3])在一个编程操作期间,当器件忙时,任何读的企图(Byte-Verify)将接收到最后装载在P0[3]上字节的数据的完成(逻辑低,也就是'0'-erase).
在编程操作期间,Byte-Verify命令读的是装入的最后一字节,不是指定地址的数据.
1.
4.
1.
6逐步执行指令来实现外部主模式命令把数据编程进存储器阵列,提供的电源(VDD)到VDD和RST引脚,并执行如下步骤:1.
保持RST为高,将PSEN#由逻辑高置为低,根据相应的时序图来依次完成.
2.
将EA#拉升为高电平(VIH).
3.
发出Read-ID命令允许外部主模式.
4.
校验将要编程的存储块或扇区处于已擦除状态,FFH.
如果没被擦除,用相应的擦除命令擦除它们.
5.
选择存储器地址,用地址线(P3[5:4],P2[5:0],P1[7;0]).
6.
当前须写入的数据放入P0[7:0]7.
发脉冲到ALE/PROG#,遵守最小脉冲宽度.
8.
等待READY/BUSY#由低转为高9.
重复步骤5-8直到编程完毕.
10.
校验FLASH存储器的内容.
深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn361.
4.
1.
7FLASH存储器编程时序框图在外部主模式下器件ID=92H(SST89E516RD)93H(SST89V516RD)9BH(SST89E58RD)9AH(SST89V58RD)图9-4-2:Read-ID读芯片签名和识别寄存器在指定的地址(Readchipsignatureandidentificationregisterattheaddressedlocation)图9-4-3:Select-Block1/Select-Block0选择存储器两个块中的任何一个,在执行Byte-Verify,Block-Erase,Sector-Erase或深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn37Byte-Program命令前.
这些命令仅适用于SST89E516RD和SST89V516RD.
图9-4-4:Chip–Erase(芯片擦除)擦除两个FLASH存储块,加密锁忽略,加密位也被擦除图9-4-5:Block–EraseforSST89E/V516RD(块擦除)擦除一个存储块,如果这一存储块的加密锁不被激活.
深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn38图9-4-6:块擦除Block-Erase(SST89E/V52RD,54RD,58RD)擦除一个存储块,如果这一存储块的加密锁不被激活.
图9-4-7:Sector-Erase(扇区擦除)擦除指定扇区,如果这一存储块的加密锁不被激活.
深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn39图9-4-8:Byte-Program(字节编程)编程指定代码字节,如果这个字节单元被成功擦除并且没有被编程.
当那个FLASH存储块上的加密锁没有被激活时,字节编程才能被允许.
图9-4-9:PROG-SB1/PROG-SB2/PROG/SB3分别编程加密位SB1、SB2和SB3.
只有CHIP-ERASE能擦除可编程的加密位.
深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn40图9-4-10:PROG-SC0/PROG-SC1编程起动配置位SC0/SC1.
只有Chip-Erase才可擦除编程的SC0/SC1位.
Prog-SC1仅适用于SST89E58RD和SST89V58RD.
图9-4-11:Byte-Verify(字节校验)从FLASH存储器中的指定地址读代码字节,如果那一存储块的加密锁没有被激活.
深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn411.
4.
2IAP模式(In-ApplicationProgrammingMode)单片机提供72K或40K字节的在应用可编程的FLASH存储器.
在IAP方式,微控制器的CPU进入IAP模式.
FLASH存储器的两个块允许CPU从一个块中执行用户代码,而同时另一个块被擦除或重新编程.
当所有内部FLASH正在被重新编程时,CPU也可从外部存储器取代码.
在特殊功能寄存器中的邮箱寄存器(SFST,SFCM,SFAL,SFAH,SFDT和SFCF)控制和监测器件的擦除和编程过程.
表9-4-6概述了这些命令和相关邮箱寄存器的设置.
1.
4.
2.
1IAP模式时钟源在IAP模式下,CPU和FLASH控制单元关闭了外部时钟,由内部振荡器为编程和擦除操作提供时钟参考.
内部振荡器只有在需要时才启动,FLASH操作完成时就立即关闭.
1.
4.
2.
2存储块选择(IAP模式下)寻址范围限制在16位,仅64K字节程序地址空间是可见的,在任何时候.
如表4-4所示,块选择(EA#和SFCF[1:0]的配置)允许Block1覆盖Block0的低8K字节,使Block1可寻址.
同样的概念被使用,允许Block0和Block1对IAP操作来说可进行.
来自一个不可见块内的代码不能作为一个源去编程另一个地址.
然而,一个不可见的块可以被另一个块的代码通过邮箱寄存器来编程.
器件允许一个块内的IAP代码去编程另一个存储块,但不能在同一个块内编程任何单元.
如果一个IAP操作物理上从Block1开始,那么这个操作的目的地址隐式的定义为Block0.
如果一个IAP操作物理上从Block0开始,那么这个操作的目的地址隐式的定义为Block1.
如果一个IAP操作从外部程序空间开始,那么它的目标地址将由块选择的状态和地址来决定.
1.
4.
2.
3IAP允许位IAP允许位,SFCF[6],允许IAP模式.
只有该位置'1',所有的FLASH编程IAP命令才会被执行.
1.
4.
2.
4IAP模式命令所有下面的命令只能在IAP模式下被初始化.
在任何情形下,写控制字到SFCM寄存器中将初始化所有的操作.
如果加密锁对选择的块使能,则所有的命令都被禁止.
编程命令用来编程新数据到存储器阵列.
存储阵列中将被编程的部分应该处于已擦除状态:FFH.
如果存储器没有被擦除,首先调用相应的擦除命令擦除.
警告:不要企图从一个深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn42块中取代码又要写这个块,它将产生不可预料的编程行为和破坏程序数据.
Block-Erase命令擦除两个存储块中任何一个块的所有字节.
被擦除存储块的选择由Block-Erase命令的源来决定.
如表9-4-4中所定义.
表9-4-4IAP地址分配(SST89E516RD和SST89V516RD)EASFCF[1:0]IAP指令的地址目标地址被编程的块100>=2000H(Block0)>=2000H(Block0)无1100>=2000H(Block0)=2000H(Block0)无101,10,11任何一个(Block0)=2000H(Block0)Block0000从外部12MHz18-22pF200Ω关于片内振荡器的更多详细信息在《FlashFlex51振荡器电路设计应用说明》中可找到.
使用片内振荡器外部时钟启动图9-9-2:振荡器特性1.
11电气规格绝对最大承受值(如果超过下表所列的"绝对最大承受值"可能对器件造成永久性的损害.
将器件暴露在绝对最大承受条件下可能影响器件的可靠性.
)操作温度…55℃~+125℃保存温度…65℃~+150℃EA#到VSS电压…0.
5V~+14.
0V其它引脚到VSS的瞬时电压(100Pf),ALE上的干扰脉冲可能超过0.
8V.
在这种情况下,最好做法是在ALE端接一触发器,或者用一带一触发器的地址锁存器起滤波作用.
3.
在P1、ALE、PSEN#上接入一值为100pF的电容,所有其它输入端接入一值为80pF的电容.
4.
当地址位稳定后,加在P0、P2上的电容可能引起ALE和PSEN#上的电压即刻下降为VDD-0.
75.
当P1、P2、P3由外部驱动从1变为0时,将产生一个转换电流.
当VIN达到2V时,转换电流将达到它的最大值.
6.
引脚电容量是表现出来的而不是测量出来的.
EA#最大是25pF.
7.
参考图9-10-1、9-10-2、9-10-3和9-10-4中的测试环境.
在掉电状态下VDD最小为2.
0V.
图9-11-1:IDD测试条件:ACTIVE模式图9-11-2:IDD测试条件:Power_Down模式深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn63图9-10-3IDD测试条件:IDLE模式1.
11.
4AC电气特性AC特性(在下列条件下:在P0、ALE、PSEN#上接入一值为100pF的电容,所有其它输出端接上一值为80pF的电容)表9-11-5:AC电气特性Tamb=0℃~+70℃或-40℃+85℃,VDD=2.
7~3.
6@25MHz,4.
5~5.
5@40MHz,VSS=0V.
深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn64表9-11-5:AC电气特性深圳好记芯电子有限公司TEL:0755-86100886FAX:0755-86100961www.
superflash.
cn65Tamb=0℃~+70℃或-40℃+85℃,VDD=2.
7~3.
6@25MHz,4.
5~5.
5@40MHz,VSS=0V.
1.
11.
5AC特性符号说明每个时序符号有5个特征,第一特征是一个'T'(代表时间).
其它特征根据所在位置代表信号名称或信号的逻辑状态.
下面列出了所有的特征及它们所代表的意思.
pacificrack怎么样?pacificrack商家发布了七月最新优惠VPS云服务器计划方案,推出新款优惠便宜VPS云服务器采用的是国产魔方管理系统,也就是PR-M系列,全系基于KVM虚拟架构,这次支持Windows server 2003、2008R2、2012R2、2016、2019、Windows 7、Windows 10以及Linux等操作系统,最低配置为1核心2G内存1Gbps带宽1...
提速啦的来历提速啦是 网站 本着“良心 便宜 稳定”的初衷 为小白用户避免被坑 由赣州王成璟网络科技有限公司旗下赣州提速啦网络科技有限公司运营 投资1000万人民币 在美国Cera 香港CTG 香港Cera 国内 杭州 宿迁 浙江 赣州 南昌 大连 辽宁 扬州 等地区建立数据中心 正规持有IDC ISP CDN 云牌照 公司。公司购买产品支持3天内退款 超过3天步退款政策。提速啦的市场定位提速啦主...
mineserver怎么样?mineserver是一家国人商家,主要提供香港CN2 KVM VPS、香港CMI KVM VPS、日本CN2 KVM VPS、洛杉矶cn2 gia端口转发等服务,之前介绍过几次,最近比较活跃。这家新推出了洛杉矶CN2 GIA VPS,512MB内存/20GB NVME/800GB流量/200Mbps/KVM,58元/季,并且进行了带宽升级,同时IP更改为美国IP。点击...