基于单片机原理的步进电机的正反转程89397460
基于单片机的电动机正反转控制设计.doc

基于单片机的电动机正反转控制设计. .基于单片机的电动机正反转控制设计学生:xxx(指导教师:xxx)(xxxxxx电气信息工程学院)摘要:基于单片机的基本理论,本文设计了一种步进电机控制系统。
该系统通过软硬件的设计调试,实现步进电机能根据设定的参数进行开关加减速控制,使控制系统以最短的时间到达控制终点,而又不发生失步的现象;同时它能准确地控制步进电机的正反转,启动和停止。
硬件是以AT89C51单片机为核心的控制电路,主要包括:开关输入电路、液晶显示电路、步进电机的驱动电路等。
软件部分采用C语言编程,主要包括液晶显示程序、步进电机的正反转即快慢程序等。
通过仿真验证了本文设计系统的实用性能。
关键词:步进电机控制系统;调速;单片机The design of motor control system based on SCMStudent:Zhou Tianhang(Supervisor:Liu Yunxia)Electrical and Information Engineering Department of Huainan Normal UniversityAbstract: The basic theory based on SCM. this paper designs a kind of stepping motor control system. The systemgoes through the design of software and hardware. Realize the stepper motor can switch the acceleration and deceleration control according to the given parameters which makes the control system in the shortest time to finish and not out of step. At the same time, it can control the reversing the stepper motor accurately, start and stop. The hardware control circuit AT89C51 microcontroller as the core mainly. Include: switch input circuit, LCD displaying circuit, stepper motor drive circuit. The software is programmed by C language. Include: LCD display program and the stepper motor speed program .The practical performance of the design of the system is validated by simulation.Key words: Stepping motor control system; speed control; Single-xxx(指导教师:xxx)(xxxxxx电气信息工程学院)摘要:基于单片机的基本理论,本文设计了一种步进电机控制系统。
STC89C52单片机控制28byj-48步进电机正反转变速

STC89C52单片机控制28byj-48型步进电机正反转、加减速C语言编写。
在网上找了好久,都没找到合适的,无奈之下,只能用自己写写了。
写的不好,大家勿喷。
主要实现功能,正反转,加减速,暂停。
晚上在宿舍用手机拍的,手机不好,光线也不好。
拍的更不好。
用的是LUN2003驱动板。
刚接触电机,也不是很了解。
看到网上好多一样的文章,所以一些原理就不讲了,直接上源码了。
因为初学,很多要改进的地方。
如果你有更高效率的算法,请联系我QQ394511647,一起讨论,谢谢。
定义的旋转相序为双相八拍。
在代码中都标出来了。
我都测试过了,是可以加减速的,就是加减速还不够完善。
希望大家改改。
源码:/*****************************************************************************/ #include <reg52.h>#define uint unsigned int#define uchar unsigned charuchar code ccw[]={0x08,0x0c,0x04,0x06,0x02,0x03,0x01,0x09};//逆时针uchar code cw[]={0x09,0x01,0x03,0x02,0x06,0x04,0x0c,0x08};//顺时针uchar a,temp;sbit K1 = P1^4;//逆时针sbit K2 = P1^5;//顺时针sbit K3 = P1^6;//暂停sbit K4 = P3^2;//加速sbit K5 = P3^3;//减速void SETP_MOTOR_cw(uchar n);//顺时针void SETP_MOTOR_ccw(uchar n);//逆时针void DelayMS();//延时void speed();//变速void fddelay(uchar b);//防抖uchar N = 192;//外圈数跑3圈(减速比为1:64)uchar num;void main(){while(1){if(K1 == 0){SETP_MOTOR_ccw(N);if(K3 == 0) break;}else if(K2 == 0){SETP_MOTOR_cw(N);if(K3 == 0) break;}else{P0 = 0x00;}}}void DelayMS()//延时{uchar i;uchar ms;ms = num;while(ms--){for(i=0;i<115;i++);}}void fddelay(uchar b)//防抖{uchar i;while(b--){for(i=0; i<120; i++);}}void SETP_MOTOR_ccw(uchar n)//逆时针{uint i,j;num = 2;for(i=0;i<8*n;i++){speed();for(j=0;j<8;j++){if(K3 == 0) break;P0 = ccw[j];if(K2==0){SETP_MOTOR_cw(N);return;}DelayMS();}}}void SETP_MOTOR_cw(uchar n)//顺时针{uint i,j;num = 2;for(i=0;i<8*n;i++){speed();for(j=0;j<8;j++){if(K3 == 0) break;P0 = cw[j];if(K1==0){SETP_MOTOR_ccw(N);return;}DelayMS();}}}void speed()//变速{while(K4==0){fddelay(5);if(K4==1) //这里是判断按键按下弹起来,然后执行num{num+=10;}}while(K5==0){fddelay(5);if(K5==1){num-=10;}}}/**************************************完*************************************/。
基于51单片机控制步进电机正反转

