毕业设计论文串行显示的步进电机单片机控制系统设计.doc

上传人:sccc 文档编号:4861903 上传时间:2023-05-20 格式:DOC 页数:50 大小:613.02KB
返回 下载 相关 举报
毕业设计论文串行显示的步进电机单片机控制系统设计.doc_第1页
第1页 / 共50页
毕业设计论文串行显示的步进电机单片机控制系统设计.doc_第2页
第2页 / 共50页
毕业设计论文串行显示的步进电机单片机控制系统设计.doc_第3页
第3页 / 共50页
毕业设计论文串行显示的步进电机单片机控制系统设计.doc_第4页
第4页 / 共50页
毕业设计论文串行显示的步进电机单片机控制系统设计.doc_第5页
第5页 / 共50页
点击查看更多>>
资源描述

《毕业设计论文串行显示的步进电机单片机控制系统设计.doc》由会员分享,可在线阅读,更多相关《毕业设计论文串行显示的步进电机单片机控制系统设计.doc(50页珍藏版)》请在三一办公上搜索。

1、摘 要 单片机是把主要的计算机功能部件都集成在一块芯片上的微型计算机。它是一种集微处理器和多种接口于一体的微控制器,被广泛应用在智能产品和工业自动化上,而51单片机是个单片机中最为典型和最有代表性的一种。我的设计就是以MCS51系列中的8751H为核心,与键盘、显示器连接,通过调节脉冲信号频率,进而实现对步进电动机转速的控制。步进电机是一种易于精确控制的电机,由于其良好的性能而受到广泛的应用。其控制方法也多种多样。8751H为核心的微机控制调速器很好解决了各种控制技术问题。整个系统结构 简单。通过改变软件设计,可灵活地实现各种控制功能。我选择的控制方法:对单片机8751H进行编程,实现对四相步

2、进电机的控制,以达到精确定位的目的。使8751H单片机并行口P1口高四位P1.7P1.4 分别与驱动电路的接口A、B、C、D 相连,并使驱动电路的4 个输出引脚分别与步进电机的4 、3 、2 、1四个励磁线圈的引脚相连。通过对单片机进行编程,使数据从P1口的高四位输出经驱动电路放大后控制步进电机,使其按照单片机编写的程序按步骤的进行正序旋转或逆序旋转。设计时考虑到CPU在执行指令时可能受到干扰的冲击,导致程序”跑飞”或者进入”死循环”,因此,设计了看门狗电路,使用的是MAXIM公司生产的微处理系统监控集成芯片MAXI813。本文还详细地给出了相关的硬件框图和软件流程图,并编制了该汇编语言程序。

3、关键字:8751H;步进电动机;单片机控制; AbstractThe single chip microcomputer is the microcomputer,which intergrates the main computer function part on a chip.It is a microcontroller which is a collection of microprocessor and many kinds of interfaces in a body, which is widely applied in the intelligent product and

4、 in the industrial automation, but 51 SCM is the most typical and the most repesentative one kind in SCM. This design takes MCS-51series 8751H as a core, connects with the keyboard and the monitor, adjusts the pulse signal frequency, then realizes the stepping motor speed control.The stepping motor

5、is a kind of motor easy to control.It is used widely for its property.There are many ways to control the stepping motor. The Microcomputer control speed regulator taking 8751H as a core solves the diversifyed kind of controltechnic. The whole system structure is simple. Diversified kind of control f

6、unction is realized flexibly by changing software design. My design method is programming with SCM 8751H, realizing the control of the stepping motor in order to achieve the accurate orientation.Connect the high four bits P1.7P1.4 of 8751Hs parallel P1 with driver circuit interface four input pins A

7、,B,C,D repectively, and connect the output pins of the driver circuit with the four input exciting coil pins of the stepping motor. Programming to SCM makes the data output of the high four bits to control the stepping motor after amplified by the driver circuit, which makes the stepping motor rotat

