吴师傅C51互动空间 https://bbs.21ic.com/?798933 [收藏] [复制] [RSS] 单片机初学者的学习园地,C语言入门者的交流平台,C51编程晋级的互动空间。。。

日志

AT89LP系列单片机编程器

已有 2920 次阅读2014-3-5 11:05 |系统分类:单片机| AT89LP单片机, 编程器, Atmel

一.WSF-USBISPV3编程器简介
WSF-USBISPV3编程器是WSF-USBISP下载线的升级版,功能更全,速度更快,下载更稳定,支持的芯片更多。为吴师傅工作室独家研发产品,其配套软件AT89LPISP软件也是吴师傅工作室开发,适用于Atmel AT89S系列和AT89LP系列单片机在线编程。编程器通过USB电缆与PC机连接,使用10P灰排线与目标板进行SPI通信。编程器不仅具有可在线编程功能还具有电源线供电功能,有5V3.3V两种软件选择编程电压,实现编程器和电源线合二为一,无需外部电压,让您的目标板使用起来更加简洁、方便。是您使用笔记本电脑开发Atmel  LP系列单片机的首选开发工具。如图:
















二.WSF-USBISPV3编程器软件支持
支持软件:AT89LPISP。该软件在VS2010集成开发环境下采用C#语言编写,编程功能齐全,操作简单,运行稳定。软件界面如下图:





三.WSF-USBISPV3编程器支持器件
AT89S51AT89S52AT89LS51AT89LS52AT89S8253AT89S2051AT89S4051AT89LP51AT89LP52AT89LP2052AT89LP4052AT89LP213AT89LP214AT89LP216AT89LP428AT89LP828AT89LP3240AT89LP6440AT89LP51RB2AT89LP51RC2AT89LP51IC2AT89LP51RD2AT89LP51ED2AT89LP51ID2





四.WSF-USBISPV3编程器性能
外形尺寸:70mm×45mm
输入电压:USB DC5V500mA过流保护。
输出电压:DC5V 500mADC3.3V 800mA 两种软件选择电压。
USB通信波特率:115.2kbit
SPI时钟频率:230.4KHZ
编程速度:下载65536字节代码(64K Byte)只需18秒钟。
10P排线长度:200mm—300mm为最佳。
五.WSF-USBISPV3编程器接口定义
WSF-USBISPV3 编程器10P接口定义采用官方接口标准定义,如图:







六.WSF-USBISPV3编程器驱动程序安装
1.安装USB驱动程序


编程器在使用之前应当在PC机上安装FT232RL通信芯片的USB驱动程序,否则不能使用。FT232RL通信芯片的USB驱动程序可以从FT232RL通信芯片生产商FTDI官方网下载。官方网提供两种安装方式:硬件向导安装和应用程序包安装。应用程序包的名称是CDMXXXXX_Setup.exe,其中XXXXX是版本号。使用应用程序安装包来安装驱动程序很简单,需要两次用鼠标左键双击CDMXXXXX_Setup.exe应用程序图标,只需几秒钟即可完成安装。硬件向导安装方式也比较简单,先从官方网下载驱动文件,将解压后的文件统一放入一个文件夹,然后选择PC机的一个USB接口插入WSF-USBISPV3编程器,就会跳出“找到新硬件向导对话框”,在对话框里选择“从列表或指定位置安装(高级)”,点击“下一步”按钮,在对话框里点击“浏览”按键,找到您的驱动文件夹,再点击“下一步”按钮,硬件向导便进入USB驱动程序的安装,安装完成后点击“完成”按钮即可。如果您要更新驱动,请使用硬件向导安装方式。


2.确认端口号


驱动程序安装完成后,将WSF-USBISPV3编程器接入PC机的任意一个USB口上,PC机就能识别编程器了。编程器连接的USB接口在PC机上是以虚拟串口存在的。如果PC机是第一次安装驱动程序,编程器插入后默认的端口号是COM3。查看的端口号的方法是:右键点击桌面“我的电脑”—>管理—>设备管理器—>端口,在列表中就能找到编程器连接的端口了,如:USB Serial Port (COM3)。拔出编程器后,端口号就会在列表里消失。使用AT89LPISP软件编程芯片的时候需要选择正确的通信端口方可正常编程。



