AT895X 2051芯片程序使用说明
- 格式:pdf
- 大小:616.77 KB
- 文档页数:5
AT89C2051烧写器的制做与调试的经验采用的就是上面的图。
E51Pro V2.0宇宙版的软件。
我是分成两块板制作,一块就是MAX232电路,上图左下角。
网上买的贴片SO16 MA232,制板焊接,通电,12V电压端只有几伏,芯片发热,仔细检查电路没有什么问题,换另一块芯片,还是不行,一共换了5块,只有一块能输出12V,但是不稳定,有时行有时不行。
上网查,说是山寨的多,质量不过关。
又从另一家网购的DIP 16直插芯片,重新制板,电容按说明书全换成1UF 50V的独石,还是不行。
网上说电荷泵瞬间电流大,分析电源(手机充电器)可能不好,换另一个电源,又在16脚串联一只2R电阻,总算出来12V 电压了。
+9V、-9V也有了。
做电路其余部分的板子,焊接,按步骤调试。
12V又不对了。
看来MAX 232国产假货太多了。
于是用MC34063升压电路提供12V电压。
重新调试,12V 电压正常,三只三极管切换电路正常。
给AT89S51输入HEX 文件,安装上AT89S51(可用S52、STC89C 52等代替)、AT89C2051,DB9插到电脑串口上,提示找不到器件,检查电路,发现有焊接错的地方,因为为了省板,飞线多。
改正之后,能检测到元件,特征字1E 21 FF ,对了。
试着录入那个点亮LED 的程序的HEX 文件。
校验提示34个错误,反复几次都是如此。
百思不得其解,上网查也得不到答案。
陷入了迷茫------查看上位机软件中的缓存1、2,1是保存录入程序的16进制文件,2是从2051单片机中读出的数据。
最左边是地址,每行8个16进制代码。
发现只有头3个代码是一样的,往下都是FF,一直到0800这个地址,往后就不一样了,1中是源数据,2中则是FF 。
几十个数据都不一样。
本人编程知识有限。
唯有再三分析,上网查找资料,甚至研究了源程序代码,学习了HEX 文件结构,排徐各种可能,在一个安静的清晨,在手机页面上看了一篇文件,说是HEX 转换为BIN 文件有可能变得很大,突然意识到那个0800地址问题。
如何使用和检测89C2051单片机AT89C2051 是爱特梅尔(ATMEL 公司AT89 系列的与AT89C51 相比,有良好的延续性,仅减少了存储容量和I/O 端口,其余配置与性能不减,是性能价格比最好的8 位单片机。
1)特性a)指令与MCS-51 100%兼容b) 内带2k 可编程闪速存储器(Flash Memory)c)电可擦写次数:1000 次d)数据保留时间:10 年e)工作电压范围Vcc:2.7-6V f)编程电压:5V g)16位定时器/计数器2 个h)中断源5 个i)可编程串行通道VART j)工作频率:0-24MHZ k)输出口可直接驱动LED 。
l)片内含模拟比较器m)低功耗的闲置和掉电模式n)标准的双列直插(DIP)2O 脚塑封0)15 条可编程双向I/0 端口2)引脚排列AT89C2051 的引脚排列如图1 所示。
图1 AT89C2051 的引脚排列如图2 所示是AT89C2051 的最小应用系统,对一般程序不是很大的场合这种电路是非常简洁方便的。
图2AT89C2051 最小应用系统检测AT89C2051 可用指针式万用表电阻检测管脚(10)(接红表笔)和其他各脚之间的电阻值。
下面给出的是用MF47 万用表Rx1k 档时测出的数据供参考。
红表笔接(10)脚,黑表笔接其余各脚的电阻值:(1)一30OkΩ、(2)一2OkΩ、(3)一2OkΩ、(5)一1OOkΩ、(6)一30OkΩ、(7)一2OkΩ、(8)一2OkΩ、(9)一2OkΩ、(10)一2OkΩ、(11)一2OkΩ、(12)一40kΩ、(13)一40kΩ、(14)-2OkΩ、(15)一16OkΩ、(16)一16OkΩ、(17)一2OkΩ、(18)一。
T89C2051是精简版的51单片机,精简掉了P0口和P2口,只有20引脚,但其内部集成了一个很实用的模拟比较器,特别适合开发精简的51应用系统,毕竟很多时候我们开发简单的产品时用不了全部32个I/O口,用AT89C2051更合适,芯片体积更小,而且AT89C2051的工作电压最低为2.7V,因此可以用来开发两节5号电池供电的便携式产品。
本文以ATMEL公司生产的51系列家族的AT89S51和AT89C2051两种单片机来讲解,两种单片机是目前最常用的单片机,其中 AT89S51为标准51单片机,当然其功能比早期的51单片机更强大,支持ISP在系统编程技术,内置硬件看门狗。
一、AT89S51单片机引脚介绍AT89S51有PDIP、PLCC、TQFP三种封装方式,其中最常见的就是采用40Pin 封装的双列直接PDIP封装,外形结构下图。
芯片共有40个引脚,引脚的排列顺序为从靠芯片的缺口(见右图)左边那列引脚逆时针数起,依次为1、2、3、4。
40,其中芯片的1脚顶上有个凹点(见右图)。
在单片机的40个引脚中,电源引脚2根,外接晶体振荡器引脚2根,控制引脚4根以及4组8位可编程I/O引脚32根。
1、主电源引脚(2根)VCC(Pin40):电源输入,接+5V电源GND(Pin20):接地线2、外接晶振引脚(2根)XTAL1(Pin19):片内振荡电路的输入端XTAL2(Pin20):片内振荡电路的输出端3、控制引脚(4根)RST/VPP(Pin9):复位引脚,引脚上出现2个机器周期的高电平将使单片机复位。
ALE/PROG(Pin30):地址锁存允许信号PSEN(Pin29):外部存储器读选通信号EA/VPP(Pin31):程序存储器的内外部选通,接低电平从外部程序存储器读指令,如果接高电平则从内部程序存储器读指令。
芯片实物图片芯片引脚功能4、可编程输入/输出引脚(32根)AT89S51单片机有4组8位的可编程I/O口,分别位P0、P1、P2、P3口,每个口有8位(8根引脚),共32根。
ATMEL89S5X ISP下载器
使用说明
1.0 AT89S 下载电缆各引脚说明如下
1.1 硬件安装:
把ISP下载线的一端接计算机的并口,另一端接用户板的ISP插座。
1.2 软件安装:
把光盘中的“AT89ISP下载软件”直接拷贝到计算机硬盘中,无须安装。
1.3 使用方法:
(1)点击“AT89ISP下载软件”目录下的“ISPLAY”图标
(2)出现如下窗口
(3)点击上面窗口中的“程序设置”出现以下窗口,进行“下载线配置文件”设置
(4)选择配置文件“ALtera_BYTEBLAST”
(5)并口IO设置
并口I/O 地址:用16 进制数填写。
该地址可以在CMOS 设置中设置,也可以在Windows的硬设备管理器中查看,如下图
(6)每次设置“并口I/O 地址”或“下载线配置文件”后,重新启动本应用程序后才能生效。
(7)点击第二步中所打开窗口中的“文件”,转入装入需写入芯片的文件:
(8) 把芯片插入“Lab51 CPU板”上的锁进插座,注意芯片缺口方向在上。
(9)在对器件进行烧写前首先要进行擦除。
按住实验平台上的“RST”,点击“ISPLAY V1.3”窗口中的“擦除”,对芯片进行擦除操作。
(11)按住实验平台上的“RST”,点击“ISPLAY V1.3”窗口中“写”,对芯片进行烧录操作。
1.4强调说明:
在ISP下载时,必须保证CPU的第九脚RST为高电平,有以下两种方法(1)在ISP下载时,按住复位按键,强行使之为高电平(2)设计电路板时,CPU的复位电路作如下改进:
请参阅光盘中“AT89ISP2视频教程”。
2.1 AT89C2051单片机及其引脚说明
AT89C2051说明
89C2051是由ATMEL公司推出的一种小型单片机。
95年出现在中国市场。
其主要特点为采用Flash存贮器技术,降低了制造成本,其软件、硬件与MCS-51完全兼容,可以很快被中国广大用户接受,其程序的电可擦写特性,使得开发与试验比较容易。
1 引脚
89C2051共有20条引脚,详见图1.从图中可见,2051继承了8031最重要引脚:P1口共8脚,准双向端口。
P3.0~P3.6共7脚,准双向端口,并且保留了全部的P3的第二功能,如P3.0、P3..1的串行通讯功能,P3.2、P3..3的中断输入功能,P3.4、P3.5的定时器输入功能。
在引脚的驱动能力上面,89C2051具有很强的下拉能力,P1,P3口的下拉能力均
可达到20mA.相比之下,89C51/87C51的端口下拉能力每脚最大
为15mA。
但是限定9脚电流之和小于71mA.这样,引脚的平均
电流只9mA。
89C2051驱动能力的增强,使得它可以直接驱动
LED数码管。
为了增加对模拟量的输入功能,2051在内部构造了一个模拟信
号比较器,其输入端连到P1.0和P1.1口,比较结果存入P3.6
对应寄存器,(P3.6在2051外部无引脚),原理见图2。
对于一些不大复杂的控制电路我们就可以增加少量元件来实
现,例如,对温度的控制,过压的控制等。
图3为测量示意图。
其中,R用于测量门限的调节,IN端接输
入模拟信号。
AT89CX051编程器的设计摘要本文给大家介绍一个实用的A T89CX051编程电路,编程器电路主要有监控电路、编程方式控制电路、与电脑通讯的接口电路、编程电压(VPP)控制电路和电源电路组成。
文章详细地说明了A T89CX051单片机编程时序,利用AT89C2051单片机和MAX232、74LS164构成了AT89CX051编程器。
关键字A T89C2051,MAX232,74LS164,Keil C51,VB1 概述AT89CX051 单片机体积小,外围引脚仅有20只,功能强,有15只可编程I/O口,价格低廉,零售价格不足十元,应用十分广泛,如现在使用的数字钟就是以它为主CPU。
要使用单片机,必不可少的一件东西,那就是编程器。
许多爱好者由于不具备专业的开发环境和编程器,且面对市场上多则几千元,少则几百元的编程器,很多人望而却步,从而无法进行单片机实验。
虽然现在很多单片机都带有ISP或IAP功能,能实现串行下载编程,但此款单片机没有串行下载编程功能。
本人借鉴其他编程器自制了个AT89CX051专用编程器。
这里给大家介绍一个AT89CX051编程电路,编程器电路主要有监控电路、编程方式控制电路、与电脑通讯的接口电路、编程电压(VPP)控制电路和电源电路组成。
监控芯片A T89C2051程序用C51语言编写,使用Keil开发环境,C语言具有可读性强、移植性好等优点。
电脑程序用VB编写,开发简单,是面向对象的可视编程。
利用A T89C2051单片机和MAX232,74LS164构成的AT89CX051编程器,完全满足要求。
2 硬件电路2.1 系统组成和工作原理此编程器主要有监控电路、编程方式控制电路、与电脑通讯的接口电路、编程电压(VPP)控制电路和电源电路组成。
如图1所示:图1 A T89CX051编程器框图AT89CX051单片机编程时序:1.接通电源(Vcc位+5V),置RST,XLAT1为低电平,延时至少10ms。
AT89C2051主要性能参数:与MCS-51产品指令系统完全兼容1.2k字节可重擦写闪速存储器2.1000次擦写周期3.2.7—6V的工作电压范围4.全静态操作:OHz—24MHz5.两级加密程序存储器6.128x8字节内部RAM7.15个可编程I/O口线8.两个16位定时/计数器9.6个中断源10.可编程串行UART通道11.可直接驱动LED的输出端口12.内置一个模拟比较器13.低功耗空闲和掉电模式功能特性概述A T89C2051提供以下标准的功能:2k字节Flash闪速存储器,128字节内部RAM,15个I/O 口线,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,内置一个精密比较器,片内振荡器及时钟电路。
同时,AT89C2051可降至0HZ的静态逻辑操作,并支持两种软件可选的节电工作模式。
空闲方式停止CPU的工作,但振荡器停止工作并禁止其他所有部件工作直到下一个硬件复位。
方框图引脚功能说明:Vcc:电源电压GND: 地P1口:p1口是一组8位双向I/O口,P1.2~P1.7提供内部上拉电阻,P1.0和p1.1内部无上拉电阻,主要考虑他们分别是内部精密比较器的相同输入器(AINO)和反相输入端(AINI),如果需要应在外部接上拉电阻。
P1口输入缓冲器可吸收20mA电流并可直接驱动LED当P1口引脚写入“1”时可作输入端,当引脚P1.2~P1.7用作输入并被外部拉低时,他们将因为内部的上拉电阻位输出电流(In)。
P1口还在flash闪速编程及程序校验时接收代码数据。
P3口:P3口的P3.0~P3.5、P3.7是带有内部上拉电阻的7个双向I/O口。
P3.6没有引出,它作为一个通用的I/O口淡并不可以访问,但可以作为固定输入片内比较器的输出信号,P3.口缓冲器可吸收20mA电流。
当P3口写入“1”时,他们被内部上拉电阻拉高并可作为输入端口。
作为输入端是,被外部拉低的P3口将用上拉电阻输出电流(In)。
AT89C2051内部结构与功能1 AT89C2051主要性能AT89C2051是ATMEL公司生产的带2K字节闪速可编程可擦除只读存储器(E EPROM)的8位单片机,它具有如下主要特性:·和MCS-51产品的兼容·2K字节可重编程闪速存储器·耐久性:1,000写/擦除周期·2.7V~6V的操作范围·全静态操作:0Hz~24MHz·两级加密程序存储器·128×8位内部RAM·15根可编程I/O引线·两个16位定时器/计数器·六个中断源·可编程串行UART通道·直接LED驱动输出·片内模拟比较器·低功耗空载和掉电方式图1 AT89C2051的结构框图2 AT89C2051的结构框图AT89C2051是一带有2K字节闪速可编程可擦除只读存储体(EEPROM)的低电压,高性能8位CMOS微型计算机。
如图2所示。
它采用ATMEL的高密非易失存储技术制造并和工业标准MCS—51指令集和引脚结构兼容。
通过在单块芯片上组合通用的CPL1和闪速存储器,ATMELAT89C2051是一强劲的微型计算机,它对许多嵌入式控制应用提供一高度灵活和成本低的解决办法。
图2 AT89C2051内部结构图此外,从AT89C2051内部结构图也可看出,其内部结构与8051内部结构基本一致(除模拟比较器外),引脚RST、XTAL1、XTAL2的特性和外部连接电路也完全与51系列单片机相应引脚一致,但P1口、P3口有其独特之处。
3 AT89C2051的引脚说明AT89C2051是一个有20个引脚的芯片,引脚如图1所示,与8051内部结构进行对比可发现,AT89C2051减少了两个对外端口(即P0、P2口),使它最大可能地减少了对外引脚,因而芯片尺寸有所减少。
AT89C2051芯片的20个引脚功能为:1. Vcc:电源电压。
电子报/2007年/5月/27日/第015版单片机应用用AT89S2051单片机实现PWM输出控制廊坊宋占坡PWM(Pulse Width Modulation)脉宽调制技术,通过对脉冲宽的调制,获得所需要的波形(含形状和幅值)。
PWM也是单片机常用的模拟量输出方法,通过外接转换电路,可以将不同占空比的脉冲变成与之对应的电压(占空比是指正脉冲与整个周期的比值)。
本文介绍的程序,是通过调整占空比来调节输出模拟电压的方法之一。
可以用其控制直流电机的转速。
一、用延时子程序实现PWM控制流程图如图1所示,电路如图2所示。
P1.0口接PWM转换电压输入端,电压输出接电压表的+端,电压表的-端接地,通过改变PWM的占空比来观察电压表的读数,占空比越大,电压表的读数就越大。
程序清单如下:;输出50%占空比(1:2)PWM;输出10%占空比(1:10)PWM;输出90%占空比(9:10) PWM;改变程序中两个A的值可控制占空比PWMORG 20HOUTPUT BIT P1.0;定义P1.0LOOP:CLR OUTPUTMOV A,#5 ;A中内容可控制延时时间和占空比CALL DELAYSETB OUTPUTMOV A,#5;A中内容是1:2CALL DELAYLJMP LOOPDELAY:MOV R0,#00H;延时1275μSDLOOP:DJNZ R0, DLOOPDJNZ ACC, DLOOPBETEND二、用中断实现PWM控制通过对单片机定时器初始值的两次不同设置,来实现占空比PWM输出控制。
方法和电路图同前,只是单片机编程方法不一样。
用定时器T0完成PWM输出,脉宽也是1275μS(定时器控制最大脉宽为65536μS),所以此程序的占空比是1:2。
定时器计数初值为FB04H。
计算方法:计数初值为65535-1275=64260,转换为十六进制:64260D=FB04H。
程序清单如下:ORG 0000HLJMP MAINORG 0100HMAIN:SETB EA;中断允许SETB ET0 ;T0中断允许MOV TMOD,#01H;置T0为方式1,16位定时器MOV TH0,#0FBH;赋初值64260MOV TL0,#04HSETB P1.0 ;P1.0置为高电平SETB TR0;开启T0LOOP:JNB TF0,$;查询T0中断CLR TF0JNB P1.0,QQMOV TH0,#0FBH;赋初值,改控制低电平时间MOV TL0,#04HLJMP XXQQ:MOV TH0,#OFBH;赋初值,控制高点平时间MOV TL0,#04HXX:CPL P1.0SJMP LOOPEND注:此程序的占空比是1:2。
使用说明
第一步:安装USB 驱动以及佛门的控制软件(先不要连接USB 线); 使用的USB 芯片是CH340T ,运行CH341SER.exe 安装
第二步:插上USB 线,在“AT89 编程软件”文件夹下,找到
“WLPRO_V220_SETUP ”文件夹下,双击“WLPRO.exe ”运行编程软件,软件自动搜索连接的编程器,如成功,软件正常打开主界面,如下图的右下脚显示“联机模式”,说明电脑软件与编程器连接成功。
如果连接失败,请查看“我的电脑->设备管理器->端口(COM 和LPT )->USB SERIAL CH340 COM 几?”如果超过了COM9,请根据“计算机更改串口(COM 口)的方法.pdf ”更改成COM1到COM9任意口,如果还不成功,请联系卖家。
(第一次运行软件如果是英文界面,可以点击右上角的Language 菜单进行切换):
图7 在windows 7 下上位机软件界面
Fo68Fo68Fo68
现在就可以正常使用你的编程器了
1. 芯片放在锁紧座上烧写或读出芯片采用唯一一个40PIN 的拔插锁紧座,它可以分别放置8PIN ,20PIN 和40PIN 的芯片。
正确的放置方式如下图所示
下面以烧写一片AT89C2051为例,介绍编程器的使用方法及烧写步骤:
第一、在软件中点击“器件”按钮,(例如:选择型AT89C2051(型号不要选错));
Fo68Fo68
第二、在软件视图栏上找到“信息”,如下图所示,把AT89C2051 芯片放入编程器锁紧插座,压下手柄锁紧;然后关闭这个“器件信息”窗口。
第三、在软件中点击“加载”按钮,在“加载文件”对话框中找到找到你要烧写的文件,按默认点击确定即可;
第四、点击“自动”编程。
(注意:“自动”编程的步骤,可以通过点软件上的“选项”后,选择你要执行的步骤),有如下进示说明程序已经成功下载
如果需要对单片机加密,请点击“配置”按钮,弹出器件配置框后设置加密选项,例如:对于AT89S52 通常选择“Mode 4”,然后执行“加密”操作。
在加密前可以执行“校验”操作检查程序写入是否正确。