8、e clockwise and anticlockwise. The possible impacts during the CPU operation which leads the “running out”,or “death cycle”of program are taken into consideration.Therefore,the”watchdog”circuit is designed using microprocessor integrated chip MAXI813 produced by United States MAXIM. This article in

9、detail has given the related hardware diagram and the software fiow chart,and has established this assembly language procedure.The keyword :8751H;stepping motor; SCM control46目 录摘 要IABSTRACTII第1章 引言1第2章 概述3第3章 主要器件介绍63.1单片机(8751)系统简介63.1.1 CPU结构73.1.2 I/O接口线93.1.3 定时器/计数器T0、T1103.1.4 存储器133.1.5地址锁存器

10、74LS373153.2 8255芯片介绍153.2.1 8255 内部结构153.2.2引脚功能163.2.3工作方式17第4章 步进电动机194.1步进电动机的结构194.2 步进电动机的工作原理194.3 步进电动机的工作方式204.4步进电动机的驱动21第5章 硬件设计235.1步进电动机的单片机控制235.1.1步进电动机的通电顺序状态表245.2 键盘和显示设计245.2.1键盘245.2.2显示255.3电源电路设计265.4抗干扰设计275.5看门狗电路285.5.1 MAX813L功能简介295.5.2 看门狗电路各引脚功能29第6章 软件设计316.1汇编语言程序设计316

11、.2 主程序336.3键盘扫描程序356.4显示程序39第7章 结论41参 考 文 献42致 谢43附 录44沈阳工业大学专科生毕业设计(论文)沈阳工业大学本科生毕业设计(论文)第1章 引言步进电机是一种将电脉冲转化为角位移的执行机构。通俗一点讲:当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(及步进角)。您可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时您可以通过控制脉冲频率来控制电机转动的速度和加速度,从而达到调速的目的。在非超载的情况下,电机的转速、 停止的位置只取决于脉冲信号的频率和脉冲数,而不受负载变化的影响,即电机加一个脉冲信号,电机

12、 则转过一个步距角。这一线性关系的存在,加上步进电机只有周期性的误差而无累积误差等特点。使得在 速度、位置等控制领域用步进电机来控制变的非常的简单。虽然步进电机已被广泛地应用,但步进电机并不能象普通的直流电机,交流电机在常规下使用。它必须由双环形脉冲信号、功率驱动电路等组成控制系统方可使用。因此用好步进电机却非易事,它涉及到机 械、电机、电子及计算机等许多专业知识。本次设计的步进电机控制系统是以8751为核心的单片机系统。单片机是70年代中期发展起来的一种大规模集成电路芯片,是集CPU、RAM、ROM、I/O接口和中断系统于同一矽片的器件。80年代以来,单片机发展迅速,出现了许多高性能新型机种

13、。在国内由于单片机功能强、体积小、可靠性好和价格便宜等优点,因而得到广泛应用,成为传统工业技术改造和新产品更新换代的理想机种。数字单片机的技术进步反映在内部结构、功率消耗、外部电压等级以及制造工艺上。在这几方面,较为典型地说明了数字单片机的水平。在目前,用户对单片机的需要越来越多,但是,要求也越来越高。下面分别就这三个方面说明单片机的技术进步状况。1.内部结构的进步单片机在内部已集成了越来越多的部件,这些部件包括一般常用的电路,例如:定时器,比较器,A/D转换器,D /A转换器,串行通信接口,Watchdog电路,LCD控制器等。 2.功耗、封装及电源电压的进步 现在新的单片机的功耗越来越小,

14、特别是很多单片机都设置了多种工作方式,这些工作方式包括等待,暂停,睡眠,空闲,节电等工作方式。Philips公司的单片机P87LPC762是一个很典型的例子,在空闲时,其功耗为1.5 mA,而在节电方式中,其功耗只有0.5mA。而在功耗上最令人惊叹的是TI公司的单片机MSP430系列,它是一个 16位的系列,有超低功耗工作方式。它的低功耗方式有LPM1、LPM3、LPM4三种。当电源为3V时,如果工作于 LMP1方式,即使外围电路处于活动,由于CPU不活动,振荡器处于14MHz,这时功耗只有50?A。在LPM3 时,振荡器处于32kHz,这时功耗只有1.37A。在LPM4时,CPU、外围及振荡

