ImageVerifierCode 换一换
格式:DOCX , 页数:13 ,大小:193.99KB ,
资源ID:27328497      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/27328497.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(atc引脚图及功能.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

atc引脚图及功能.docx

1、atc引脚图及功能 at89c51引脚图及功能AT89C51是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片内含4kbytes的可反复擦写的只读程序存储器(PEROM)和128bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大AT89C51单片机可为您提供许多高性价比的应用场合,可灵活应用于各种控制领域。主要性能参数:与MCS-51产品指令系统完全兼容4k字节可重擦写Flash闪速存储器1000次擦写周期全静态操作:0Hz24MHz三级加密程

2、序存储器1288字节内部RAM32个可编程IO口线2个16位定时计数器6个中断源可编程串行UART通道低功耗空闲和掉电模式功能特性概述:AT89C51提供以下标准功能:4k字节Flash闪速存储器,128字节内部RAM,32个IO口线,两个16位定时计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。P0口:P0口是一组8位

3、漏极开路型双向IO口,也即地址数据总线复用口。作为输出口用时,每位能吸收电流的方式驱动8个TTL逻辑门电路,对端口写“1”可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8位)和数据总线复用,在访问期间激活内部上拉电阻。在FIash编程时,P0口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。P1口:P1是一个带内部上拉电阻的8位双向IO口,P1的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一

4、个电流(IIL)。FIash编程和程序校验期间,P1接收低8位地址。P2口:P2是一个带有内部上拉电阻的8位双向IO口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。在访问外部程序存储器或16位地址的外部数据存储器(例如执行MOVXDPTR指令)时,P2口送出高8位地址数据。在访问8位地址的外部数据存储器(如执行MOVXRI指令)时,P2口线上的内容(也即特殊功能寄存器(SFR)区中R2寄存器的内容),在整个访问期间不改变。

5、Flash编程或校验时,P2亦接收高位地址和其它控制信号。P3口:P3口是一组带有内部上拉电阻的8位双向IO口。P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对P3口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。作输入端时,被外部拉低的P3口将用上拉电阻输出电流(IIL)。P3口除了作为一般的IO口线外,更重要的用途是它的第二功能,如下表所示: P3口还接收一些用于Flash闪速存储器编程和程序校验的控制信号。RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。ALEPROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输

6、出脉冲用于锁存地址的低8位字节。即使不访问外部存储器,ALE仍以时钟振荡频率的l6输出固定的正脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。对Flash存储器编程期间,该引脚还用于输入编程脉冲(PROG)。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的DO位置位,可禁止ALE操作。该位置位后,只有一条MOVX和MOVC指令ALE才会被激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE无效。PSEN:程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89C51由外部程序存储器取指令(或数据)时,

7、每个机器周期两次PSEN有效,即输出两个脉冲。在此期间,当访问外部数据存储器,这两次有效的PSEN信号不出现。EAVPP:外部访问允许。欲使CPU仅访问外部程序存储器(地址为0000HFFFFH),EA端必须保持低电平(接地)。需注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态。如EA端为高电平(接VCC端),CPU则执行内部程序存储器中的指令。Flash存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。XTAL1:振荡器反相放大器的及内部时钟发生器的输入端。XTAL2:振荡器反相放大器的输出端。掉电模式:在掉电模式下,振荡器停止工

8、作,进入掉电模式的指令是最后一条被执行的指令,片内RAM和特殊功能寄存器的内容在终止掉电模式前被冻结。推出掉电模式的唯一方法是硬件复位,复位后将重新定义全部特殊功能寄存器但不改变RAM中的内容,在Vcc恢复到正常工作电平前,复位应无效,且必须保持一定时间以使振荡器重启动并稳定工作。89C51的程序存储器阵列是采用字节写入方式编程的,每次写入一个字符,要对整个芯片的EPROM程序存储器写入一个非空字节,必须使用片擦除的方法将整个存储器的内容清楚。2编程方法编程前,设置好地址、数据及控制信号,编程单元的地址加在P1口和P2口的P2.0P2.3(11位地址范围为0000H0FFFH),数据从P0口输

9、入,引脚P2.6、P2.7和P3.6、P3.7的电平设置见表6,PSEB为低电平,RST保持高电平,EA/Vpp引脚是编程电源的输入端,按要求加上编程电压,ALE/PROG引脚输入编程脉冲(负脉冲)。编程时,可采用420MHz的时钟振荡器,89C51编程方法如下:在地址线上加上要编程单元的地址信号在数据线上加上要写入的数据字节。激活相应的控制信号。在高电压编程方式时,将EA/Vpp端加上+12v编程电压。每对Flash存储阵列写入一个字节或每写入一个程序加密位,加上一个ALE/PROG编程脉冲。改变编程单元的地址和写入的数据,重复15步骤,知道全部文件编程结束。每个字节写入周期是自身定时的,通