基于51单片机控制步进电机正反转此次采用uln2003模块来链接步进电机;## 步进电机工作原理步进电机是一种将电脉冲信号转换成相应角位移或线位移的电动机。
每输入一个脉冲信号,转子就转动一个角度或前进一步,其输出的角位移或线位移与输入的脉冲数成正比,转速与脉冲频率成正比。
步进电动机的结构形式和分类方法较多,一般按励磁方式分为磁阻式、永磁式和混磁式三种;按相数可分为单相、两相、三相和多相等形式。
因此我们可以控制单片机I/O口的电平来控制步进电机,此次设计中采用四相单拍工作方式,在这种工作方式下,A、B、C、D 三相轮流通电,电流切换三次,磁场旋转一周,转子向前转过一个齿距角。
因此这种通电方式叫做四相单四拍工作方式。
1.电机正转代码unsigned char code tableZ[8]={0x08,0x0c,0x04,0x06,0x02,0x03,0x01,0x09};2.电机反转代码unsigned char code tableF[8]={0x09,0x01,0x03,0x02,0x06,0x04,0x0c,0x08};代码如下#include <reg52.h>#define uint unsigned int #define uchar unsigned charunsigned char code tableZ[8]={0x08,0x0c,0x04,0x06,0x02,0x03,0x01,0x09};unsigned char code tableF[8]={0x09,0x01,0x03,0x02,0x06,0x04,0x0c,0x08};//²½½øµç»úzhengvoid delay(unsigned int t);sbit S3=P3^4; //反转sbit S4=P3^5; //反停sbit S5=P3^6; // 正停//正转写入数据void motor_z() { unsigned char i,j; for (i=0; i<8; i++) { if(S5==0){break;} for(j=0;j<8;j++){ P1 = tableZ[i]&0x1f; delay(50); } } }//反转写入数据void motor_f(){ unsigned char i,j; for (i=0; i<8; i++) { if(S4==0){break;} for(j=0;j<8;j++){ P1 = tableF[i]&0x1f;delay(50); } }}void delay(unsigned int t)//延时函数{ unsigned int k; while(t--) { for(k=0; k<60; k++) { } }}void main(){while(1){motor_z();if(S3 == 0){motor_f();}}}•1•2•3•4•5•6•7•8•9•10•11•12•13•14•15•16•17•18•19•20•21•22•23•24•25•26•27•29 •30 •31 •32 •33 •34 •35 •36 •37 •38 •39 •40 •41 •42 •43 •44 •45 •46 •47 •48 •49 •50 •51 •52 •53 •54 •55 •56 •1•3 •4 •5 •6 •7 •8 •9 •10 •11 •12 •13 •14 •15 •16 •17 •18 •19 •20 •21 •22 •23 •24 •25 •26 •27 •28 •29 •30 •31•33•34•35•36•37•38•39•40•41•42•43•44•45•46•47•48•49•50•51•52•53•54•55•56protel仿真图如下。
基于单片机AT89S52控制步进电机正反转讲述