15、器32kHz都不活动,则功耗只有0.17A。 3.工艺上的进步 现在的单片机基本上采用CMOS技术,但已经大多数采用了0.65m以上的光刻工艺,有个别的公司,如Motorola公司则已采用0.35m甚至是0.25m技术。这些技术的进步大大地提高了单片机的内部密度和可靠性。 本次我们所设计的单片机控制系统。使用的是八位的单片机8751H,串行的显示输入并且使用了8255作为端口扩展芯片。显示系统使用的是五个74LS164串联在一起,并且使用一个三极管来控制数码管的电源,只有当需要显示的内容全部输入到显示器中后三极管才点亮数码管,否则熄灭数码管,这样可以消除数码管的闪烁现象。这种显示系统可以连接十

16、几个数码管而没有闪烁现象。串行的显示系统节约了8751H的引脚,为整个控制系统扩展其他功能留有余地。该系统的输入信号由连接在8255上的二乘八键盘提供。8255是通过地址锁存器74LS373连接到单片机的。除此之外,为了防止程序“跑飞”加入了看门狗电路。这个控制系统驱动一个四相步进电机,它不仅可以控制步进电机的起动、转向、转速,而且功耗小,可靠性高,通用性好,因此在当今工业上得到广泛的应用。 在我的这篇文章中首先说明了这次设计的主要内容,包括:步进电机的型号何以写参数,如何控制。然后是简单的介绍了一些单片机和步进电机的基本原理。最后是详细的讲解我的这次设计的硬件部分的结构和功能,软件部分的流程

17、。第2章 概述我的设计就是以MCS51系列中的8751H为核心,与键盘、显示器连接,通过调节脉冲信号频率,进而实现对步进电动机转速的控制。下表列出了我选用的步进电机的一些典型参数:表2-135BY48L01型步机电机参数型号 步距角 相数 电压 电流 电阻 最大静转距 定位转距 转动惯量35BY48L01 7.5 4 12 0.2 60 550 120 7.9 有了这些参数,可以设计出控制电路,因其工作电压为12V,最大电流为0.26A,通过 P1.4P1.7来控制各线圈的接通与切断。开机时,P1.4P1.7均为高电平,依次将P1.4P1.7切换为低电平即可驱动步进电机运行,注意在切换之前将前

18、一个输出引脚变为高电平。如果要改变电机的转动速度只要改变两次接通之间的时间,而要改变电机的转动方向,只要改变各线圈接通的顺序。图2-135BY48L01型步进电机的接线图步进电机的驱动过程: 要求:开机后,电机不转,按下启动键,电机旋转,速度为25转/分,按下加1键,速度增加,按下减1键,速度降低,最高速度为100转/分,最低转带为25转/分,按下停止键,电机停转。速度值要求在数码管上显示出来 按上面的分析,改变转速,只要改变P1.4P1.7轮流变低电平的时间即可达到要求,这个时间不应采用延时来实现,因为会影响到其他功能的实现。这里以定时的方式来实现。下面首先计算一下定时时间。 按要求,最低转

19、速为25转/分,而上述步进电机的步距角为7.5,即每48个脉冲为1周,即在最低转速时,要求为1200脉冲/分,相当于50ms/脉冲。而在最高转速时,要求为100转/分,即48000脉冲/分,相当于12.5ms/脉冲。可以列出下表速度 单步时间(us) TH1 TL1 实际定时(us)表2-2 步进电机转速与定时器定时常数关系25 50000 76 0 49996.826 48077 82 236 48074.1827 46296 89 86 46292.6128 44643 95 73 44640.155 100 12500 211 0 12499.2 表中不仅计算出了TH1和TL1,而且还计