10、常约为1.5ms。数据查询89C51单片机用数据查询方式来检测一个写周期是否结束,在一个写周期中,如需要读取最后写入的那个字节,则读出的数据的最高位(P0.7)是原来写入字节的最高位的反码。写周期开始后,可在任意时刻进行数据查询。2.1Ready/Busy:字节编程的进度可通过Ready/Busy输出信号检测,编程期间,ALE变为高电平“H”后P3.4(Ready/Busy)端被拉低,表示正在编程状态(忙状态)。编程完成后,P3.4变为高电平表示准备就绪状态。程序校验:如果加密位LB、LB2没有进行编程,则代码数据可通过地址和数据线读回原编写的数据,采用下图的电路,程序存储器的地址由P1口和P

11、2口的P2.0P2.3输入,数据由P0口读出,P206、P2.7和P3.6、P3.7的控制信号见表6,PSEN保持低电平,ALE、EA和RST保持高电平。校验时,P0口必须接上10k左右的上拉电阻。 图2-1-1编程电路 图2-2-2校验电路2.2芯片擦除:利用控制信号的正确组合(表6)并保持ALE/PROG引脚10ms的低电平脉冲宽度即可将EPROM阵列(4k字节)和三个加密位整片擦除,代码阵列在片擦除操作中将任何非空单元写入”1”,这步骤需在编程之前进行。2.3读片内签名字节:89C51单片机内有3个签名字节,地址为030H、031H和032H。于声明该器件的厂商、号和编程电压。读签名字节

12、的过程和单元030H、031H和032H的正常校验相仿,只需要将P3.6和P3.7保持低电平,返回值意义如下:(030H)=1EH声明产品由ATMEL公司制造。(031H)=51H声明为89C51单片机。(032H)=FFH声明为12V编程电压。(032H)=05H声明为5编程电压。 89c51方框图单片机最小系统设计该单片机最小系统具有的功能:(1)具有2位LED数码管显示功能。(2)具有八路发光二极管显示各种流水灯。(3)可以完成各种奏乐,报警等发声音类实验。(4)具有复位功能。功能分析(1)两位LED数码管显示功能,我们可以利用单片机的P0口接两个数码管来现这个功能;(2)八路发光二极管

13、显示可以利用P1口接八个发光二极管实现这个功能;(3)各种奏乐、报警等发声功能可以采用P2.0这个引脚接一蜂鸣器来实现。(4)利用单片机的第9脚可以设计成复位系统,我们采用按键复位;利用单片机的18、19脚可以设计成时钟电路,我们利用单片机的内部振荡方式设计的。设计框图硬件电路设计根据本系统的功能,和单片机的工作条件,我们设计出下面的电路图。元件清单的确定:数码管:共阴极2只(分立)电解电容:10UF的一只30PF的电容2只220欧的电阻9只4.7K的电阻一只1.2K的电阻一只4.7K的排阻一只,12MHZ的晶振一只有源5V蜂名器一只AT89S51单片机一片常开按钮开关1只紧锁座一只(方便芯取

14、下来的,绿色的)发光二极管(5MM红色)8只万能板电路版15*17CMS8550三极管一只45V电池盒一只,导线相关程序编写若干。七、硬件电路的焊接按照原理图把上面的元件焊接好,详细步骤省略。针对上面的电路原理图,设计出本单片机最小系统的详细功能:(1)、第一个发光二极管点亮,同时数码管显示“1”。(2)、第二个发光二极管点亮,同时数码管显示“2”。(3)、依次类推到第八个发光二极管点亮,同时数码管显示“8”。以上出现的是流水灯的效果。(4)、所有的发光二极管灭了,同时数码管现实“0”。(5)、数码管显示“1”。(6)、数码管显示“2、”直到“9、A、B、C、D、E、F、Y”。(7)、蜂鸣器发

15、出九声报警声后重复上面所有步骤。(8)程序如下:ORG0000H;伪指令,定义下面的程序代码(机器代码)从地址为0000H的单元存放。LJMPSTART;跳转到标号为START的地方去执行。ORG0030H;伪指令,定义下面的程序代码(机器代码)从地址为0030H的单元存放。START:MOVP1,#0FEH;点亮第一个发光二极管。CLRP2.7;送低电平到第一个数码管,开启数码管。CLRP2.6;送低电平到第二个数码管,开启数码管。MOVP0,#06H;让数码管显示“1”。LCALLDELAY;调用延时子程序,起到延时的目的。MOVP1,#0FDH;点亮第二个发光二极管。MOVP0,#5bH

