发表于:2005-06-15 11:50:00
5楼
模式 RST PSEN ALE/PROG EA/Vpp P2.6 P2.7 P3.3 P3.6 P3.7
写代码数据 H L 负脉冲 12V L H H H H
读代码数据 H L H H L L L H H
写锁定位LB1 H L 负脉冲 12V H H H H H
写锁定位LB2 H L 负脉冲 12V H H H L L
写锁定位LB3 H L 负脉冲 12V H L H H L
读锁定位 H L H H H H L H L
片擦除 H L 负脉冲 12V H L H L L
读标志字节 H L H H L L L L L
AT89x5x系列单片机Flash Rom编程
注 1.读锁定位与P3.3引脚适用AT89S系列。
2. AT89C/LV负脉冲宽度为110us;AT89C/LV片擦除负脉冲宽度为10ms。
AT89S/LS负脉冲宽度为1us;AT89S/LS片擦除负脉冲宽度为1us。
一.编程算法:
1. 编程前先配置引脚电平,EA/Vpp引脚电压升至12V。
2. 在地址线上输入所需要的存储器单元地址。
3. 在数据线P0上输入所需要的数据字节。
4. 在ALE/PROG端口输入一负脉冲(1us),每次编程一字节或锁定位。写入周期是片内自动定时的,AT89S周期为50us,AT89C/LV周期为2ms。
5. 重复步骤2—4,改变存储器单元对应的地址和代码数据,直至整个文件编程完成。
二.“准备就绪/忙“信号
ALE/PROG端的负脉冲变高以后1us,P3.0(AT89C/LV为P3.4)引脚输出低电平,表示正在编程,编程结束输出高电平。AT89S周期为50us,AT89C/LV周期为2ms。
三.编程校验
如果锁定位没被编程,从数据总线上可读出相应的字节代码,AT89S系列锁定位的状态也可被读出来,读出的锁定位LB1=P0.2,LB2=P0.3,LB3=P0.4
四.读标志字节
读标志字节的过程与编程校验的过程相同。
89C5X/LV5X标志字节单元:030H,031H,032H;
89S5X/LS5X标志字节单元:000H,100H,200H;
AT89Cx051系列单片机Flash Rom编程
模式 RST/Vpp P3.2/PROG P3.3 P3.4 P3.5 P3.7
写代码数据 12V 负脉冲 L H H H
读代码数据 H H L L H H
写锁定位 LB1 12V 负脉冲 H H H H
LB2 12V 负脉冲 H H L L
片擦除 12V 负脉冲 H L L L
读标志字节 H H L L L L
注 1. 89CX051标志字节:000H,001H;
2.片内地址计数器在RST脉冲上升沿将其复位为000H,XTAL1引脚的一个正脉冲(200ns)使计数器加一,指向下一个地址单元。
3.片擦除负脉冲宽度10ms;
一.编程算法:
1.编程前先将RST和XTAL1接低电平。
2.RST与 P3.2接H,RST脉冲上升沿将其复位为000H。
3.使控制信号有效。
4.在数据线P1上输入000H单元所需要的数据字节
5.EA/Vpp引脚电压升至12V。
6.在ALE/PROG端口输入一负脉冲(110us),每次编程一字节或锁定位。写入周期是片内自动定时的,典型值2ms。
7.在XTAL1上施加一正脉冲,地址计数器加1,在数据线P1上输入新的数据字节
8.重复步骤6—7,改变存储器单元对应的地址和代码数据,直至整个文件编程完成。
9.断电顺序为使XTAL1和RST接L,断电Vcc。
二.“准备就绪/忙“信号
ALE/PROG端的负脉冲变高以后50us,P3.1引脚输出低电平,表示正在编程,编程结束输出高电平。周期为2ms。
三.编程校验
如果锁定位没被编程,从数据总线上可读出相应的字节代码。锁定位的状态不可被读出。
四.读标志字节
读标志字节的过程与编程校验的过程相同。