20、算出了在这个定时常数下,真实的时间,可以根据这个计算值来估算真实速度与理论速度的误差值。表中TH1和TL1是根据定时时间算出来的定时初值,这里用到的晶振是11.0592M。有了上述表格,程序就不难实现了。本程序主要由键盘程序、显示器程序、步进电机驱动程序三部份组成,主程序首先初始化各变量,将显示器的高3位消隐,步进电机驱动的各引脚均输出高电平,然后调用键盘程序,并作判断,如果有键按下,则调用键盘处理程序,否则直接转下一步。下一步是将当前的转速值转换为BCD码,送入显示缓冲区。 步进电机的驱动工作是在中断服务程序中实现的,由前述分析,每次的定时时间到达以后,需要将P1.4P1.7依次接通,程度中

21、用了一个变量来实现这一功能,在主程序初始化时,该变量被赋予初值 11110111B,进入到定时中断以后,将该变量取出送ACC累加器,并在累加器中进行左移,这样,该数值就变为1110 1111,然后将该数与P1 相“与”,此时,P1.4即输出低电平,第二次进入中断时,先将该数取反,成为 00010000,然后将该数与P1相“或”,这样,P1.4即输出高电平,关断了相应的线圈,然后将该数重新取出,并作左移即11101111右移成为11011111,将该数与P1相“与”,这样P1.5即输出低电平,依次类推,P1.7P1.4即循环输出低电平。当这一数据变为01111111后,需要作适当的改动,将数据重

22、新变回11110111,进行第二次循环。第3章 主要器件介绍 单片微型计算机是微型计算机的一个重要分支,也是一种非常活跃和颇具生命力的机种。单片微型机简称单片机,特别适用于控制领域,故又称为微控制器。通常单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:中央处理器CPU、存储器和I/O接口电路等。因此,单片机只需要和适当的软件及外部设备相结合,便称为一个单片机控制系统。3.1单片机(8751)系统简介8751是美国INTEL公司生产的八位高档单片机系列,它是MCS-51系列单片机中的一种,是在MCS-48系列基础上发展而成的,也是我国目前应用最广的一种单片机系列。8031单片机的内

23、部主要由CPU、片内RAM、4个标准I/O口、定时器/计数器和中断系统等组成。片内无 ROM存储器,128B RAM位可读写数据存储器,主要放置需频繁处理的数据,4个并行I/O口P1、P2、P3与特殊功能寄存器是统一编址的。为了更好地使用单片机,我们必须首先了解其引脚功能。图2-1是8031的引脚布图,它是标准的40线双列直插式封装的集成电路1。 图3-1 8751引脚图1.电源引脚:VCC电源线(+5V),VSS:接地线。2. 时钟引脚:XTAL1、XTAL2为片内振荡电路输入线。3.PSEN:片外ROM选通线,是外部程序存储器的读选通信号。4.ALE/PTOG:地址所存允许/编程线,配合P

24、0口引脚的第二功能使用。5.EA/VPP:允许访问片外存储器/编程电源线,可以控制8031使用片内ROM还是使用片外ROM。若/EA=1,则允许使用片内ROM;若/EA =0,则允许使用片外ROM。但8031无片内ROM则/EA使终接地。6.RST/VPD:复位备用电源线,第一功能是使8031处于复位状态,第二功能是当电源电压过低时,用于保证片内RAM中信息不丢失2。3.1.1 CPU结构CPU是单片机的核心部件,它由运算器,控制器和专用寄存器组三部分电路组成,数据处理和系统操作控制都是由CPU完成的,单片机主要功能指标也是它决定的。1.算术逻辑单元ALU8751的ALU是一个性能极强的运算器

25、,它可以进行加、减、乘、除四则运算,也可以进行与、或、非、异或等逻辑运算,还具有数据传送、移位、判断和程序转移等功能。8751ALU由一个加法器、两个八位暂存器和一个布尔处理器组成。2.定时控制部件定时控制部件起着控制器的作用,由定时控制逻辑、指令寄存器IR和振荡器OSC等电路组成。指令系统IR用于存放从程序寄存器中取出的指令码,定时控制逻辑用于对IR中指令码译码,并在OSC配合下产生指令的时序脉冲,以完成相应指令的执行。3.专用寄存器组专用寄存器组主要用于指示当前要执行指令的内存地址、存放操作数和指示指令执行后的状态等等。专用寄存器组主要包括程序计数器PC、累加器A、程序状态寄存器PSW、堆

