AT89C51单片机毕业论文外文翻译.doc
《AT89C51单片机毕业论文外文翻译.doc》由会员分享,可在线阅读,更多相关《AT89C51单片机毕业论文外文翻译.doc(34页珍藏版)》请在三一办公上搜索。
1、附录A功能概述AT89C51单片机是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片内含4k bytes的可反复擦写的Flash只读程序存储器和128 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS51指令系统,片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大AT89C51单片机可提供许多高性价比的应用场合,可灵活应用于各种控制领域。主要性能参数与MCS51产品指令系统完全兼容4k字节可重擦写Flash闪速存储器1000次擦写周期全静态操作:0Hz24MHz三级加密程序存储器1288字节内部RAM32个
2、可编程I/O口线2个16位定时/计数器6个中断源可编程串行UART通道低功耗空闲和掉电模式引脚功能说明VCC:电源电压GND:地P0口:P0口是一级8位漏极开路型双向I/O口,也即地址/数据总线复用口。作为输出口用时,每位能吸收电流的方式驱动8个TTL逻辑门电路,对端口写“1” 可作为高阻搞输入端用。在访问外部数据存储器或程序存储器时,这级口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。在Flash编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外妆上拉电阻。P1口:P1口是一个带内部上拉电阻的8位双向I/O口,P1口的输出缓冲级可驱动(吸收或输出电
3、流)4个TTL逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。Flash编程和程序校验期间,P1接收低8位地址。P2口:P2口是一个带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流。在访问外部程序存储器或16位地址的外部数据存储器(例如执行MOVX DPTR指令)时,P2口送出高8位地址数据。在
4、访问8位地址的外部数据存储器(如执行MOVX RI指令)时,P2口线上的内容(也即特殊功能寄存器(SFR)区中R2寄存器的内容),在整个访问期间不改变。Flash编程或校验时,P2口亦接收高位地址和其它控制信号。P3口:P3口是一组带有内部上拉电阻的8位双向I/O口。P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对P3口写入“1”,时,它们被内部上拉电阻拉高并可作为输入端口。作输入端时,被外部拉低的P3口将用上拉电阻输出电流。P3口除了作为一般的I/O口线外,更重要的用途是它的第二功能。如表1所示。表1 P3口的第二功能端口引脚第二功能P3.0RXD(串行输入口)P3.1TXD
5、(串行输出口)P3.2(外中断0)P3.3(外中断1)P3.4T0(定时/计数器0)P3.5T1(定时/计数器1)P3.6(外部数据存储器写选能)P3.7(外部数据存储器读选能) P3口还接收一些用于Flash闪速存储器编程和程序校验的控制信号RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。即使不访问外部存储器,ALE仍以时钟振荡频率的1/16输出固定的正脉冲信号,因此它可对输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个AL
6、E脉冲。PSEN:程序储存允许输出是外部程序存储器的读选通信号,当AT89C51由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲。在此期间,当访问外部数据存储器,这两次有效的PSEN信号不出现。EA/VPP:外部访问允许。欲使CPU仅访问外部程序存储器(0000HFFFFH),EA端必须保持低电平(接地)。需注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态。如EA端为高电平(接VCC端),CPU则执行内部程序存储器中的指令。Flash存储器编程时,该引脚加上+12V的编程允许电源VPP,当然这必须是该器件是使用12V编程电压VPP。XTAL1:振荡器
7、反相放大器及内部时钟发生器的输入端。XTAL2:振荡器反相放大器的输出端时钟振荡器AT89C51中有一个用于构成内部振荡器的高增益反相放大器,引脚XTAL1T XTAL2分别是该放大器的输入端和输出端。这个放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起构成自激振荡器,振荡电路如图1、图2所示。 石英晶体时:C1,C2=30pF10 pF陶瓷谐振器:C1,C2=40pF10pF图1 内部振荡电路 图2 外部振荡电路外接石英晶体(或陶瓷谐振器)及电容C1、C2接在放大器的反馈回路构成并联振荡电路。对外接电容C1、C2虽然没有十分严格的要求,但电容容量的大小会轻微影响振荡频率的高低、振荡器工作的
8、稳定性、起振的难易程度及温度稳定性,如果使用石英晶体,我们推荐电容使用30pF10pF,而如使用陶瓷谐振器建议选择40pF10pF。用户也可采用外部时钟.采用外部时钟的电路如图5所示。这种情况下,外部时钟脉冲接到XTAL1端,即内部时钟发生器的输入端,XTAL2则悬空。由于外部时钟信号是通过一个2分频触发器后作为内部时钟信号的,所以对外部时钟信号的占空比没有特殊的要求,但最小高电平持续时间和最大的低电平持续时间应符合产品技术条件的要求。空闲节电模式AT89C51有两种可用软件编程的省电模式,它们是空闲模式和掉电模式。这两种方式是控制专用寄存器PCON(即电源控制寄存器)中的PD(PCON.0)
9、位来实现的。PD是掉电模式,当PD=1时,激活掉电工作模式,单片机进入掉电工作状态。IDL是空闲等待方式,当IDL=1,激活空闲工作模式,单片机进入睡眠状态。如需同时进入两种工作模式,即PD和IDL同时为1,则先激活掉电模式。在空闲工作模式状态,CPU保持睡眠状态而所有片内的外设仍保持激活状态,这种方式由软件产生。此时,片内RAM和所有特殊功能寄存器的内容保持不变。空闲模式可由任何允许的中断请求或硬件复位终止。终止空闲工作模式的方法有两种,其一是任何一条被允许中断的事件被激活,IDL(PCON.0)被硬件清除,即刻终止空闲工作模式。程序会首先响应中断,进入中断服务程序,执行完中断服务程序并紧随
10、RETI(中断返回)指令后,下一条要执行的指令就是使单片机进入空闲模式那条指令后面的一条指令。其二是通过硬件复位也可将空闲工作模式终止。需要注意的是:当帅硬件复位来终止空闲工作模式时,CPU通常是从激活空闲模式那条指令的下一条指令开始继续执行程序的,要完成内部复位操作,硬件复位脉冲要保持两个机器周期(24个时钟周期)有效,在这种情况下,内部禁止CPU访问片内RAM,而允许访问其它端口。为了避免可能对端口产生意外写入,激活空闲模式的那条指令后条指令不应是一条对端口或外部存储器的写入指令。掉电模式在掉电模式下,振荡器停止工作,进入掉电模式的指令是最后一条被执行的指令,片内RAM和特殊功能寄存器的内
11、容在终止掉电模式前被冻结。退出掉电模式的唯一方法是硬件复位,复位后将重新定义全部特殊功能寄存器但不改变RAM中的内容,在VCC恢复到正常工作电平前,复位应无效,且必须保持一定时间以使振荡器重启动并稳定工作。空闲和掉电模式外部引脚状态如表2所示。表2 空闲和掉电模式外部引脚状态模式程序存储器ALEP0P1P2P3空闲模式内部11数据数据数据数据空闲模式外部11浮空数据地址数据掉电模式内部00数据数据数据数据掉电模式处部00浮空数据数据数据程序存储器的加密AT89C51可使用对芯片上的3个加密位LB1、LB2、LB3进行编程(P)或不编程(U)来得到如表3所示的功能。表3 加密位保护功能表程序加密
12、位保护类型LB1LB2LB31UUU没有程序保护功能2PUU禁止从外部程序存储器中执行MOVC指令读取内部程序存储器的内容3PPU除上表功能外,还禁止程序校验4PPP除以上功能外,同时禁止外部执行注:表中的U表示未编程,P表示编程当加密位LB1被编程时,在复位期间,EA端的逻辑电平采样并锁存,如果单片机上电后一直没有复位,则锁存起的初始值是一个随机数,且这个随机数会一直保存到真正复位为止。为使单元片机能正常工作,被锁存的EA电平值必须与该引脚当前的逻辑电平一致。此外,加密位只能通过整片擦除的方法清除。Flash 闪速存储器的编程AT89C51单片机内部有4k字节的Flash PEROM,这个F
13、lash存储阵列出厂时已处于擦除状态(即所有存储单元的内容均为FFH),用户随时可对其进行编程。编程接口可接收高电压(+12V)或低电压(VCC)的允许编程信号。低电压编程模式适合于用户在线编程系统,而高电压编程模式可与通用EPROM编程器兼容。AT89C51单片机中,有些属于低电压编程方式,而有些则是高电压编程方式,用户可从芯片上的型号和读取芯片内的签名字节获得该信息,如表4所示。 表4 签名字节获得信息VPP=12VVPP=5V芯片顶面标识AT89C51xxxxyywwAT89C51xxxx-5yyww签名字节(030H)=1EH(031H)=51H(032H)=FFH(030H)=1EH
14、(031H)=51H(032H)=05HAT89C51的程序存储器阵列是采用字节写入方式编程的,每次写入一个字节,要对整个芯片内的PEROM程序存储器写入一个非空字节,必须使用片擦除的方式将整个存储器的内容清除。 编程方法编程前,须按图3和表5所示设置好地址、数据及控制信号,编程单元的地址加在P1口和P2口的P2.0P2.3(11位地址范围为0000H0FFFH),数据从P0口输入,引脚P2.6、P2.7和P3.6、P3.7的电平设置如表6,PSEN为低电平,RST保持高电平,EA/VPP引脚是编程电源的输入端,按要求加上编程电压,LAE/PROG引脚输入编程脉冲(负脉冲)。编程时,可采用42
15、0MHz的时钟振荡器,AT89C51编程方法如下:1,在地址线上加上要编程单元的地址信号。2,在数据线上加上要写入的数据字节。3,激活相应的控制信号。4,在高电压编程方式时,将EA/VPP端加上+12V编程电压。5,每对Flash存储阵列写入一个字节或每写入一个程序加密位,加上一个ALE/PROG编程脉冲。改变编程单元的地址和写入的数据,重复15步骤,直到全部文件编程结束。图3 编程电路表5 Flash存储器编程真值表方式RSTPSENALE/PROGEA/VPPP2.6P2.7P3.6P3.7写代码数据HLH/12VLHHH读代码数据HLHHLLHH写加密位Bit-1HLH/12VHHHHB
16、it-2HLH/12VHHLLBit-3HLH/12VHLHL片擦除HLH/12VHLLL读签名字节HLHHLLLL注:片擦除操作时要求PROG脉冲宽度为10ms数据查询AT89C51单片机用数据查询方式来检测一个写周期是否结束,在一个写周期中,如需读取最后写入的那个字节,则读出的数据的最高位(P0.7)是原来写入字节最高位的反码。写周期完成后,有效的数据就会出现在所有输出端上,此时,可进入下一个字节的写周期,写周期开始后,可在任意时刻进行数据查询。Ready/busy:字节编程的进度可通过“RDY/BSY”输出信号监测,编程期间,ALE变为高电平“H”后P3.4(RDY/BSY)端电平被拉低
17、,表示正在编程状态(忙状态)。编程完成后,P3.4变为高电平表示准备就绪状态。程序校验 如果加密位LB1、LB2没有进行编程,则代码数据可通过地址和数据线读回原编写的数据,采用下图的电路,程序存储器的地址由P1和P2的P.0P2.3输入,数据由P0口读出,P2.6、P2.7和P3.6、P3.7的控制信号见表6,PSEN保持低电平,ALE、EA和RST保持高电平。校验时,P0口须接上10k左右的上拉电阻。 加密位不可直接校验,加密位的校验可通过对存储器的校验和写入状态来验证。图4为校验电路。图4 校验电路芯片擦除 利用控制信号的正确组合,并保持ALE/PROG引脚10ms的低电平脉冲宽度即可将P
18、EROM阵列(4k字节)和三个加密位整片擦除,代码阵列在片擦除操作中将任何非空单元写入“1”,这步骤需再编程之前进行。读片内签名字节AT89C51单片机内有3个签名字节,地址为030H、031H和032H。用于声明该器件的厂商、型号和编程电压。读签名字节的过程和单元030H、031H和032H的正常校验相仿,只需将P3.6和P3.7保持低电平,返回值意义如下: (030H) = 1EH 声明产品由ATMEL公司制造(031H) = 51H 声明产品为AT89C51单片机(032H) = FFH 声明为12V编程电压(032H) = 05H 声明为5V编程电压编程接口采用控制信号的正确组合可对F
19、lash闪速存储阵列中的每一代码字节进行定写入和存储器的整片擦除,写操作周期是自身定时的,初始化后它将自动定时到操作完成。FLASH EPROM 存储器概述89C51X2/52X2/54X2/58X210000次擦除和编程之后仍能可靠保存FLASH 存储器的内容。存储单元的设计使得擦除和编程结构最优化。此外,先进的沟道氧化工艺和低内部电场的结合使擦除和编程操作更加可靠。特性带片擦除的FLASH EPROM 内部程序存储器内部程序存储器禁止时(EA=0)外部程序存储器最多可达64K可编程加密位每字节最少10000 次擦除/编程周期数据最少可保存10 年从一般销售商处可获得编程支持振荡器特性XTA
20、L1 和XTAL2 为输入和输出,可分别作为一个反相放大器的输入和输出。此管脚可配置为使用内部振荡器。要使用外部时钟源驱动器件时,XTAL2 可以不连接而由XTAL1 驱动。外部时钟信号无占空比的要求,因为时钟通过触发器二分频输入到内部时钟电路。但高低电平的最长和最短时间必须符合手册的规定。复位在振荡器工作时,将RST 脚保持至少两个机器周期高电平(12 时钟模式为24 个振荡器周期6 时钟模式为12 振荡器周期)可实现复位。为了保证上电复位的可靠,RST 保持高电平的时间至少为振荡器启动时间(通常为几个毫秒)再加上两个机器周期。复位后,振荡器以12 时钟模式运行(当已通过并行编程器设置为6
21、时钟模式时除外)。低功耗模式时钟停止模式静态设计使时钟频率可以降至0MHz(停止)。当振荡器停振时,RAM 和SFR 的值保持不变。该模式允许逐步应用并可将时钟频率降至任意值以实现系统功耗的降低。如要实现最低功耗则建议使用掉电模式。空闲模式空闲模式CPU 进入睡眠状态,但片内的外围电路仍然保持工作状态。正常操作模式的最后一条指令执行进入空闲模式。空闲模式下,CPU 内容,片内RAM和所有SFR 保持原来的值。任何被使能的中断(此时,程序从中断服务程序处恢复并继续执行)或硬件复位(与上电复位使用相同的方式启动处理器)均可终止空闲模式。掉电模式为了进一步降低功耗,通过软件可实现掉电模式。该模式中,
22、振荡器停振并且在最后一条指令执行进入掉电模式。降到2.0V 时,片内RAM和SFR保持原值,在退出掉电模式之前Vcc 必须升至规定的最低操作电压。硬件复位或外部中断均可结束掉电模式,硬件复位使所有的SFR重新设置,但不改变片内RAM 的值。外部中断允许SFR和片内RAM都保持原值。WUPD (AUXR1.3 从掉电唤醒)使能或禁止通过外部中断唤醒掉电WUPD=0 禁止 WUPD=1 使能要正确退出掉电模式,在Vcc 恢复到正常操作电压范围之后,复位或外部中断开始执行并且要保持足够长的时间( 通常小于10ms )以使振荡器重新启动并稳定下来。使用外部中断退出掉电模式时,INT0 和INT1 必须
23、使能且配置为电平触发。将管脚电平拉低使振荡器重新启动,退出掉电模式后将管脚恢复为高电平。一旦中断被响应,RETI 之后所执行的是进入掉电模式指令的后一条指令。设计中的注意事项当空闲模式被硬件复位所中止时,器件在内部复位之前从停止处恢复程序正常运行,时间为2 个机器周期。这段时间内片内硬件禁止对内部RAM的访问,但对I/O 口的访问未被禁止。当Idle模式被复位所中止时,为了消除可能产生的误写操作,应用Idle模式指令后的指令不应执行写I/O口或写外部存储器操作。ONCETM模式ONCE(在线仿真)模式实现了对系统的测试和调试而不需要将器件从电路中移去。进入ONCE 模式的条件: 1) 当器件复
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- AT89C51单片机 毕业论文外文翻译 AT89C51 单片机 毕业论文 外文 翻译
链接地址:https://www.31ppt.com/p-3931370.html