目录第一章系统分析 (1)1.1 框图设计 ..............................................21.2 晶振电路 ..............................................2第二章硬件系统设计 (3)2.1 硬件连接图 .............................................32.2 按键功能 ........................................... - 2 -2.3 单片机AT89S52 ..................................... - 2 -2.4 驱动电路 ...............................................42.5 步进电机 (7)第三章软件系统设计 (9)3.1 软件流程图 .............................................93.2 激磁方式 ..............................................10附录 .........................................................12附件A 源程序 .......................................... (12)附件B 仿真结果 (15)参考文献 (17)致谢..........................................................18摘要能够实现步进电机控制的方式有多种,可以采用前期的模拟电路、数字电路或模拟与数字电路相结合的方式。
近年来随着科技的飞速发展,单片机的应用正在不断深入,同时带动传统控制检测日新月异更新。
本文介绍一种用AT89S52作为核心部件进行逻辑控制及信号产生的单片机技术和汇编语言编程设计的步进电机控制系统,步进电机背景与现状、硬件设计、软件设计及其仿真都做了详细的介绍,使我们不仅对步进电机的原理有了深入的了解,也对单片机的设计研发过程有了更加深刻的体会。
基于单片机的步进电机转速控制

电子器件市场调研与系统设计实践专业:***班级:姓名:学号:指导教师:****大学****学院**** 年**月**日基于单片机的步进电机调速与正反转控制系统1 系统要求步进电动机是用电脉冲信号进行控制,将电脉冲信号转换成相应的角位移或线位移的微电动机,它最突出的优点是可以在宽广的频率范围内通过改变脉冲频率来实现调速,快速起停、正反转控制及制动等,并且用其组成的开环系统既简单、廉价,又非常可行,因此在打印机等办公自动化设备以及各种控制装置等众多领域有着极其广泛的应用。
随着微电子和计算机技术的发展,步进电动机的需求量与日俱增,研制步进电机驱动器及其控制系统具有十分重要的意义。
本设计基于单片机控制的步进电机设计课题是以单片机为主控制模块,从而实现电机的启停、正反转和调速的目的的一个设计课题。
在课题设计之前,通过互联网了解到了当前步进电机的发展状况及发展前景。
同时也了解了当今最先进的步进电机所具备的功能,方便为课题设计提供参考和借鉴;最后,通过画原理框图的形式,以最直观的方式为整个课题设计制定了流程及要求。
1.1 设计目的《电子器件市场调研与系统设计实践》是本专业的重要实践教学环节,强调实际应用技能训练。
结合自动化专业系列课程的学习,培养我们对电子器件的认知,锻炼我们的市场调研能力,加深我们对自动化专业系列课程知识的掌握。
通过课程设计环节培养学生与人交往、独立思考和处理问题的能力。
1.2 设计内容及要求本次课程设计所选的步进电机是四相步进电机,采用的方法是利用单片机控制步进电机的驱动。
步进电机是一种将电脉冲转化为角位移的执行机构。
当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(称为“步距角”),它的旋转是以固定的角度一步一步运行的。
可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。
本次课程设计就是通过改变脉冲频率来调节步进电机的速度的,并且通过数码管显示其转速的级别。
基于单片机的电动机正反转控制设计要点

