基于单片机的自动装箱控制系统设计_第1页
基于单片机的自动装箱控制系统设计_第2页
基于单片机的自动装箱控制系统设计_第3页
基于单片机的自动装箱控制系统设计_第4页
基于单片机的自动装箱控制系统设计_第5页
已阅读5页,还剩62页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘 要本文详细介绍了国内自动装箱控制系统的发展现状,发展中所面临的问题。从产品质量、性能及应用方面看自动装箱机的差距;整个行业看国产自动装箱机所存在的问题以及它的发展趋势。同时也详尽的介绍了此次设计中最重要的组成部件单片机的概念、工作原理及设备总体结构,其中包括MCS-51的发展历程,选型依据。设计了一种基于单片机MCS-51的自动装箱机,介绍了所选用的8031、8255等单片机。整个系统通过光电传感器检测产品数目,并且通过数码管实时显示,当下落了设定的产品数目之后停止传送带2的传送。同时启动传送带1,带动箱子到位。根据设计对单片机的I/O口的输入输出进行了分配,并且编写出系统的流程图、电路图及程序。介绍了光电传感器和控制电机的工作原理,随后又介绍了光电传感器的工作原理和传感器选择与设计:光电开关的原理、光电开关应用设计。电机控制系统及系统电源设计,交流电机M1、M2控制系统。最后设计总体程序,实现对产品的自动装箱。关键词:自动装箱 单片机 光电传感器 AbstractThis article in detail introduced the domestic automatic packing control system development present situation, in the development facesquestion. From the product quality, the performance and the application aspect look at the automatic packing machine disparity; The entire profession looked the domestically produced automatic packing machine exists question as well as its development tendency. Simultaneously also in exhaustive introduction this design most important composition part monolithic integrated circuit concept, principle of work and equipment overall structure, including MCS-51development course, shaping basis. Has designed one kind based on the monolithic integrated circuit MCS-51 automatic packing machine, introduced selects 8031, 8255 and so on monolithic integrated circuit. Overall system through photo electricity examination product number, and through digital tube real time display, after whereabouts hypothesis product number stops the conveyer belt 2transmissions. Simultaneously starts conveyer belt 1, drives the box to arrive. According to designed has carried on the assignment to the monolithic integrated circuit I/O mouth input output, and compiled the system the flow chart, the circuit diagram and the procedure. Introduced the electro-optical sensor and controls the electrical machinery the principle of work, afterwards also introduced the electro-optical sensor principle of work and the sensor choice and the design: Photo electricity switch principle, photo electricity switch application design. Electrical machinery control system and system power source design, alternating current machine M1, M2 control system. Finally designs the overall procedure, realizes to the product automatic packing.Key words: Automatic packing single-chip computer electro-optical sensor 目 录第一章 绪论1第一节 自动装箱机的发展概述1一我国自动装箱机的发展1二国产自动装箱机所面临的问题1第二节 总体方案确定2第二章 系统硬件设计4第一节MCS51单片机主要应用特性4第二节 自动装箱系统面板设计及控制原理图6一面板设计6二系统控制原理图7第三节 微型处理器8一8031性能特点9二8031硬件结构及引脚功能9第四节 系统扩展11一I/O接口的扩展12二存储功能扩展18第五节 外围电路设计21一晶振电路设计21二复位电路设计22第六节 输入/输出接口系统设计24一键盘系统设计25二显示系统设计26第七节 传感器选择与设计29一光电开关的原理29二光电开关应用设计31第八节 电机控制电路设计32一固态继电器介绍32二电机控制电路原理33第八节 电源电路设计34第三章 系统软件设计35第一节 软件构思35第二节 数据流程35第三节 程序流程图35一主程序35二显示子程序流程图37三输入给定值中断服务程序38第四章 抗干扰措施39第五章 总结与展望43参考文献44附 录45外文资料52中文译文59致 谢6262第一章 绪论随着我国产品包装行业规模的不断发展,产品呈现出种类数目不断增多、丰富的局面。尤其是产品的生产质量的不断提高,对产品的包装技术提出了更高的要求,特别是对产品自动装箱机提出了更新更高的要求。在当前各种多功能全自动装箱机逐渐进入各企业的情况下,我们有必要对国产产品自动装箱机的应用现状及发展作进一步探讨。在工业生产中,常常需要对产品进行计数、包装。如果用人工完成不但麻烦,而且效率低,劳动强度大。随着微型计算机控制的普及,特别是单片机的应用,给该类系统的设计带来了极大的便利,在本次设计中,将主要介绍单片机控制包装系统的设计方法。第一节 自动装箱机的发展概述一我国自动装箱机的发展 我国早期的产品自动装箱工序主要是采用手工包装,后来随着科学技术的发展,人们逐渐采用机械化装箱。我国最早使用的自动装箱机主要是从国外进口的,20 世纪70 年代中期,天津力生制药厂就曾经进口过意大利生产的全自动装箱机,但由于当时我国包装材料的质量及产品箱子制作工艺等都达不到机器包装的要求,使得自动装箱机一直无法正常使用。所以,全自动装箱机在我国的应用一直无法得到广泛的推进,以致我国产品生产在很长的一段时间内不得不放弃自动装箱机而采用手工操作,使生产效率极端低下。20 世纪80 年代后,相关技术水平获得了飞速发展,包装材料的质量及箱子制作工艺等方面的技术有了明显的进步,全自动装箱机开始得到了应用与推广。也正是此时,产品自动装箱机改变了国外产品一统天下的局面,国产产品自动装箱机开始面市并获得了广泛的应用。20 世纪90 年代末期,一些生产量大的生产企业相继开始采用国产的全自动装箱机来代替手工包装,同时国内一些相关的企业也在研制与生产功能更加全面的全自动产品自动装箱机。二国产自动装箱机所面临的问题目前,影响我国包装产业发展的主要问题是,产品结构和产业布局不尽合理,中低档产品和设备占较大比重;政府和企业研发资金投入不足,产业技术水平不高,性能要求高的自动装箱设备和原辅料主要依赖进口;企业规模小,效益差,产业集中度低,竞争实力不强;法规不健全,标准水平滞后。这种状况,难以适应现代自动包装工业向高技术、国际化、规模化、环保化发展的需要,无法满足我国经济持续、健康、稳定、快速发展对包装工业的需要,不能适应我国产品参与国际大循环的需要。所以我国的自动装箱机应在质量方面、适应性方面、可靠性方面以及工作效率方面来缩小我们与国外的差距,实现包装自动化。整体的自动化包装方案的解决,对自动化是一种全新的飞跃,随着这种趋势的发展,各行业都会加入其中,发挥它强大的功能。第二节 总体方案确定根据“自动装箱”这一目的要求,做如下设计安排:第一,设计一个自动传送产品的传送带,使从生产线过来的产品能自动进入预定位置;第二,设计一个自动传送箱子的传送带,使空箱子能够自动进入,并达到指定位置。装满产品后能自动退出。按照前两项设计其原理图如图1-1所示 图1-1 自动装箱控制原理图如图1-1所示,系统有两个传送带,即包装传送带1和产品传送带2。包装箱传送带1用来传送产品包装箱,其功能是把已经装满的箱子运走,并且用一只空箱子来代替。为使空箱恰好对准产品传送带的末端,使传来的产品刚好落入箱中,在包装箱传送带1的中间安装一个光电传感器1,用于检测包装箱是否到位。产品传送带2将产品从生产车间传送到包装箱。当某一产品被送带传送带的末端,会自动落入箱内,并有检测器2转换成计数脉冲。产品计数可以由硬件完成,也可以由软件完成,本系统采用软件计数方法。系统工作步骤如下:(1) 用键盘设置每个包装箱的满零件数量以及每批产品箱数,并分别存放PARTS和BOXES单元中。(2) 接通电源,使传送带1的驱动电机运转,带动包装箱前行。通过检测光电传感器1的状态,判断传送带1上的包装箱是否到位。(3) 当包装箱运行到检测器1的光源和传感器中间时,关断电机电源,使传送带1停止运动,等待产品装箱。(4) 启动传送带2的驱动电机,使产品沿传送带向前运动,并装入箱内。(5) 当产品一个一个的落下时,将产生一系列脉冲信号,用检测器2检测从检测器2来的输出脉冲,由计算机进行计数,并不断的与存放在PARTS单元中的给定值进行比较。(6) 当零件计数未达到给定值时,控制传送带2继续运动,并装入产品。直到产品个数与给定值相等时,停止传送带2,不再装入产品。(7) 再次启动传送带1,使满产品的箱子继续向前运动,并把存放箱子数的内存单元加1,然后再与给定的产品箱数进行比较。如果箱数不够,则带动下一个空箱到达指定位置,继续上述过程。直到产品箱数与给定值相等,停止装箱过程,等待新的操作命令。只要传送带2上的产品和传送带1上的箱子足够多,这个过程可以连续不断的运行下去。这就是产品自动装箱生产线的流程。必要的时候操作人员可以随时通过停止键(STOP)停止传送带运动,并通过键盘重新设置给定值,然后再启动。第二章 系统硬件设计第一节MCS51单片机主要应用特性MCS-51单片机是美国Intel公司于1980年推出的产品,与MCS-48单片机相比,它的结构更先进,功能更强,在原来的基础上增加了更多的电路单元和指令,指令数达111条,MCS-51单片机可以算是相当成功的产品,一直到现在,MCS-51系列或其兼容的单片机仍是应用的主流产品,各高校及专业学校的培训教材仍用MCS-51单片机作为代表进行理论基础学习。我们也以这一代表性的机型进行系统的设计。MCS-51系列单片机主要包括8031、8051和8751等通用产品,其主要功能如下:8位CPU4kbytes 程序存储器(ROM)128bytes的数据存储器(RAM)32条I/O口线111条指令,大部分为单字节指令21个专用寄存器2个可编程定时/计数器5个中断源,2个优先级一个全双工串行通信口外部数据存储器寻址空间为64kB外部程序存储器寻址空间为64kB逻辑操作位寻址功能双列直插40PinDIP封装单一+5V电源供电MCS-51以其典型的结构和完善的总线专用寄存器的集中管理,众多的逻辑位操作功能及面向控制的丰富的指令系统,堪称为一代“名机”,为以后的其它单片机的发展奠定了基础。正因为其优越的性能和完善的结构,导致后来的许多厂商多沿用或参考了其体系结构,有许多世界大的电气商丰富和发展了MCS-51单片机,像PHILIPS、Dallas、ATMEL等著名的半导体公司都推出了兼容MCS-51的单片机产品,就连我国的台湾WINBOND公司也发展了兼容MCS-51的单片机品种。近年来MCS-51获得了飞速的发展,MCS-51的发源公司Intel由于忙于开发PC及高端微处理器而无精力继续发展自己的单片机,而由其它厂商将其发展,最典型的是PHILIPS和ATMEL公司,PHILIPS公司主要是改善其性能,在原来的基础上发展了高速I/O口,A/D转换器,PWM(脉宽调制)、WDT等增强功能,并在低电压、微功耗、扩展串行总线(I2C)和控制网络总线(CAN)等功能加以完善。8051是MCS-51系列单片机中的代表产品,它内部集成了功能强大的中央处理器,包含了硬件乘除法器、21个专用控制寄存器、4kB的程序存储器、128字节的数据存储器、4组8位的并行口、两个16位的可编程定时/计数器、一个全双工的串行口以及布尔处理器。MCS-51采用模块式结构,MCS-51系列中各种加强型单片机都是以8051为核心加上一定的新的功能部件后组成的,从而使它们完全兼容。表2-1为MCS-51系列单片机常用产品特性。 表2-1 MCS-51系列单片机常用产品特性型号片内存储器I/O线定时器/计数器片外寻址空间(KB)程序数据程序数据80514K ROM128322个16位646487514K EPROM128322个16位64648031无128322个16位646480C514K ROM128322个16位646487C514K EPROM128322个16位646480C31无128322个16位646480524K ROM256323个16位646487524K EPROM256323个16位64648032无256323个16位6464MCS-51具有比较大的寻址空间,地址线宽达16条,即外部数据存储器和程序存储器的寻址范围达216=64kB,这作为单片机控制来说已是比较大的,这同时具备对I/O口的访问能力。此外,MCS-51采用模块化结构,可方便地增删一个模块就可使引脚和指令兼容的新产品,从而容易使产品形成系列化。由于MCS-51集成了几乎完善的8位中央处理单元,处理功能强,中央处理单元中集成了方便灵活的专用寄存器,硬件的加、减、乘、除法器和布尔处理机及各种逻辑运算和转移指令,这给应用提供了极大的便利。MCS-51的指令系统近乎完善,指令系统中包含了全面的数据传送指令、完善的算术和逻辑运算指令、方便的逻辑操作和控制指令、对于编程来说,是相当灵活和方便的。MCS-51单片机的工作频率为2-12MHz,当振荡频率为12MHz时,一个机器周期为1us,这个速度应该说是比较快的。MCS-51把微型计算机的主要部件都集成在一块芯片上,使得数据传送距离大大缩短,可靠性更高,运行速度更块。由于属于芯片化的微型计算机,各功能部件在芯片中的布局和结构达最优化,抗干扰能力加强,工作亦相对稳定。鉴于MCS-51的以上特点,本文的设计就是基于MCS-51的8301型号单片机来设计的自动装箱系统。第二节 自动装箱系统面板设计及控制原理图一面板设计在图2-1中控制面板中设置了一个数字键盘区、两个控制按键(分别是电源开关按键、和运行按键)、两个发光二极管(分别是警报指示、运行指示)、三位数码显示管(用来设置装箱数量)。当运行时,打开电源,用键盘设置包装箱的满零件数量以及每批产品的箱数,并且在三位数码管显示相应的信息。当设置好时,启动START按键,如系统操作运行正常,则运行指示灯亮。当系统出现问题,如没有设置给定值时,则警报灯亮提醒操作者注意,需要重新设置参数后再启动。7821659430警报运行STOPSTART输入显示自动装箱控制系统面板如图2-1所示。图2-1 控制面板二系统控制原理图在本系统设计的自动装箱系统中,采用8031单片机设计一个最小系统,为了读键盘给定值及完成检测和控制,系统中扩展一片8255A可编程接口及程序存储器EPROM 2764其原理图如图2-2所示。在图2-2中所示,8031、74LS373、2764组成最小系统。8031通过8255A的PB口实现给定值或零件计数显示。PA口读入键盘给定值,PC口高4位设置为输入方式,用于检测光电管和START,STOP两个按键的状态。PC口低4位设置为输出方式;其中PC0控制传送带1的电动机;PC1控制传送带2的发动机。为了提高系统的可靠性及减少误操作,用PC2,PC3两条I/O线控制两个状态指示灯,运行指示为绿色,警报指示灯为红色;当系统出现问题的时候,如没有设置给定值时,启动START按键,则警报灯亮提醒操作者注意,需要重新设置参数后再启动。如系统操作运行正常,则运行指示灯亮。图2-2 自动装箱系统控制原理图第三节 微型处理器8031单片机是Intel公司生产的MCS-51系列单片机中的一种,除无片内ROM外,其余特性与MCS-51单片机基本一样。一8031性能特点8031的主要性能包括:(1)与MCS-51位控制器产品系列兼容。(2)宽工作电压范围,VCC可为2.7V6V。(3)全静态工作,可从0Hz 至16Hz。(4)1288位内部RAM。(5)32条可编程I/O线。(6)两个16位定时器/计数器。(7)中断结构具有5个中断源和2个优先级。二8031硬件结构及引脚功能8031的内部硬件结构如图2-3所示:图2-3 8031引脚图在图2-3中所示,8031单片机采用40引脚双列直插封装(DIP)形式。采用方形封装工艺。由于受到引脚数目的限制,所以有一些引脚具有第二功能。在单片机的40条引脚中,有2条专用于主电源的引脚,2条外接晶体的引脚,4条控制和其它电源复用的引脚,32条输入/输出引脚。下面分别说明这些引脚的名称和功能。(1)主电源引脚Vcc和GNDVcc:芯片主电源,正常工作时接+5V电源。GND:接电源地。(2)时钟振荡引脚XTAL1和XTAL2XTAL1: 接外部晶体的一端。在单片内部,它是反相放大器的输入端,该放大器构成了片内振荡器。在测外部时钟电路时,对于HMOS单片机,此引脚必须接地;对CHMOS单片机,此引脚作为驱动端。XTAL2: 接外部晶体的另一端。在单片机内部,接至上述振荡器的反相放大器的输出端,振荡器的频率是晶体振荡频率。若采用外部时钟电路时,对于HMOS单片机,该引脚输入外部时钟脉冲;对于CHMOS单片机,此引脚应悬空(3)控制信号引脚RST/Vpd、ALE/ 、和/Vpp。ALE/: 地址锁存使能输出/编程脉冲输入端。在扩展系统时,ALE用于控制把P0口输出的低8位地址锁存起来,以实现低8位地址和数据的隔离,P0口作为数据地址复用口线。当访问单片机外部程序或数据存储器或外接I/O口时,ALE输出脉冲的下降沿用低8位地址的锁存信号;即使不访问单片机外部程序或数据存储器或外接I/O口,ALE端仍以晶振频率的1/6输出脉冲信号,因此可以作为外部时钟或外部定时信号使用。但应注意,此时不能访问单片机外部程序、数据存储器或外设I/O接口。: 片外程序存储器读选通信号。在CPU向片外程序存储器读取指令和常数时,每个机器周期两次低电平有效。但在此期间,每当访问外部数据存储器或I/O接口时无效出现。/Vpp: 访问程序存储器控制信号/编程电源输入端。当端输入高电平时,单片机访问片内的程序存储器,在低4KB地址时,将自动转向执行外部程序存储器的程序。当EA输入低电平时,CPU仅访问片外程序存储器。在对8751EPROM编程时,此引脚接+21V的编程电压VPP。RST/Vpd: 复位/掉电保护信号输入端。单片机上电后,只要在该引脚上输入24个振荡周期2个机器周期0宽度以上的高电平就会使单片机复位;若在RST与Vcc之间接一个10F的电容,则可实现单片机上电自动复位。RST/Vpd具有复位功能,在主电源Vcc掉电期间,该引脚可接上+5V的备用电源。当Vcc掉到低于规定的电平,而Vpd在其规定的电压范围内时,+5V就向片内RAM 提供备用电源,以保持片内RAM中的数据不丢失,复位后能继续正常运行。(4)输入/输出(I/O)引脚P0、P1、P2、P3(共32根)P0.0P0.7: P0口是一个8位双向I/O端口。在访问片外存储器时,它分时提供低8位地址和作8位双向数据总线。在EPROM编程时,从P0口输入指令字节;在验证程序时,则输出指令字节(验证时要外接上拉电阻)。P0口能一吸收电流的方式驱动8个LSTTL负载。P1.0P1.7: P1口是8位准双向I/O端口。在EPROM编程和程序验证时,它输入低8位址。P1口能驱动4个LSTTL负载。P2.0P2.7: P2口是8位准双向I/O端口。在CPU访问外部存储器时,它输出高8位地址。在对EPROM编程和程序验证时,它输出高8位地址。P2口可驱动4个LSTTL负载。P3.0P3.7: P3口是8位准双I/O端口。它是一个复用功能口。作为第一功能使用时,为普通I/O口,其功能和操作方法与P1口相同。作为第二功能使用时,各引脚的定义如表2-2所示。P3口的每一引脚均可独立定义第一功能的输入输出或第二功能。P3口能驱动4个LSTTL负载。表2-2 各口线的第二功能定义口线引脚第二功能P3.010RXD(串行输入口)P3.111TXD(串行输出口)P3.212(外部中断0)P3.313(外部中断1)P3.414T0(定时器0外部输入)P3.515T1(定时器1外部输入)P3.616(外部数据存储器写脉冲)P3.717(外部数据存储器读脉冲)第四节 系统扩展8031具有很强的扩展功能,允许扩展各种外围电路以补充片内资源不足,适应特定应用的需要,扩展内容包括数据存储器、程序存储器、I/O接口等扩展结构如图2-4所示: 8031数据存储器I/O接口程序存储器图2-4 8031系统扩展结构图一I/O接口的扩展由于我们采集的数据量较多,因此CPU的I/O口线不够用,所以我们使用8255A来扩展I/O口,以满足系统的要求。8255A是Intel公司生产的通用可编程并行I/O接口芯片。8031和8255A相连可为外设提供三个8位I/O端口,允许采用同步、异步和中断方式传送I/O数据。18255A内部结构和引脚功能(1)内部结构8255A内部由四部分电路组成。它们是A口、B口和C口,A组控制器和B控制器,数据缓冲器及读写控制逻辑,如图2-5所示。A口、B口和C口。A口、B口和C口均为8位I/O数据口,但结构上略有差别。A口由一个8位的数据输出缓冲/锁存器和一个8位的数据输入缓冲/锁存器组成。B口由一个8位的数据输出缓冲/锁存器和一个8位的数据输入缓冲器组成。三个端口都可以和外设相连,分别传送外设的输入/输出数据或控制信息。 A、B组控制电路。这是两组根据CPU的命令字控制8255工作方式的电路。A组控制A口及C口的高4位,B组控制B口及C口的低4位。数据总线缓冲器。它是一个8位的双向三态驱动器,用于与单片机的数据总线相连,传送数据或控制信息。读/写控制逻辑。这部分电路接收MCS-51送来的读/写命令和选口地址,用于控制对8255A的读/写。图2-5 8255A芯片的内部结构图(2)引脚功能8255A有40条引脚,采用双列直插式封装。如图2-6所示。数据总线(8条):D0D7:三态双向数据总线,8255A与CPU数据传送的通道,当CPU 执行输入输出指令时,通过它实现8位数据的读/写操作,控制字和状态信息也通过数据总线传送。控制总线(6条):RESET: 复位信号,输入高电平有效。一般和单片机的复位相连,复位后,8255A所有内部寄存器清0,所有口都为输入方式。:片选信号线,当这个输入引脚为低电平时有效,表示芯片被选中,允许8255A与CPU进行通讯。:读信号线,当这个输入引脚为低电平时,允许8255A通过数据总线向CPU发送数据或状态字。:写入信号,当这个输入引脚为低电平时,允许CPU将数据或控制字写入8255A。图2-6 8255A引脚图并行I/O总线(24条):这些总线用于和外设相连,分别与A、B、C口相对应,用于8255A和外设之间传送数据,共分三组:PA0PA7:端口A输入输出线,一个8位的数据输出锁存器/缓冲器,一个8位的数据输入锁存器。PB0PB7:端口B输入输出线,一个8位的I/O锁存器,一个8位的输入输出缓冲器。PC0PC7:端口C输入输出线,一个8位的数据输出锁存器/缓冲器,一个8位的数据输入缓冲器。电源线(2条):VCC为5V电源线,允许变化10%;GND为地线。A0、A1:地址输入线。当=0,芯片被选中时,这两位的4种组合00、01、10、11分别用于选择A、B、C口和控制寄存器。其组合如表2-3。表2-3 8255A控制信号功能表A0A1端口地址端口功能0000100 HA口读A口0001000 HA口写A口0010101HB口读B口0011001HB口写B口0100102HC口写C口0101002HC口读C口0111003H控制口写控制字1总线高阻28255A方式控制字8255A有两个控制字:方式控制字和C口单一置复位控制字。用户通过程序可以把这两个控制字送到8255A的控制寄存器(A1A011B),以设定8255A的工作方式和C口各位状态。这两个控制字以D7位状态作为标志。8255A各端口工作于什么方式和是输入还是输出方式,是由方式控制字决定的。方式控制字格式如图2-7所示。D7为控制字标志位,若D7=1,则本控制字为方式控制字,若D70,则本控制字为C口单一置复位控制字。D6D3为A组控制位。其中,D6和D5为A组方式选择位:若D6D500,则A组设定为方式0;若D6D501,则A组设定为方式1:若D6D51(为任意),则A组设定为方式2。D4为A口输入/输出控制位:若D40,则PA0PA7,用于输出数据;若D40,则PA0PA7用于输入数据。D3为C口高4位输入/输出控制位:若D30,则PC4PC7为输出数据方式;若D31,则PC4PC7为输入方式。图2-7 方式控制字D2D0为B组控制位,其作用和D6D3类似。其中,D2为方式选择位,若D20,则B组设定为方式0,若D21,则B组设定为方式1。D1为B口输入/输出控制位,D10,则PB0PB7用于输出数据,若D11,则PB0PB7用于输入数据。D0为C口低4位输入/输出控制位,若D00,则PC0PC3用于输出数据,若D01,则PC0PC3用于输入数据。如图2-8所示:图2-8 置位控制字38255A的工作方式8255A有三种工作方式:方式0(Mode0)、方式1(Mode1)和方式2(Mode2)。正确的选用方式控制字,并把它通过程序送给8255A的控制字寄存器就可设定8255A的工作方式。方式0(基本输入/输出方式):这种方式不需要任何选通信号。A口、B口及C口的两个4位口中的任何一个端口都可以被设定为输入或输出。输出锁存,输入不锁存。根据控制字D4、D3、D1、D0位的变化,方式0有16种不同的输入、输出组合方式。方式1(选通输入/输出方式):这种方式下,A口、B口、C口分为两组。A组包括A口和C口的高4位,A口可由编程设定为输入口或输出口,C口的高四位则用来作为输入/输出操作的控制和同步信号;B组包括B口和C口的低4位,B口可由编程设定为输入口或输出口,C口的低四位则用来作为输入/输出操作的控制和同步信号。A口和B口的输入输出数据都被锁存。方式2(双向总线方式):这种方式下,A口为8位双向总线口,C口的PC3PC7用来作为输入/输出操作的控制和同步信号;B口和C口的PC0PC2则可编程为方式0或方式1工作。4 8255A与CPU 8031的接口8255A与CPU 8031的接口连线如图2-9所示。图2-9 8255A与CPU8031的接线图8255A与单片机间有3组连线:D7D0根数据线依次与P0口的P0.7P0.0一一对应连接:、RESET等3根控制线与单片机的同名引脚互连;片选端则与P2口相连;A1、A0两根地址线与单片机的两个I/O引脚连接。二存储功能扩展由于我们需要保存一定的数据,而8031片内没有程序存储功能,因此,EA管脚总是接低电平。根据保存的数据量需要,我们选用了EPROM 2764为外扩的数据存储器。12764 EPROM紫外线擦除电可编程只读存储器EPROM是国内用得较多的程序存储器。EPROM芯片上有一个玻璃窗口,在紫外线照射下,存储器中的各位信息均变1,即处于擦除状态。擦除干净的EPROM可以通过编程器将应用程序固化到芯片中。本次设计所选用的是2764 EPROM。(1)2764的概述2764VppA12A7A6A5A4A3A2A1A0D0D1D2GNDVccPGMN.CA8A9A11OEA10CED7D6D5D4D327648K EPROM这是一种可以擦去重写的只读存储器。通常用紫外线对其窗口进行照射,即可把它所存储的内容擦去。之后,又可以对其重新进行编程,写入新的内容。一旦写入,其存储的内容可以长期(几十年)地保存,即使去掉电源电压,也不会影响它所存储的内容。图2-10为通用的EPROM 2764的引脚图,前者确定了地址线的位数是12位(A0A12),后者确定了数据线的位数是8位(D0D7)。单一+5 V供电,工作电流为75 mA,维持电流为35 mA,读出时间最大为250 ns,DIP28封装。图2-10 2764引脚图(2)引脚功能其中,A0A12为地址线;D0D7为数据线; 为片选线;是读线;是编程输入;Vpp为编程电源。 除了12条地址线和8条数据线之外, 为片选线,低电平有效。也就是说,只有当为低电平时,2764才被选中,否则,2764不工作。 (3)EPROM 2764和锁存器74LS373与8031组成最小系统8031单片机扩展一片2764程序存储器电路如图2-11所示。 地址线。单片机扩展片外存储器时,地址是由P0和P2口提供的。图2-10中,2764的13条地址线(A0A12)中,低8位A0A7通过锁存器74LS373与P0口连接,高4位A8A12直接与P2口的P2.0P2.3连接,P2口本身有锁存功能。注意,锁存器的锁存使能端LE必须和单片机的ALE管脚相连。图2-11 8031扩展2764 EPROM硬件接线图 数据线。2764的8位数据线直接与单片机的P0口相连。因此,P0口是一个分时复用的地址/数据线。 控制线。CPU执行2764中存放的程序指令时,取指阶段就是对2764行读操作。注意,CPU对EPROM只能进行读操作,不能进行写操作。CPU对2764的读操作控制都是通过控制线实现的。2764控制线的连接有以下几条:直接P2.5。:接8031的读选通信号端。在访问片外程序存储器时,只要端出现负脉冲,即可从2764中读出程序。2 锁存器74LS373的引脚及功能如图2-12所示,74LS373是带三态缓冲输出的8D锁存器,由于单片机的三总线结构中,数据线与地址线的低8位共用P0口,因此必须用地址锁存器将地址信号和数据信号区分开。74LS373的锁存控制端直接与单片机的锁存控制信号ALE相连,在ALE的下降沿锁存低8位地址。其中,D0D7为数据输入端;Q0Q7为数据输出端;OE为三态允许控制端(低电平有效);LE为锁存允许端。 图2-12 74LS373 引脚该片如何工作由功能表2-4决定,表中L为低电平、H为高电平、Z为高阻抗(相当开路)X为任意电平,一般将OE接低电平,LE接ALE就能正常工作。LEDnQnLHHHLHLLLLLLLLHHHXXZ表2-4 74LS373真值表第五节 外围电路设计一晶振电路设计1晶振的作用晶振是电路中常用的时钟元件,全称是叫晶体振荡器。之所以要用晶振,是为了让它给电路中各信号元件提供一个基准频率。在单片机系统里晶振的作用非常大,他结合单片机内部的电路,产生单片机所必须的时钟频率,单片机的一切指令的执行都是建立在这个基础上的,晶振提供的时钟频率越高,那么单片机的运行速度也就越快。2电路设计(1) 晶振电路原理:时钟电路是单片机的心脏,单片机各功能部件的运行都是以时钟频率为基准。因此,时钟频率直接影响单片机的速度,时钟电路的质量也直接影响单片机系统的稳定性。单片机常用的时钟电路有两种方式:一种是内部时钟方式,利用芯片内部的振荡电路,产生时钟信号;另一种为外部时钟方式, 时钟信号由外部引入。本文用的是内部时钟方式。时钟电路产生的振荡脉冲经过触发器进行二分频之后,才成为单片机的时钟脉冲信号。 在8031芯片内部有一个用于构成内部振荡器的高增益反相放大器,引脚 XTAL1 和 XTAL2 分别是该放大器的输入端和输出端,该放大器与作为反馈元件的片外石英晶体(或陶瓷谐振器)及电容C1、C2 接在放大器的反馈回路中构成并联振荡电路,接在放大器的反馈回路中,这种方称为内部时钟方式,如图所示。图2-13 晶振电路(2)电路参数设计振荡频率取决于晶振的频率。常用的晶振频率有6MHz、12 MHz、11。0592MHz。晶体振荡器取1.2至12MHZ。晶体振荡器频率越高,则系统的时钟频率也高,单片机运行速度也快。本设计使用的是12MHz的晶振。电容C01 和C02主要作用是帮助起振(谐振),称其为谐振电容,对电容的值虽然没有严格的要求,但电容的大小多少会影响振荡器频率的高低、振荡器的稳定性,起振的快速性和温度稳定性,如果振荡器已起振,则在XTAL2引脚上输出3V左右的正弦波。因此常用调节C01或C02的容量大小对频率进行微调,电容容量一般在20100pF之间选择,当时钟频率为12MHz时典型值为30pF,外接陶瓷谐振器时,C01和C02的典型值约为47pF,这里选两个外接晶振为30pF。二复位电路设计单片机复位电路的基本功能是:系统上电时提供复位信号,直至系统电源稳定后,撤销复位信号。复位是单片机的初始化操作,使单片机进入初始化状态,其作用是使CPU中的各个部件都处于一个确定的初始状态,并从这个状态开始工作。51单片机在系统复位时,将其内部的一些重要寄存器设置为特定的值,其中包括使程序计数器PC0000H,这表明程序从0000H地址单元开始执行。至于内部RAM内部的数据则不变。51单片机复位后,P0P3四个并行接口全为高电平,其它寄存器全部清零,只有SBUF寄存器状态不确定。单片机冷启动后,片内RAM为随机值,运行中的复位操作不改变片内RAM区中的内容,21个特殊功能寄存器复位后的状态为确定值,见下表。(说明:表中符号*为随机状态)表2-5特殊功能寄存器初始状态特殊功能寄存器初始状态A00HTMOD00HB00HTCON00HPSW00HTH000HSP07HTL000HDPL00HTH100HDPH00HTL100HP0P3FFHSBUF不定IP*00000BSCON00HIE0*00000BPCON0*BA00H,表明累加器已被清零;PSW00H,表明选寄存器0组为工作寄存器组;SP07H,表明堆栈指针指向片内RAM 07H字节单元,根据堆栈操作的先加后压法则,第一个被压入的内容写入到08H单元中;Po-P3FFH,表明已向各端口线写入1,此时,各端口既可用于输入又可用于输出;IP00000B,表明各个中断源处于低优先级;IE000000B,表明各个中断均被关断。51单片机的复位是由RESET引脚来控制的,此引脚与高电平相接超过24个振荡周期后(即两个机器周期),首先RST保持两个机器周期以上的高电平时自动复位51单片机即进入芯片内部复位状态,单片机就执行复位操作, 因为本系统的晶振的频率为12MHz,所以,复位信号持续时间应当超过2S才能完成复位操作。如果RST持续为高电平,单片机就处于循环复位状态。直到RESET引脚转为低电平后,才检查EA引脚是高电平或低电平,若为高电平则执行芯片内部的程序代码,若为低电平便会执行外部程序。8031单片机的复位是由外部的复位电路来实现的。复位引脚RST通过一个施密特触发器与复位电路相连,施密特触发器用来抑制噪声,在每个机器周期的S5P2,施密特触发器的输出电平由复位电路采样一次,然后才能得到内部复位操作所需要的信号。单片机通常采用上电自动复位和按钮复位两种方式。RST/VPD端的高电平直接由上电瞬间产生高电平则为上电复位;若通过按钮产生高电平复位信号称为手动按钮复位。本设计的系统复位电路采用的是RC复位方式。RC复位电路的实质是一阶充放电电路。系统上电时该电路提供有效的复位信号RST直到系统电源稳定后撤消复位信号。本复位电路采用的是按键复位,它兼具上电复位功能。8031单片机的上电复位电路如图所示只要在RST复位输入引脚上接一电容至Vcc端,下接一个电阻到地即可。上电复位过程:上电瞬间,电容充电电流最大,电容相当于短路,RST端为高电平,自动复位;RST持续一段时间高电平后,电容两端的电压达到电源电压时,电容充电电流为零,最终稳定在低电平,电容相当于开路,RST端为低电平,程序正常运行。高电平持续时间由RC时间常数决定。手动复位(按键复位)过程:首先经过上电复位,当按下按键时,RST直接与VCC相连,为高电平形成复位,同时电解电容被短路放电;按键松开时,VCC对电容充电,充电电流在电阻上,RST依然为高电平,仍然是复位,充电完成后,电容相当于开路,RST为低电平,正常工作。图2-14 复位电路第六节 输入/输出接口系统设计输入/输出接口系统就是指人与计算机之间建立联系、交换信息的输入/输出设备接口,就是人机交互接口。这些输入/输出设备主要有键盘和显示器等。它们是系统中必不可少的输入、输出设备,是控制系统与操作人员之间交互的窗口。一键盘系统设计键盘是若干按键的集合,是向系统提供操作人员干预命令及数据的接口设备。键盘可以分为编码键盘和非编码键盘两种类型。前者能自动识别按下的按键并且能产生相应的代码,以并行或串行的方式发送给CPU。它使用方便,接口简单,响应速度快,但是需要专用的硬件电路。本次设计中所采用的就是编码键盘。如图2-2中所示,8255A为给定值输入接口。为了使系统简单,设计了一个由二极管矩阵组成的编码键盘,如图2-15所示图2-15 编码键盘原理图键盘输出信号D,C,B,A(BCD码)分别接到8255A的A口PA3-PA0,键选通信号KEYSTROBE(高电平有效),经反向器接到8031的INT0管脚。当按下某一个按键时,KEYSTROBE为高电平,经过反相后的下降沿向8031申请中断。8031响应后,读入BCD码值,作为定值,并送显示。本次设计只有3位显示,所以最多只能给定999。输入顺序为从最高位(百位数)开始。当按键未按下时,所有输出端口均为高电平。当有按键按下以后该按键的BCD码将会出现在输出线上。二显示系统设计1LED数码管数字系统中,有时需要将译码器结果以数码形式显示出来,这时就要用显示译码器能将代

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论