26、栈指示器SP、数据指针DPTR和通用寄存器B等。程序计数器PC(Program Counter)程序计数器PC是一个二进制16位的程序地址寄存器,其内容为将要执行的指令地址,寻址范围达64KB,PC有自动加1功能,从而实现程序的顺序执行。 8751程序计数器PC有16个触发器组成,故它的编码范围为:0000HFFFFH,共64K。也就是说,8751对程序计数器的寻址范围为64KB。累加器A(Accumulator)累加器A为8位寄存器(简称A),是最常用的专用寄存器,功能较多,地位重要;它即可用于存放操作数,也可用来存放运算的中间结果。通用寄存器B(General Purpose Regist

27、er) B寄存器是一个8位寄存器,主要用语乘除运算,乘法运算前,B中放乘数,乘法操作后,乘积的高8位存于B中。除法运算前,B中放除数,除法操作后,余数存放于B中。此外,B寄存器也可作为一般的数据寄存器使用。程序状态字PSW(Program Status Word) PSW是一个八位标志寄存器,用来存放指令执行后的有关状态,其中,PSW7为最高位,PSW0为最低位。表3-1 程序状态字PSWPSW7PSW6PSW5PSW4PSW3PSW2PSW1PSW0CyACF0RS1RS0OVPCy(PSW7)进位标志位Cy是PSW中最常用的标志位。在进行加减运算时,如果操作结果最高位有进位或错位,则Cy有

28、硬件置“1”;否则置“0”在进行位操作时,Cy作位累加器使用,其作用相当于字节操作的累加器A。AC辅助进位位 加减运算中当有低4位向高4位进位或错位时,AC由硬件置“1”;否则AC位被清0。F0用户标志位这是一个供用户定义的标志位,用户在需要时可通过指令将其操作置位或复位,以控制程序执行流向。RS1和RS0寄存器选择位用于设定通用寄存器的组号。通用寄存器共有四组,其对应的关系为:这两个选择位的状态是由用户通过指令设置,用以切换选用的当前通用寄存器组 R0R7。单片机上电或复位后RS1RS0为CPU自动选用0组寄存器为当前通用寄存器组。 表3-2 RS1、RS0对工作寄存器的选择RS1、RS0R

29、0R7的组号R0-R7的物理地址00000H07H01108H0FH10210H17HOV(Overflow)溢出标志位:指示运算过程中是否发生了溢出,由机器执行指令过程中自动形成。P(Parity)奇偶标志位P标志表明累加器A中的个数的奇偶性,在每个指令周期有硬件根据A的内容对P位自动置位或复位。若P=1,则累加器A中1的个数为奇数;若P=0,则累加器A中1的个数为偶数。SP(stack pointor) 堆栈指针SP是一个八位寄存器,能自动加1或减1,专门用来存放堆栈的栈顶地址。计算机中的堆栈是一种能按“先进后出”或“后进先出”的规律存取数据的RAM区域。8751片内RAM共有128个字节

30、,地址范围为00H7FH。堆栈有栈顶和栈底之分,栈底有栈底地址标识,栈顶由栈底地址指示。栈底地址是固定不变的。它决定了堆栈在RAM中的物理位置;栈顶地址始终在SP中,即由SP指示,是可以改变的。因此,当堆栈中空无数据时,栈顶地址必定和栈底地址重合,即SP中一定是栈底地址。这就是说,SP就好象是一个地址指针,始终指示着堆栈中最上面的那个数据。DPTR(Data Pointor)数据指针DPTR是一个16位的寄存器,由两个八位寄存器DPH和DPL拼装而成。其中,DPH为DPTR的高八位,DPL为DPTR的低八位。DPTR可以用来存放片内ROM的地址,也可以用来存放片外RAM和片外ROM的地址3。3