基于单片机的电动机正反转控制设计学生:xxx(指导教师:xxx)(xxxxxx电气信息工程学院)摘要:基于单片机的基本理论,本文设计了一种步进电机控制系统。
该系统通过软硬件的设计调试,实现步进电机能根据设定的参数进行开关加减速控制,使控制系统以最短的时间到达控制终点,而又不发生失步的现象;同时它能准确地控制步进电机的正反转,启动和停止。
硬件是以AT89C51单片机为核心的控制电路,主要包括:开关输入电路、液晶显示电路、步进电机的驱动电路等。
软件部分采用C语言编程,主要包括液晶显示程序、步进电机的正反转即快慢程序等。
通过仿真验证了本文设计系统的实用性能。
关键词:步进电机控制系统;调速;单片机The design of motor control system based on SCMStudent:Zhou Tianhang(Supervisor:Liu Yunxia)Electrical and Information Engineering Department of Huainan Normal University Abstract:The basic theory based on SCM. this paper designs a kind of stepping motor control system. The system goes through the design of software and hardware.Realize the stepper motor can switch the acceleration and deceleration controlaccording to the given parameters which makes the control system in the shortesttime to finish and not out of step. At the same time, it can control the reversing thestepper motor accurately, start and stop. The hardware control circuit AT89C51microcontroller as the core mainly. Include: switch input circuit, LCD displayingcircuit, stepper motor drive circuit. The software is programmed by C language.Include: LCD display program and the stepper motor speed program .The practicalperformance of the design of the system is validated by simulation.Key words: Stepping motor control system; speed control; Single-chip Computer1 绪论1.1 设计研究的目的和意义由于步进电机不需要位置传感器或速度传感器就可以实现定位,即使在开环状态下它的控制效果也是令人非常满意的,这有利于装置或设备的小型化和低成本,因此步进电机在计算机外围设备、数控机床和自动化生产线等领域中都得到了广泛的应用。
单片机课设步进电机控制正反转【最新】

单片机课程设计报告设计题目:步进电机控制系统学院自动化与信息工程学院专业电气工程及其自动化班级姓名学号指导教师王水鱼2010 年秋季学期目录1.设计目的 (2)2.设计的主要内容和要求 (2)3.题目及要求功能分析 (2)4.设计方案 (5)4.1 整体方案 (5)4.2 具体方案 (5)5.硬件电路的设计 (6)5.1 硬件线路 (6)5.2 工作原理 (7)5.3 操作时序 (8)6. 软件设计 (8)6.1 软件结构 (8)6.2 程序流程 (9)6.3 源程序清单 (9)7. 系统仿真 (9)8. 使用说明 (10)9. 设计总结 (10)参考文献 (11)附录 (12)步进电机的控制1.设计目的(1)熟悉单片机编程原理。
(2)熟练掌握51单片机的控制电路和最小系统。
(3)单片机基本应用系统的设计方法。
2.设计的主要内容和要求(1)查阅资料,了解步进电机的工作原理。
(2)通过单片机给参数控制电机的转动。
(3)通过按钮控制启停及反转。
(4)其他功能。
3.题目及要求功能分析步进电机:步进电机是一种将电脉冲转化为角位移的执行机构。
当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(称为“步距角”),它的旋转是以固定的角度一步一步运行的。
可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。
步进电机可以作为一种控制用的特种电机,利用其精度高等特点,广泛应用于各种工业控制系统中。
三相单、双六拍步进电机的结构和工作原理:三相单、双六拍步进电机通电方式:这种方式的通电顺序是:U-U V-V-VW-W-WU-U或为U-UW-W-WV-V-VU-U。
按前一种顺序通电,即先接通U相定子绕组;接着是U、V两相定子绕组同时通电;断开U相,使V相绕组单独通电;再使V、W两相定子绕组同时通电;W 相单独通电;W、U两相同时通电,并依次循环。
单片机电机正反转程序的设计与实现

