融雪剂厂家
免费服务热线

Free service

hotline

010-00000000
融雪剂厂家
热门搜索:
技术资讯
当前位置:首页 > 技术资讯

AT89S5X脱机下载器制作

发布时间:2020-06-30 19:02:42 阅读: 来源:融雪剂厂家

最近因工作需要,准备自已做一个AT89S5X的脱机下载器,初步考虑是用AT89S52做主机,将目标代码通过串口写入到AT24C64中(AT24C64有8K空间,刚好够52用)。到现场后再通过主机将EEPROM中的代码能过模拟ISP时序写入到目标单片机上,实现脱机下载。

在画原理图前,打算先将S5X的ISP时序搞清楚,刚开始啃英文文档时,内牛满面啊。。。那啥,把高位发送看成了低位发选。。。整整搞了两天都没发觉。。因为AT的文档中关于ISP说的不清不楚的(至少在我看来是这样的),后来上网搜了USBASP的源程序,参考了里面的关于S5X的ISP时序,才终于明白过来。。。下面是关于S5X的ISP时序编程中一些要点:

1:关于复位时序

RST = 1;SCK = 0;DELAY(1);RST = 0;//这里要注意,有一个拉低过程DELAY(1);RST = 1;DELAY(1);

2:连机检测,判断是否进入到ISP编程模式

ISP_WR(0XAC);ISP_WR(0X53);ISP_WR(0X00);TempData[3]=ISP_WR(0X00);//第四个字节边写边读出数据如果是0X69,则说明进入

到了ISP模式

3:关于读识别字,在没有测试擦除(Erase)命令前,刚读出来的数据是正常的(1E 52 06),后来在测试擦除命令时,怀疑擦除延时时间太短,杯具了。。。读出来的值一直是1F 7F 1F。。。

ISP_WR(0X28);ISP_WR(0X00);ISP_WR(0X00);TempData[0] = ISP_WR(0X00);//1E

ISP_WR(0X28);ISP_WR(0X01);ISP_WR(0X00);TempData[1] = ISP_WR(0X00);//52

ISP_WR(0X28);ISP_WR(0X02);ISP_WR(0X00);TempData[2] = ISP_WR(0X00);//06

4:关于擦除(Erase)命令,网络上搜到的延时是500MS左右,具体的我还没测试,等整个程序功能都完善了再测试确定各个延时参数。

5:关于ISP各个引脚连接:

MOSI:主机出 从机入

MISO:主机入 从机出

SCK/RST:这个应该就不用说了

沈阳防静电工作服订制

太原工作服订制

莱芜制做防静电工服