31、.1.2 I/O接口线1.P0口:这组引脚共有八条。为P0口所专用,其中P0。7为最高位,P0。0为最低位。P0口作为通I/O口使用,用于传送CPU的输入/输出数据,P0在访问片外存储器时先是用于传送片外存储器的低8位地址,然后传送CPU对片外存储器的读写数据。2.P1口: P1.7 P1.0 这八条引脚和P 0的8条引脚步类似,P1.7 为最高位,P 1.0为最低位。当P1 口为通用I/O使用时,P1.7 P1.0 的功能和P0 口的第一功能相同,也用于传递用户的输入/输出数据。这组引脚的第一功能和上述两组引脚的第一功能相同,即它可以作为通用/口使用。它的第二功能和P0口引脚第二功能相配合,

32、用于输出片外存储器的高8位地址。3.P3口:这组引脚的第一功能和其于三个断口的第一功能相同,第二功能起控制作用4,如表3-3所列。 表3-3 第二功能端口地址兼用功能P3.0RSD (串行输入口)P3.1TXD (串行输出口)P3.2 INT0 (外部中断0输入)P3.3 INT1(外部中断1输入)P3.4T0 (定时器0的外部输入)P3.5T1 (定时器1的外部输入)P3.6 WR (外部RAM写选通信号)P3.7 RD (外部RAM读选通信号)3.1.3 定时器/计数器T0、T11.定时器/计数器T0、T18751有两个16位的定时器/计数器,它们可以分为定时器模式和计数器模式两种。在这两

33、种模式下,又可以单独设定为方式0,方式1,方式2,方式3工作。定时器模式下的定时时间或计数器模式下的计数值均可由CPU通过程序设定,但是都不能超过各自的最大值。最大定时时间或最大计数值和定时器/计数器位数的设定有关,而位数设定又取决于工作方式的设定5。 定时器/计数器是一个二进制的加1计数器,当计数器满回零时能自动产生溢出中断请求,表示定时时间已到或计数已经终止。 MCS-51对内部定时器/计数器的控制主要是通过TCON和TMOD两个特殊功能寄存器实现的。2.定时器控制寄存器TCON定时器控制寄存器TCON是一个8位寄存器。TR0和TR1分别用于控制内部定时器/计数器T0和T1的启动和停止,T

34、F0和TF1用于标志T0和T1计数器是否产生了溢出中断请求。T0和T1计数器和溢出中断请求还受中断允许寄存器IE中EA,ET0和ET1状态的控制。3.定时器方式寄存器TMOD时器方式寄存器TMOD的地址为89H,CPU可以通过字节传送指令来设定TMOD中各位状态,但不能用位寻址指令改变。M1和M0为方式控制位,C/T为定时器/计数器的模式控制位,GATE为门控位。表3-4 定时器方式寄存器TMODGATEC/TM1M2GATEC/TM1M0T1T0定时器/计数器可以设定为13位,16位,8位重装和两个独立8位计数器等四种工作方式,这由TMOD中M1,M0(D1,D0)两位状态设定。T0的定时器

35、/计数器模式由TMOD中的C/T状态决定:若C/T=0,则T0或(T1)设定为定时器模式计数脉冲由单片机主脉冲经12分频后送来若C/T=1,则T0或(T1)为计数器模式,计数脉冲从单片T0(或T1)输入引脚步上送来。CPU在每个机器周期对 T0(或T1)检测一次,但只有在前一次检测为1和后一次检测为0时才会使计数器加1。因此,计数器不是由外部时钟负边沿触发的,而是在两次检测到负跳变存在时才进行计数的。由于两次检测需要个24时钟脉冲,故T0(或T1)线上输入脉冲的“0”或“1”的持续时间不能少于一个机器周期。通常,T0或T1输入线上的计数脉冲总小于100KHZ。计数器T0的计满回零时能自动使TC