单片机电机正反转程序的设计与实现下载温馨提示:该文档是我店铺精心编制而成,希望大家下载以后,能够帮助大家解决实际的问题。
文档下载后可定制随意修改,请根据实际需要进行相应的调整和使用,谢谢!本店铺为大家提供各种各样类型的实用资料,如教育随笔、日记赏析、句子摘抄、古诗大全、经典美文、话题作文、工作总结、词语解析、文案摘录、其他资料等等,如想了解不同资料格式和写法,敬请关注!Download tips: This document is carefully compiled by the editor. I hope that after you download them, they can help you solve practical problems. The document can be customized and modified after downloading, please adjust and use it according to actual needs, thank you!In addition, our shop provides you with various types of practical materials, such as educational essays, diary appreciation, sentence excerpts, ancient poems, classic articles, topic composition, work summary, word parsing, copy excerpts, other materials and so on, want to know different data formats and writing methods, please pay attention!一、引言随着工业自动化的发展,电机在各类机械设备中扮演着越来越重要的角色。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
电机控制课程设计报告书题目基于单片机原理的步进电机的正反转目录目录 (1)摘要 (1)1.概述 (2)1.1课程设计的任务和要求 (2)1.2设计思路框架 (3)1.3设计方案的模块解释 (3)2.系统硬件设计 (3)2.1单片机最小系统原理介绍 (3)2.1.1 AT89C51的工作原理 (4)2.1.2复位电路的工作原理 (7)2.1.3晶振电路的工作原理 (8)2.2电机驱动电路原理介绍 (9)3.系统软件设计 (10)3.1系统流程图 (10)3.2系统程序分析 (11)4.调试过程与结果 (19)5.总结与体会 (20)6.参考资料 (21)7.附录 (22)摘要介绍了步进电机正反转控制原理及其接口驱动控制电路,编制了基于MCS-51单片机的步进电机正反转控制的子程序,并应用wave软件进行了仿真。
证明在并行口控制中,可以利用软件实现环行脉冲分配,实现程序较简单,同时还可以节省硬件投资。
结合单片机控制步进电动机的实际工作环境,从提高控制系统运行的可靠性角度,讨论了实际应用的软件抗干扰技术。
关键词单片机;步进电机;正反转控制1.概 述1.1课程设计的任务和要求电机控制课程设计是考察学生利用所学过的电机控制专业知识,进行综合的电机控制系统设计并最终完成实际系统连接,能够使学生对电气与自动化的专业知识进行综合应用,培养学生的创新能力和团队协作能力,提高学生的动手实践能力。
最终形成一篇符合规范的设计说明书,并参加综合实践答辩,为后期的毕业设计做好准备。
本次设计考核的能力主要有:专业知识应用能力,包括电路分析、电子技术、单片机、检测技术、电气控制、电机与拖动、微特电机及其驱动、计算机高级语言、计算机辅助设计、计算机办公软件等课程,还包括本专业的拓展性课程如变频器、组态技术、现场总线技术、伺服电机等课程。
项目设计与运作能力,团队协作能力,技术文档撰写能力,PPT 汇报与口头表达能力。
电气与自动化系统的设计与实际应用能力。
要求完成的工作量包括:制作实际成品,并现场演示效果。
学生结合课题进行PPT 演讲与答辩。
学生上交课题要求的各类设计技术文档。
1.2设计思路框架1.3设计方案的模块解释本系统主要由电源模块、控制模块、电机驱动模块、按键中断模块等四个模块组成。
电源模块的功能是将交流220V 电源经过整流转化为直流+5V 电源,以供给控制、显示、驱动等模块供电。
控制模块是系统的主导作用,即51单片机的最小系统,用来发送信号以控制电机及显示。
电机驱动模块使用的是ULN2003芯片。
ULN2003的每一对达林顿都串联一个2.7K的基极电阻,在5V的直流工作电压下它能与TTL和CMOS电路直接相连,可以直接处理原先需要标准逻辑缓冲器来处理的数据。
按键模块则分为启动按键和中断按键,启动按键使用的是单片机普通的I/O口。
用来控制系统启动。
中断按键则是使用的外部中断口(P3.2,P3.3)。
在系统运行时则可以随时控制电机的加减速。
2.系统硬件设计2.1单片机最小系统原理介绍该电路工作原理:本项目中选用了最基础的C51单片机做为其控制核心,单片机最小系统,或者称为最小应用系统,是指用最少的元件组成的单片机可以工作的系统,本设计采用AT89C51单片机,最小系统一般应该包括:单片机、晶振电路、复位电路、电源电路。
单片机最小系统复位电路的极性电容C3的大小直接影响单片机的复位时间,一般采用10~30uF,51单片机最小系统容值越大需要的复位时间越短。
51单片机最小系统晶振X1也可以采用6MHz或者12MHz,在正常工作的情况下可以采用更高频率的晶振,51单片机最小系统晶振的振荡频率直接影响单片机的处理速度,频率越大处理速度越快。
单片机最小系统起振电容C2、C3一般采用15~33pF,并且电容离晶振越近越好。
P0口为开漏输出,作为输出口时需加上拉电阻RP1,阻值一般为10k。
设置为定时器模式时,加1计数器是对内部机器周期计数(1个机器周期等于12个振荡周期,即计数频率为晶振频率的1/12)。
计数值N乘以机器周期Tcy就是定时时间t.设置为计数器模式时,外部事件计数脉冲由T0或T1引脚输入到计数器。
在每个机器周期的S5P2期间采样T0、T1引脚电平。
当某周期采样到一高电平输入,而下一周期又采样到一低电平时,则计数器加1,更新的计数值在下一个机器周期的S3P1期间装入计数器。
由于检测一个从1到0的下降沿需要2个机器周期,因此要求被采样的电平至少要维持一个机器周期。
当晶振频率为12MHz时,最高计数频率不超过1/2MHz,即计数脉冲的周期要大于2ms。
图2-1最小系统电路图2.1.1 AT89C51的工作原理AT89C51是一个低电压,高性能CMOS8位单片机带有4K字节的可反复擦写的程序存储器(PENROM)。
和128字节的存取数据存储器(RAM),这种器件采用ATMEL公司的高密度、不容易丢失存储技术生产,并且能够与MCS-51系列的单片机兼容。
片内含有8位中央处理器和闪烁存储单元,有较强的功能的AT89C51单片机能够被应用到控制领域中。
本设计采用AT89C51,它提供以下的功能标准:4K字节闪烁存储器,128字节随机存取数据存储器,32个I/O口,2个16位定时/计数器,1个5向量两级中断结构,1个串行通信口,片内震荡器和时钟电路。
另外,AT89C51还可以进行0HZ的静态逻辑操作,并支持两种软件的节电模式。
闲散方式停止中央处理器的工作,能够允许随机存取数据存储器、定时/计数器、串行通信口及中断系统继续工作。
掉电方式保存随机存取数据存储器中的内容,但震荡器停止工作并禁止其它所有部件的工作直到下一个复位。
VCC:电源电压GND:地P0口:P0口是一组8位漏极开路双向I/O口,即地址/数据总线复用口。
作为输出口时,每一个管脚都能够驱动8个TTL电路。
当“1”被写入P0口时,每个管脚都能够作为高阻抗输入端。
P0口还能够在访问外部数据存储器或程序存储器时,转换地址和数据总线复用,并在这时激活内部的上拉电阻。
P0口在闪烁编程时,P0口接收指令,在程序校验时,输出指令,需要接电阻。
P1口:P1口一个带内部上拉电阻的8位双向I/O口,P1的输出缓冲级可驱动4个TTL电路。
对端口写“1”,通过内部的电阻把端口拉到高电平,此时可作为输入口。
因为内部有电阻,某个引脚被外部信号拉低时输出一个电流。
闪烁编程时和程序校验时,P1口接收低8位地址。
P2口:P2口是一个内部带有上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动4个TTL电路。
对端口写“1”,通过内部的电阻把端口拉到高电平,此时,可作为输入口。
因为内部有电阻,某个引脚被外部信号拉低时会输出一个电流。
在访问外部程序存储器或16位地址的外部数据存储器时,P2口送出高8位地址数据。
在访问8位地址的外部数据存储器时,P2口线上的内容在整个运行期间不变。
闪烁编程或校验时,P2口接收高位地址和其它控制信号。
P3口:P3口是一组带有内部电阻的8位双向I/O口,P3口输出缓冲故可驱动4个TTL电路。
对P3口写如“1”时,它们被内部电阻拉到高电平并可作为输入端时,被外部拉低的P3口将用电阻输出电流。
P3口除了作为一般的I/O 口外,更重要的用途是它的第二功能,如下表2-1所示:端口引脚第二功能P3.0RXDP3.1TXDP3.2INT0P3.3INT1P3.4T0P3.5T1P3.6WRP3.7RD表2-1P3口还接收一些用于闪烁存储器编程和程序校验的控制信号。
RST:复位输入。
当震荡器工作时,RET引脚出现两个机器周期以上的高电平将使单片机复位。
ALE/ :当访问外部程序存储器或数据存储器时,ALE输出脉冲用于锁存地址的低8位字节。
即使不访问外部存储器,ALE以时钟震荡频率的1/16输出固定的正脉冲信号,因此它可对输出时钟或用于定时目的。
要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲时,闪烁存储器编程时,这个引脚还用于输入编程脉冲。
如果必要,可对特殊寄存器区中的8EH单元的D0位置禁止ALE操作。
这个位置后只有一条MOVX和MOVC指令ALE才会被应用。
此外,这个引脚会微弱拉高,单片机执行外部程序时,应设置ALE无效。
PSEN:程序储存允许输出是外部程序存储器的读选通信号,当AT89C51由外部程序存储器读取指令时,每个机器周期两次PSEN 有效,即输出两个脉冲。
在此期间,当访问外部数据存储器时,这两次有效的PSEN 信号不出现。
EA/VPP:外部访问允许。
欲使中央处理器仅访问外部程序存储器,EA端必须保持低电平。
需要注意的是:如果加密位LBI被编程,复位时内部会锁存EA 端状态。
如EA端为高电平,CPU则执行内部程序存储器中的指令。
闪烁存储器编程时,该引脚加上+12V的编程允许电压VPP,当然这必须是该器件是使用12V编程电压VPP。
XTAL1:片内振荡器反相放大器和时钟发生线路的输入端。
使用片内振荡器时,连接外部石英晶体和微调电容。
XTAL2:片内振荡器反相放大器的输出端。
当使用片内振荡器时,外接石英晶体和微调电容。
2-2 AT89C51引脚2.1.2复位电路的工作原理单片机在启动运行时需要复位,使CPU以及其他功能部件处于一个确定的初始状态,并从这个状态开始工作,另外,在单片机工作过程中,如果出现死机时,也必须对单片机进行复位,使其重新开始工作。
电路中C1(电解电容)、R2组成复位电路,它的作用是将单片机内部特殊功能寄存器和端口寄存器恢复到初始状态,从内部FLASH存储器的初始状态开始执行。
如图所示,当要对晶片重置时,只要按此开关就能完成LED和开关的重置。
复位是单片机的初始化操作,其主要功能是把PC初始化为0000H,使单片机从0000H单元开始执行程序。
单片机的RST管脚为主机提供了一个外部复位信号输入口。
复位信号是高电平有效,高电平有效的持续时间为2个机器周期以上。
单片机的复位方式可由手动复位方式完成。
RST引脚是复位信号输入端,复位信号为高电平有效,其有效时间应持续24个振荡周期以上才能完成复位操作,若使用6MHz晶振,则需持续4μS以上才能完成复位操作。
在通电瞬间,由于RC的充电过程,在RST端出现一定宽度的正脉冲,只要该正脉冲保持10ms以上,就能使单片机自动复位。
CPU在第二个机器周期内执行内部复位操作,以后每个机器周期重复一次,直至RST端电平变低。
在单片机复位期间,AlE 和信号都不产生。
复位操作将对部分专用寄存器产生影响。
上电瞬间由于电容C 上无储能,其端电压近似为零,RST 获得高电平,随着电容器C 的充电,RST 引脚上的高电平将逐渐下降,当RST 引脚上的电压小于某一数值后,单片机就脱离复位状态,进入正常工作模式。