16、;让数码管显示“2”。LCALLDELAY;调用延时子程序,起到延时的目的。MOVP1,#0FBH;点亮第三个发光二极管。MOVP0,#4fH;让数码管显示“3”。LCALLDELAY;调用延时子程序,起到延时的目的。MOVP1,#0F7H;点亮第四个发光二极管。MOVP0,#66H;让数码管显示“4”。LCALLDELAY;调用延时子程序,起到延时的目的。MOVP1,#0EFH;点亮第五个发光二极管。MOVP0,#6dH;让数码管显示“5”。LCALLDELAY;调用延时子程序,起到延时的目的。MOVP1,#0DFH;点亮第六个发光二极管。MOVP0,#7dH;让数码管显示“6”。LCALL

17、DELAY;调用延时子程序,起到延时的目的。MOVP1,#0BFH;点亮第七个发光二极管。MOVP0,#07H;让数码管显示“7”。LCALLDELAY;调用延时子程序,起到延时的目的。MOVP0,#7fH;让数码管显示“8”。LCALLDELAY;调用延时子程序,起到延时的目的。MOVP0,#6fH;让数码管显示“9”。LCALLDELAY;调用延时子程序,起到延时的目的。MOVP0,#7fH;让数码管显示“A”。LCALLDELAY;调用延时子程序,起到延时的目的。MOVP0,#7fH;让数码管显示“b”。LCALLDELAY;调用延时子程序,起到延时的目的。MOVP0,#7fH;让数码管

18、显示“C”。LCALLDELAY;调用延时子程序,起到延时的目的。MOVP0,#7fH;让数码管显示“d”。LCALLDELAY;调用延时子程序,起到延时的目的。MOVP0,#7fH;让数码管显示“E”。LCALLDELAY;调用延时子程序,起到延时的目的。MOVP0,#7fH;让数码管显示“F”。LCALLDELAY;调用延时子程序,起到延时的目的。MOVP0,#7fH;让数码管显示“Y”。LCALLDELAY;调用延时子程序,起到延时的目的。MOVR4,#9;送蜂鸣器的报警次数。LOOP:SETBP2.0;不发声LCALLDELAY;调用延时子程序,起到延时的目的。CLRP2.0;发声。L

19、CALLDELAY;调用延时子程序,起到延时的目的。DJNZR4,LOOP;发声九次后向下执行。SETBP2.0;关闭发声LJMPSTART;跳转到标号为START处执行,循环本程序。DELAY:MOVR7,#200;这是延时子程序D1:MOVR6,#200D2:MOVR5,#200D3:DJNZR5,D3DJNZR6,D2DJNZR7,D1RET;延时子程序返回指令。END;结束伪指令。九、利用KEILC51软件对上面的程序进行调试和编译,产生*.HEX文件,以便用编程器写入单片机芯片中。十、编程器的使用:用编程器把电脑里生成的*.HEX文件写到芯片中。十一、产品调试:通上4.5V(三节电池

20、)的电源,可以调试本系统,如果没有错误就可以正常工作了。分四个部分:1.晶振,至于大小由你单片机时钟周期要求而决定(用于计时,与两个电容并联使用,电容2.复位电路(用于复位)3.电源(用于供电,一般用电脑的USB口供电)4.烧制程序的口(可用串口配合MAX232配合使用,也可以做个并口输入,这个要根据你使用单片机的种类决定,比如ATC可用并口,STC一般只用串口输入等等)Keilc程序(就是写的有点啰嗦):/*/青岛大学电气工程及其自动化/模块名:LED 描述:自己制作LED接口/创建人:Xiaoz 日期:2008-10-22/功能描述:本工程实现51单板P0-P3四端口的频闪/版本说明:v1

21、.0/*#include#includereg51.hvoid Delay(unsigned int i);void IO_Init();/*/函数名:main.c/功能描述:主函数/调用函数:初始化和延时子程序/输入:无/返回:无/设计者:Made by Xiaoz/*void main() while(1) IO_Init(); Delay(150); P0=0X0000; P1=0X0000; P2=0X0000; P3=0X0000; Delay(150);/*/延时子程序/*void Delay(unsigned int i) unsigned int j; for(;i0;i-) for(j=0;j100;j+);/*/IO口初始化为高电平子程序/*void IO_Init() P0=0XFFFF; P1=0XFFFF; P2=0XFFFF; P3=0XFFFF;/*

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1