36、ON中的TF0置位,以表示计数器T0产生了溢出中断请求,若此时中断是开放的即:( EA=1和ET0=1),则计数器 T0的溢出中断请求使可为CPU响应5。4.工作方式:8751单片机有T0和T1两个内部定时器/计数器。每个定时器/计数器都属于特殊功能寄存器,T0由8高位TH0和低8位TL0组成,T1由高8位TH1和低8位TL1组成。因此,T0和T1均可通过字节传送指令为它们分别设置初值。定时器/计时器的功能是和它们的工作方式有关的。5.MCS-51对内部定时器/计时器的初始化MCS-51 内部定时器/计数器是可编程的,其工作方式和工作过程均可由MCS-51通过程序对它进行设定和控制。因此,MC

37、S-51在定时器计数器工作前必须先对它进行初始化。初始化步骤:根据题目要素先给定时器方式寄存器TMOD送一个方式控制字,以设定定时器/计数器的响应工作方式。根据实际需要给定时器/计数器选送定时器初值或计数器初值,以确实需要定时器的时间和需要计数的初值。根据需要给中断允许寄存器IE选送中断控制字和给中断优先级IP选送中断优先级字,以开放相应中断优先级。给定时器控制寄存器TCON送命令字,以启动或禁止定时器/计数器的行。6.计数器初值的计算定时器/计数器在计数器模式下工作时必须给计数器选送计数器初值,这个计数器初值是送到TH(TH0/TH1)和TL(TL0/TL1)中的。定时器/计数器的计数器是在

38、计数初值基础上以加法计算的,并能在计数器从“1”全变为全“0”时自动产生定时溢出中断请求。因此,我们可以把计数器计满为零所需要的计数设定为C,计数初值设定为TC,由此便可得到如下的计算通式: TC=M-C (3-1) 式中M为计数器模值,该值和计数器工作方式有关。在方式0时M为213,在方式1时M为216,在方式2和方式3时M为28。7.定时器初值的计算 在定时器模式下,计数器由单片机主脉冲经分频后计数。因此,定时器定时时间的计算公式为: T=(M-TC)T计数 (3-2) 上式也可写成: TC=M-T/T计数 (3-3) 式中M为模值,和定时器和工作方式有关;T计数是单片机时钟周期TCLK1

39、2倍;TC为定时器的定时初值。 在式中,若设TC=0,则定时器定时时间为最大。由于M值和定时器工作方式有关,因此不同工作方式下定时器的最大定时时间也不一样。要使单片机正常工作除了需要供电电源,还需要时钟触发和复位电路。复位电路在看门狗电路中提到,先介绍一下时钟电路。XTAL1XTAL2VSS外部晶振 图3-2 时钟电路本次设计使用的时钟电路,如图3-2,外接晶振的频率为6.0MHZ,因此,采用6.0MHZ的晶振符合系统要求,且能保证足够的速度和稳定的可靠性。外部晶振与电容C1、C2构成并联谐振电路,接在8031的XTAL1和XTAL2引脚上,对外界的电容没有严格要求,但对时钟频率有微调作用,一

40、般选30PF左右。3.1.4 存储器半导体存储器是重要的记忆元件,常用于存储程序、常数、原始数据、中间数据和最终结果。存储器可分为内存储器和外存储器两大类。ROM为程序存储器,主要存放CPU进行操作的指令代码;RAM为数据存储器,主要放置需频繁处理的数据。 MCS51的存储器有片内和片外之分。片内存储器集成在芯片内部;片外存储器又称为外部存储器,是专门的存储器芯片,需要通过印刷电路板上的 三总线和MCS51连接的。片内和片外存储器中,又有ROM和RAM之分。1.ROM存储器8031内部无ROM存储器,只有8751才有4KB ROM,地址范围为0000H0FFFH。无论8031还是8751,都可

