欢迎来到天天文库
浏览记录
ID:33189358
大小:514.50 KB
页数:6页
时间:2019-02-21
《at89s52单片机在线系统编程isp》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、AT89S52单片机在线系统编程ISP(InSystemProgramming)学习之一并行模式下编程最近开始在学习AT89S5x系列单片机的在线编程功能。原因有二:一是之前欲给单片机下载程序时必须把单片机芯片从实验板拔下,下完后又要装上,既损芯片又麻烦;二是进一步学习单片机硬件结构,了解其内部程序存储器编程的原理。之前听人讲C5x系列的不能在线编程,其实不然。只是没有S5x系列的方便,因为S5x系列的单片机额外添加了8k在系统可编程(即ISP)Flash存储器,特意设计为方便在线编程,使得其下载线
2、电路简单,且可实现并行和或者串行模式的在线编程。而C5x只能在并行模式下,且所需引脚多,信号复杂,下载线电路繁琐。因此用C5x的同志只能用专业编程器下载程序(贵也没办法)。下面较为详细地介绍89S52的并行模式下的Flash在线编程技术。《并行模式下的Flash在线编程》并行编程算法:在给AT89S52编程之前,应先按照FLASH编程模式表和图13、14设置地址、数据和控制信号。AT89S52的编程可按如下几步进行:1. 在地址线上输入所期望的存储单元。2. 在数据线上输入正确的数据字节。3
3、. 触发适当的控制信号组合。4. 将EA/Vpp提升到12V。5. 每给ALE/PROG一次脉冲,向FLASH阵列或锁定位中写入一个字节。字节写周期由自己设定,一般不超过50us.重复第1到第5步操作,不断改变地址和数据直到目标文件结束为止。数据查询DataPolling:AT89S52具备通过数据查询来检测字节写周期的结束的特性。在一个写周期里,若试图读取刚写入的字节,则将在P0.7引脚上得到写入数据的补码。一旦写周期已经完成,所有输出上讲出现刚写入的真实数据,接着下个循环开始。数据查
4、询可在写周期启动后的任何时候开始。准备好/忙Ready/Busy:字节编程的进程也可以由RDY/BSY输出信号来检测。编程期间在ALE升为高电平后P3.0被拉低,表示(BUSY),编程完成后P3.0又被拉高表示(READY)。程序校验:如果锁定位LB1和LB2未被编程,则被编程的代码数据可以通过地址线和数据线读回用以校验。相互独立的锁定位的状态也可以直接通过读回得到检验。读特征字节:……芯片擦除:在并行编程模式下,芯片擦除操作通过使用正确的控制信号组合,并保持ALE/PROG引脚处于低电平200ns
5、-500ns来完成。在串行编程模式下,芯片擦除操作通过发送芯片擦除指令来实现。在这种模式下,芯片擦除是自己设定的,大概为500ms。在芯片擦除操作中,利用串行口从任意地址单元读出的数据都是00H。下面是利用并行口实现的自制在线编程器的下载接线图。(网络资料,感谢原创者)--------------------------------------------------用VB编写的一个程序,适合于89SC51,89SC52单片机的程序的ISP方式下载。ISP下载方式的优点是可以在线编程,直接把程序下载
6、到单片机目标版上,特别适合做实验的朋友,无须频繁地插拔芯片,省时省力。软件下载地址:http://www.01on.com/51.rar下载线电路下载线实物下载线与单片机目标板连接
此文档下载收益归作者所有