七.编程操作
入门操作:
首先:


PC机上安装AT89LPISP 软件和FT232RL 芯片驱动软件,用10P排线将WSF-USBISPV3编程器和目标板连接好,用USB电缆将WSF-USBISPV3编程器和PC机连接起来。这时PC机自动安装驱动程序,安装完成之后,在“设备管理器”的“端口”上多了一个虚拟串口,这就是编程用到的端口,记住端口号。


然后:


第一步:打开AT89LPISP软件,在“端口”组合框里选择刚才看到的端口号。


第二步:在“芯片”组合框里选择目标板的芯片型号。


第三步:点击一下“读ID/复位”按钮,如果目标板的芯片和连接线没有问题,就可以看到显示正确的ID值(和芯片DATASHEET里列出的ID一致),编程提示栏提示“读ID完成!”如果弹出“编程出错”的对话框,说明目标板的芯片和连接线有问题;如果弹出“编程器没有响应!”的提示,说明端口选择不正确。


第四步:读ID正常的话,就可以进行下一步编程了:加载程序文件(点击“文件”-->“加载程序(FLASH HEX文件”-->找到hex文件-->打开),程序代码就会加载到缓冲区,然后点击“写入flash”按钮,程序代码就会逐个字节地写入目标板的单片机里。


最后:


程序已经写到单片机里去了,是不是目标板没有反应?原因是还没有配置芯片三态IO口的熔丝位。以AT89LP51XXX为例,先执行“读熔丝配置”,把芯片默认的配置读出来,然后在熔丝配置的0B地址(注意:每种芯片的熔丝地址对应的熔丝功能都不一样)把FF改为00,然后执行“写熔丝配置”,该芯片的IO口就配置为双向IO口了,和普通51单片机的IO口一样。一般普通51单片机的程序(除了涉及内部模块的操作,如串口、定时器等)不用修改任何代码就能直接在LP系列单片机上运行。



熟练操作须知:
(1).写入Flash:这过程自动完成了两个编程操作:先擦除芯片然后再写入Flash程序代码,所以,执行写入Flash编程会导致数据存储区和用户签名区的数据被擦除。应该先执行写入Flash编程,然后再执行写入DATA和写用户签名编程。


(2).擦除:一旦执行擦除编程,芯片的程序存储区、数据存储区和用户签名区(除了最后一页),这些区域里面的数据同时全部擦除!


(3).读出Flash编程:将整个Flash区里的数据全部读出。如果芯片已经加密了读出来的数据全为0xFF


(4).ID/复位:把芯片内的Atmel公司的签名读出来,也可以用来复位目标板。


(5).读熔丝配置:将芯片当前的熔丝配置读出来。


(6).写熔丝配置这是一个比较麻烦的编程操作,切记,不能盲目配置熔丝!写熔丝配置之前,最好抽点时间好好看芯片DATASHEET里的熔丝说明,了解每个熔丝的作用,再来编程,编程的时候一定要慎之又慎,千万千万不要把ISP功能给禁止了,否则你的芯片就作废了!建议操作过程是先执行“读熔丝配置”,把原来的配置读出来,再更改熔丝值,然后执行“写熔丝配置”。大部分芯片熔丝配置写入以后需要给目标板断电再重新上电,新的熔丝配置才生效。记住,芯片加密以后写熔丝配置无效!芯片加密以后如果要改变熔丝配置,只有执行擦除编程或者再次执行写入Flash编程后才能重新配置熔丝(其中某些芯片擦除后还需要断电再上电,才可以重新配置熔丝,如AT89LP428/828)。


(7).加密:这个编程操作很厉害,一定要先执行了写熔丝配置、写入Flash、写入DATA、写签名等编程完成之后,最后再执行加密编程。编程之前也需要先看看芯片DATASHEETLockBit的编程说明。芯片一旦加密了,读出来的FlashDATA数据全部为0xFF。而且,除了写入Flash编程,其他的写编程都是无效的。


(8).写入DATA:类似写入Flash编程,但是如果芯片已经加密了,执行写入DATA编程无效。所以,要在执行写入Flash编程之后,在执行加密编程之前执行该编程。


(9).读出DATA:把整个DATA区的数据读出来。如果芯片已经加密了,读出DATA数据全为0xFF


(10).写用户签名:写签名之前要确保写签名的熔丝位处于使能状态,否则写签名无效。特别注意:用户签名区的最后一页是存放内部RC振荡器的修正数据,芯片出厂时这些数据已经配置好,所以本软件不允许对用户签名区的最后一页编程!所以写签名的时候会发现,软件提示的用户签名空间和芯片DATASHEET里规定的空间大小不一致。在文本框输入你想写入芯片的字符串(用户签名区只允许写入第30号到第126号的常用ASCII字符,没有写入字符的区域保持芯片擦除后的数据0xFF),然后执行写入签名编程就可以了。如果芯片已经加密了,执行写签名编程无效。所以,要在执行写入Flash编程之后执行加密编程之前执行该编程。


(11).读用户签名:直接执行读签名编程就可以了。读出的数据是用户签名区最后一页之前的数据,而且数据也是做了过滤处理,只有第30号到第126号的常用ASCII字符才能显示。


(12).其他编程:太简单了,略。


八.使用注意和问题处理
1.编程器支持热拔插,在连接PC机的USB接口后,三个指示灯常亮1.5秒后,通信指示灯和编程指示灯熄灭。如果连接PC机的USB接口后指示灯不亮或,请反复拔插测试,如果不起作用说明PC机的USB接口损坏或编程器损坏,根据具体情况处理。正常编程时三个指示灯均亮,编程结束通信指示灯和编程指示灯熄灭。   
2.编程器正在编程时,如果突然人为中断(如拔出10P排线),编程器就会进入等待信号的死循环,此时需要拔出编程器,然后再次连接,让编程器复位,还要在下载软件上重新选择通讯端口,否则编程时下载软件会报错。


3.正在编程的时候,请不要触碰、移动编程器和目标板,以免连线松动造成通信数据出错。


4.提示编程出错的原因:


这是目标板的硬件问题,包括芯片型号不符、芯片损坏、芯片ISP连接电路错误、ISP电缆未连接目标板、目标板没有供电、芯片ISP功能已被禁止、芯片时钟源为外部时钟但又未提供外部时钟等,视情况处理。


5.提示编程器没有响应原因:


(1).端口选择不正确,请重新选择端口。


(2). 编程器因前次编程中断而进入等待上位机信号的死循环。重新拔插编程器的USB接口,让编程器复位,然后在软件上重新选择端口即可。


6.端口选择正确,但还提示端口不存在或被占用的原因:


USB接口接触不良。重新拔插编程器的USB接口,然后在软件上重新选择端口即可。


7.软件死机原因:


因芯片损坏或人为中断下载,软件进入等待编程器信号的死循环。这种情况下需要在任务管理器结束进程才能退出软件。退出软件后还要重新拔插编程器的USB接口,让编程器复位,才能继续编程。




九.AT89LPISP软件的安装和使用
太简单了,略。


十.单片机编程电路和最小系统电路示例
1.AT89S系列单片机:





AT89S系列单片机均为高电平复位,WSF-USBISPV3编程器的SS引脚悬空不用。下面以AT89S51/52单片机为例,S系列的其他单片机请参照这个电路设计。


2.AT89LP2052/4052单片机:





AT89LP2052/4052系列单片机为高电平复位。芯片具有上电自动复位和掉电自动复位功能,无需外部复位电路。



3.AT89LP213/214/216/428/828/3240/6440单片机:






AT89LP213/214/216/428/828/3240/6440单片机为低电平复位。芯片具有上电自动复位和掉电自动复位功能,无需外部复位电路。下面以AT89LP3240/06440单片机为例,其他单片机请参照这个电路设计。


注意:AT89LP3240/6440芯片,工作电压范围是2.4-3.6V,所以,只能使用3.3V编程电压。



4.AT89LP51/51RB2/51RC2/51IC2/51RD2/51ED2/51ID2单片机:




AT89LP51/51RB2/51RC2/51IC2/51RD2/51ED2/51ID2单片机既可以配置为高电平复位也可以配置为低电平复位,通过POL管脚来设定:当POLVCC时,为高电平复位;当POLGND时,为低电平复位。芯片具有上电自动复位和掉电自动复位功能,无需外部复位电路。








路过

鸡蛋

鲜花

握手

雷人

评论 (0 个评论)