41、以外接外部ROM,但片内和片外之和不能超过64KB。8751有64KB ROM的寻址区,其中0000H0FFFH的4KB地址区可以为片内ROM和片外ROM公用,1000HFFFFH的60KB地址区为片外ROM所专用。2.片内RAM存储器RAM存储器主要用来存放数据,故又称为数据存储器。MCS51的RAM存储器有片内和片外之分;片内RAM共128个字节,地址范围为00H7FH;片外RAM共有64KB,地址范围为0000HFFFFH.。片内RAM共有128个字节,分为工作寄存器区、位寻址区和便笺区。工作寄存器区(00H17H)这32个RAM单元共分为四组,8个寄存单元,各组都以R0R7寄存单元编号

42、,用于存放操作数及中间结果等。到底哪一组是当前寄存器组,由RS1,RS0的状态组合决定。位寻址区(20H2FH) 这16个RAM单元具有双重功能,既可作为一般RAM单元使用,进行字节操作,也可以对单元中的每一位进行操作。便笺区(30H7FH)便笺区共有80个RAM单元,按字节存取,一般用于存放用户数据及堆栈区使用6。3.特殊器功能寄存SFR(Special Function Register)特殊功能寄存器是指有特殊用途的寄存器集合,它是RAM的高128单元,其单元地址为80HFFH。8031或8751有21个。每个SFR占用一个RAM单元。 在21个SFR寄存器中,用户可以通过直接寻址指令对

43、它们进行字节存取,也可以对带有“*”号的11个寄存器进行位寻址。在字节型寻址指令中,直接地址的表示方法有两种:一种是使用物理地址,另一种是采用物理标号。在SFR中,可以位寻址的寄存器有11个,共有位地址88个。3.1.5地址锁存器74LS373 74LS373是三态缓冲锁存器,用于锁存8031P0口的低8位地址。当ALE端口为高电平时,选通该芯片,当ALE端口下降沿时把P0口上的地址锁存到该芯片上。3.2 8255芯片介绍3.2.1 8255 内部结构8255是Intel公共司研制的通用I/O接口芯片,芯片内具有RAM并行I/O口和计数器等部件。8255与MCS51单片机接口简单,是单片机应用

44、系统中广泛使用的芯片。现对各部分电路分述如下:1.CPU接口电路它由数据总线缓冲器和读/写控制逻辑组成。由它来实现8255和系统总线的接口。 数据总线接口缓冲器:它是一个8位、双向、三态的缓冲器,与8位数据总线D7-D0相连接。由读/写控制逻辑对三态门进行控制。这个接口是8255与CPU数据总线的接口。CPU向8255写入控制字,或从8255读出状态信息、数据或将数据写入8255都通过这个接口缓冲器传送。读/写控制逻辑:它有6根控制线,接受CPU来的控制信号。由控制信号的不同组合,实现对8255内部操作的控制。这6根线是:RESRT:复位线,用来使8255复位;CS:片选线,决定8255是否被

45、选中;D,A1,A0:两根地址线。由地址A1 ,A0 的不同编码,决定选中8255内部的哪个寄存器,即片内寻址;RD,WD:读、写控制信号线。用来决定数据的传送方向,是从8255读出送到CPU,还是由CPU写入8255。2.内部控制逻辑包括A组控制逻辑和B组控制逻辑两部分。他们从CPU接受控制字,根据控制字来控制8255的工作电路,控制字寄存器共8位:D7-D3这5位在A组控制逻辑内,用来控制口A和口和口C高4位的工作方式;D2-D0这3位在B组控制逻辑内,用来控制口B和口C的底4位的工作方式。它还可以接受来自CPU的命令字,对口C的每一位实现按位置位或复位的控制。3.输入/输出接口电路通常系统利用它来和外部设备相连接。它包括24根输入/输出线、输入缓冲器和输出锁存器,以及相应的控制逻辑。8255总共有3个8位的输入/输出端口,即口A、口B、口C。A,B,C3个端口都可以设定为输入或输出端口,但3个端口功能有些区别。端口A和端口B各自有一个8为数据输出锁存/缓冲器、一个8位的输入缓冲器、(口C输入没有锁存)。在与外设进行数据传送时,把A,B,C3个断口分为两组:由端口A和C的高4位组成A组,称

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号